Changes in libcfa/src/stdlib.hfa [c354108:60062be]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/stdlib.hfa
rc354108 r60062be 10 10 // Created On : Thu Jan 28 17:12:35 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Aug 14 23:38:50202013 // Update Count : 50412 // Last Modified On : Thu Jul 30 16:14:58 2020 13 // Update Count : 490 14 14 // 15 15 … … 39 39 //--------------------------------------- 40 40 41 #include "common.hfa"42 43 //---------------------------------------44 45 41 // Macro because of returns 46 42 #define $VAR_ALLOC( allocation, alignment ) \ … … 140 136 T * alloc_set( char fill ) { 141 137 return (T *)memset( (T *)alloc(), (int)fill, sizeof(T) ); // initialize with fill value 142 } // alloc _set143 144 T * alloc_set( const T &fill ) {138 } // alloc 139 140 T * alloc_set( T fill ) { 145 141 return (T *)memcpy( (T *)alloc(), &fill, sizeof(T) ); // initialize with fill value 146 } // alloc _set142 } // alloc 147 143 148 144 T * alloc_set( size_t dim, char fill ) { 149 145 return (T *)memset( (T *)alloc( dim ), (int)fill, dim * sizeof(T) ); // initialize with fill value 150 } // alloc _set151 152 T * alloc_set( size_t dim, const T &fill ) {146 } // alloc 147 148 T * alloc_set( size_t dim, T fill ) { 153 149 T * r = (T *)alloc( dim ); 154 150 for ( i; dim ) { memcpy( &r[i], &fill, sizeof(T) ); } // initialize with fill value 155 151 return r; 156 } // alloc _set157 158 T * alloc_set( size_t dim New, const T fill[], size_t dimOld) {159 return (T *)memcpy( (T *)alloc( dim New ), fill, min( dimNew, dimOld )* sizeof(T) ); // initialize with fill value160 } // alloc _set152 } // alloc 153 154 T * alloc_set( size_t dim, const T fill[] ) { 155 return (T *)memcpy( (T *)alloc( dim ), fill, dim * sizeof(T) ); // initialize with fill value 156 } // alloc 161 157 162 158 T * alloc_set( T ptr[], size_t dim, char fill ) { // realloc array with fill … … 170 166 } // alloc_set 171 167 172 T * alloc_set( T ptr[], size_t dim, constT & fill ) { // realloc array with fill168 T * alloc_set( T ptr[], size_t dim, T & fill ) { // realloc array with fill 173 169 size_t odim = malloc_size( ptr ) / sizeof(T); // current dimension 174 170 size_t nsize = dim * sizeof(T); // new allocation … … 181 177 } // if 182 178 return nptr; 183 } // alloc_ set179 } // alloc_align_set 184 180 } // distribution 185 181 … … 208 204 T * alloc_align_set( size_t align, char fill ) { 209 205 return (T *)memset( (T *)alloc_align( align ), (int)fill, sizeof(T) ); // initialize with fill value 210 } // alloc_align _set211 212 T * alloc_align_set( size_t align, const T &fill ) {206 } // alloc_align 207 208 T * alloc_align_set( size_t align, T fill ) { 213 209 return (T *)memcpy( (T *)alloc_align( align ), &fill, sizeof(T) ); // initialize with fill value 214 } // alloc_align _set210 } // alloc_align 215 211 216 212 T * alloc_align_set( size_t align, size_t dim, char fill ) { 217 213 return (T *)memset( (T *)alloc_align( align, dim ), (int)fill, dim * sizeof(T) ); // initialize with fill value 218 } // alloc_align _set219 220 T * alloc_align_set( size_t align, size_t dim, const T &fill ) {214 } // alloc_align 215 216 T * alloc_align_set( size_t align, size_t dim, T fill ) { 221 217 T * r = (T *)alloc_align( align, dim ); 222 218 for ( i; dim ) { memcpy( &r[i], &fill, sizeof(T) ); } // initialize with fill value 223 219 return r; 224 } // alloc_align _set225 226 T * alloc_align_set( size_t align, size_t dim New, const T fill[], size_t dimOld) {227 return (T *)memcpy( (T *)alloc_align( align, dim New ), fill, min( dimNew, dimOld )* sizeof(T) );228 } // alloc_align _set220 } // alloc_align 221 222 T * alloc_align_set( size_t align, size_t dim, const T fill[] ) { 223 return (T *)memcpy( (T *)alloc_align( align, dim ), fill, dim * sizeof(T) ); 224 } // alloc_align 229 225 230 226 T * alloc_align_set( T ptr[], size_t align, size_t dim, char fill ) { … … 238 234 } // alloc_align_set 239 235 240 T * alloc_align_set( T ptr[], size_t align, size_t dim, constT & fill ) {236 T * alloc_align_set( T ptr[], size_t align, size_t dim, T & fill ) { 241 237 size_t odim = malloc_size( ptr ) / sizeof(T); // current dimension 242 238 size_t nsize = dim * sizeof(T); // new allocation … … 378 374 //--------------------------------------- 379 375 376 #include "common.hfa" 377 378 //--------------------------------------- 379 380 380 extern bool threading_enabled(void) OPTIONAL_THREAD; 381 381
Note:
See TracChangeset
for help on using the changeset viewer.