@@ -95,11 +95,11 @@ static void* mi_heap_malloc_zero_aligned_at(mi_heap_t* const heap, const size_t
95
95
// Optimized mi_heap_malloc_aligned / mi_malloc_aligned
96
96
// ------------------------------------------------------
97
97
98
- mi_decl_restrict void * mi_heap_malloc_aligned_at (mi_heap_t * heap , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
98
+ mi_decl_nodiscard mi_decl_restrict void * mi_heap_malloc_aligned_at (mi_heap_t * heap , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
99
99
return mi_heap_malloc_zero_aligned_at (heap , size , alignment , offset , false);
100
100
}
101
101
102
- mi_decl_restrict void * mi_heap_malloc_aligned (mi_heap_t * heap , size_t size , size_t alignment ) mi_attr_noexcept {
102
+ mi_decl_nodiscard mi_decl_restrict void * mi_heap_malloc_aligned (mi_heap_t * heap , size_t size , size_t alignment ) mi_attr_noexcept {
103
103
#if !MI_PADDING
104
104
// without padding, any small sized allocation is naturally aligned (see also `_mi_segment_page_start`)
105
105
if (!_mi_is_power_of_two (alignment )) return NULL ;
@@ -122,45 +122,45 @@ mi_decl_restrict void* mi_heap_malloc_aligned(mi_heap_t* heap, size_t size, size
122
122
// Aligned Allocation
123
123
// ------------------------------------------------------
124
124
125
- mi_decl_restrict void * mi_heap_zalloc_aligned_at (mi_heap_t * heap , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
125
+ mi_decl_nodiscard mi_decl_restrict void * mi_heap_zalloc_aligned_at (mi_heap_t * heap , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
126
126
return mi_heap_malloc_zero_aligned_at (heap , size , alignment , offset , true);
127
127
}
128
128
129
- mi_decl_restrict void * mi_heap_zalloc_aligned (mi_heap_t * heap , size_t size , size_t alignment ) mi_attr_noexcept {
129
+ mi_decl_nodiscard mi_decl_restrict void * mi_heap_zalloc_aligned (mi_heap_t * heap , size_t size , size_t alignment ) mi_attr_noexcept {
130
130
return mi_heap_zalloc_aligned_at (heap , size , alignment , 0 );
131
131
}
132
132
133
- mi_decl_restrict void * mi_heap_calloc_aligned_at (mi_heap_t * heap , size_t count , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
133
+ mi_decl_nodiscard mi_decl_restrict void * mi_heap_calloc_aligned_at (mi_heap_t * heap , size_t count , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
134
134
size_t total ;
135
135
if (mi_count_size_overflow (count , size , & total )) return NULL ;
136
136
return mi_heap_zalloc_aligned_at (heap , total , alignment , offset );
137
137
}
138
138
139
- mi_decl_restrict void * mi_heap_calloc_aligned (mi_heap_t * heap , size_t count , size_t size , size_t alignment ) mi_attr_noexcept {
139
+ mi_decl_nodiscard mi_decl_restrict void * mi_heap_calloc_aligned (mi_heap_t * heap , size_t count , size_t size , size_t alignment ) mi_attr_noexcept {
140
140
return mi_heap_calloc_aligned_at (heap ,count ,size ,alignment ,0 );
141
141
}
142
142
143
- mi_decl_restrict void * mi_malloc_aligned_at (size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
143
+ mi_decl_nodiscard mi_decl_restrict void * mi_malloc_aligned_at (size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
144
144
return mi_heap_malloc_aligned_at (mi_get_default_heap (), size , alignment , offset );
145
145
}
146
146
147
- mi_decl_restrict void * mi_malloc_aligned (size_t size , size_t alignment ) mi_attr_noexcept {
147
+ mi_decl_nodiscard mi_decl_restrict void * mi_malloc_aligned (size_t size , size_t alignment ) mi_attr_noexcept {
148
148
return mi_heap_malloc_aligned (mi_get_default_heap (), size , alignment );
149
149
}
150
150
151
- mi_decl_restrict void * mi_zalloc_aligned_at (size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
151
+ mi_decl_nodiscard mi_decl_restrict void * mi_zalloc_aligned_at (size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
152
152
return mi_heap_zalloc_aligned_at (mi_get_default_heap (), size , alignment , offset );
153
153
}
154
154
155
- mi_decl_restrict void * mi_zalloc_aligned (size_t size , size_t alignment ) mi_attr_noexcept {
155
+ mi_decl_nodiscard mi_decl_restrict void * mi_zalloc_aligned (size_t size , size_t alignment ) mi_attr_noexcept {
156
156
return mi_heap_zalloc_aligned (mi_get_default_heap (), size , alignment );
157
157
}
158
158
159
- mi_decl_restrict void * mi_calloc_aligned_at (size_t count , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
159
+ mi_decl_nodiscard mi_decl_restrict void * mi_calloc_aligned_at (size_t count , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
160
160
return mi_heap_calloc_aligned_at (mi_get_default_heap (), count , size , alignment , offset );
161
161
}
162
162
163
- mi_decl_restrict void * mi_calloc_aligned (size_t count , size_t size , size_t alignment ) mi_attr_noexcept {
163
+ mi_decl_nodiscard mi_decl_restrict void * mi_calloc_aligned (size_t count , size_t size , size_t alignment ) mi_attr_noexcept {
164
164
return mi_heap_calloc_aligned (mi_get_default_heap (), count , size , alignment );
165
165
}
166
166
@@ -207,55 +207,55 @@ static void* mi_heap_realloc_zero_aligned(mi_heap_t* heap, void* p, size_t newsi
207
207
return mi_heap_realloc_zero_aligned_at (heap ,p ,newsize ,alignment ,offset ,zero );
208
208
}
209
209
210
- void * mi_heap_realloc_aligned_at (mi_heap_t * heap , void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
210
+ mi_decl_nodiscard void * mi_heap_realloc_aligned_at (mi_heap_t * heap , void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
211
211
return mi_heap_realloc_zero_aligned_at (heap ,p ,newsize ,alignment ,offset ,false);
212
212
}
213
213
214
- void * mi_heap_realloc_aligned (mi_heap_t * heap , void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
214
+ mi_decl_nodiscard void * mi_heap_realloc_aligned (mi_heap_t * heap , void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
215
215
return mi_heap_realloc_zero_aligned (heap ,p ,newsize ,alignment ,false);
216
216
}
217
217
218
- void * mi_heap_rezalloc_aligned_at (mi_heap_t * heap , void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
218
+ mi_decl_nodiscard void * mi_heap_rezalloc_aligned_at (mi_heap_t * heap , void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
219
219
return mi_heap_realloc_zero_aligned_at (heap , p , newsize , alignment , offset , true);
220
220
}
221
221
222
- void * mi_heap_rezalloc_aligned (mi_heap_t * heap , void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
222
+ mi_decl_nodiscard void * mi_heap_rezalloc_aligned (mi_heap_t * heap , void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
223
223
return mi_heap_realloc_zero_aligned (heap , p , newsize , alignment , true);
224
224
}
225
225
226
- void * mi_heap_recalloc_aligned_at (mi_heap_t * heap , void * p , size_t newcount , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
226
+ mi_decl_nodiscard void * mi_heap_recalloc_aligned_at (mi_heap_t * heap , void * p , size_t newcount , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
227
227
size_t total ;
228
228
if (mi_count_size_overflow (newcount , size , & total )) return NULL ;
229
229
return mi_heap_rezalloc_aligned_at (heap , p , total , alignment , offset );
230
230
}
231
231
232
- void * mi_heap_recalloc_aligned (mi_heap_t * heap , void * p , size_t newcount , size_t size , size_t alignment ) mi_attr_noexcept {
232
+ mi_decl_nodiscard void * mi_heap_recalloc_aligned (mi_heap_t * heap , void * p , size_t newcount , size_t size , size_t alignment ) mi_attr_noexcept {
233
233
size_t total ;
234
234
if (mi_count_size_overflow (newcount , size , & total )) return NULL ;
235
235
return mi_heap_rezalloc_aligned (heap , p , total , alignment );
236
236
}
237
237
238
- void * mi_realloc_aligned_at (void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
238
+ mi_decl_nodiscard void * mi_realloc_aligned_at (void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
239
239
return mi_heap_realloc_aligned_at (mi_get_default_heap (), p , newsize , alignment , offset );
240
240
}
241
241
242
- void * mi_realloc_aligned (void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
242
+ mi_decl_nodiscard void * mi_realloc_aligned (void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
243
243
return mi_heap_realloc_aligned (mi_get_default_heap (), p , newsize , alignment );
244
244
}
245
245
246
- void * mi_rezalloc_aligned_at (void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
246
+ mi_decl_nodiscard void * mi_rezalloc_aligned_at (void * p , size_t newsize , size_t alignment , size_t offset ) mi_attr_noexcept {
247
247
return mi_heap_rezalloc_aligned_at (mi_get_default_heap (), p , newsize , alignment , offset );
248
248
}
249
249
250
- void * mi_rezalloc_aligned (void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
250
+ mi_decl_nodiscard void * mi_rezalloc_aligned (void * p , size_t newsize , size_t alignment ) mi_attr_noexcept {
251
251
return mi_heap_rezalloc_aligned (mi_get_default_heap (), p , newsize , alignment );
252
252
}
253
253
254
- void * mi_recalloc_aligned_at (void * p , size_t newcount , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
254
+ mi_decl_nodiscard void * mi_recalloc_aligned_at (void * p , size_t newcount , size_t size , size_t alignment , size_t offset ) mi_attr_noexcept {
255
255
return mi_heap_recalloc_aligned_at (mi_get_default_heap (), p , newcount , size , alignment , offset );
256
256
}
257
257
258
- void * mi_recalloc_aligned (void * p , size_t newcount , size_t size , size_t alignment ) mi_attr_noexcept {
258
+ mi_decl_nodiscard void * mi_recalloc_aligned (void * p , size_t newcount , size_t size , size_t alignment ) mi_attr_noexcept {
259
259
return mi_heap_recalloc_aligned (mi_get_default_heap (), p , newcount , size , alignment );
260
260
}
261
261
0 commit comments