@@ -146,7 +146,7 @@ export fn bcmp(vl: [*]allowzero const u8, vr: [*]allowzero const u8, n: usize) i
146
146
var index : usize = 0 ;
147
147
while (index != n ) : (index += 1 ) {
148
148
if (vl [index ] != vr [index ]) {
149
- return 1 ;
149
+ return 1 ;
150
150
}
151
151
}
152
152
@@ -254,32 +254,110 @@ export fn fmod(x: f64, y: f64) f64 {
254
254
255
255
// TODO add intrinsics for these (and probably the double version too)
256
256
// and have the math stuff use the intrinsic. same as @mod and @rem
257
- export fn floorf (x : f32 ) f32 {return math .floor (x );}
258
- export fn ceilf (x : f32 ) f32 {return math .ceil (x );}
259
- export fn floor (x : f64 ) f64 {return math .floor (x );}
260
- export fn ceil (x : f64 ) f64 {return math .ceil (x );}
261
- export fn fma (a : f64 , b : f64 , c : f64 ) f64 {return math .fma (f64 , a , b , c );}
262
- export fn fmaf (a : f32 , b : f32 , c : f32 ) f32 {return math .fma (f32 , a , b , c );}
263
- export fn sin (a : f64 ) f64 {return math .sin (a );}
264
- export fn sinf (a : f32 ) f32 {return math .sin (a );}
265
- export fn cos (a : f64 ) f64 {return math .cos (a );}
266
- export fn cosf (a : f32 ) f32 {return math .cos (a );}
267
- export fn exp (a : f64 ) f64 {return math .exp (a );}
268
- export fn expf (a : f32 ) f32 {return math .exp (a );}
269
- export fn exp2 (a : f64 ) f64 {return math .exp2 (a );}
270
- export fn exp2f (a : f32 ) f32 {return math .exp2 (a );}
271
- export fn log (a : f64 ) f64 {return math .ln (a );}
272
- export fn logf (a : f32 ) f32 {return math .ln (a );}
273
- export fn log2 (a : f64 ) f64 {return math .log2 (a );}
274
- export fn log2f (a : f32 ) f32 {return math .log2 (a );}
275
- export fn log10 (a : f64 ) f64 {return math .log10 (a );}
276
- export fn log10f (a : f32 ) f32 {return math .log10 (a );}
277
- export fn fabs (a : f64 ) f64 {return math .fabs (a );}
278
- export fn fabsf (a : f32 ) f32 {return math .fabs (a );}
279
- export fn trunc (a : f64 ) f64 {return math .trunc (a );}
280
- export fn truncf (a : f32 ) f32 {return math .trunc (a );}
281
- export fn round (a : f64 ) f64 {return math .round (a );}
282
- export fn roundf (a : f32 ) f32 {return math .round (a );}
257
+ export fn floorf (x : f32 ) f32 {
258
+ return math .floor (x );
259
+ }
260
+
261
+ export fn ceilf (x : f32 ) f32 {
262
+ return math .ceil (x );
263
+ }
264
+
265
+ export fn floor (x : f64 ) f64 {
266
+ return math .floor (x );
267
+ }
268
+
269
+ export fn ceil (x : f64 ) f64 {
270
+ return math .ceil (x );
271
+ }
272
+
273
+ export fn fma (a : f64 , b : f64 , c : f64 ) f64 {
274
+ return math .fma (f64 , a , b , c );
275
+ }
276
+
277
+ export fn fmaf (a : f32 , b : f32 , c : f32 ) f32 {
278
+ return math .fma (f32 , a , b , c );
279
+ }
280
+
281
+ export fn sin (a : f64 ) f64 {
282
+ return math .sin (a );
283
+ }
284
+
285
+ export fn sinf (a : f32 ) f32 {
286
+ return math .sin (a );
287
+ }
288
+
289
+ export fn cos (a : f64 ) f64 {
290
+ return math .cos (a );
291
+ }
292
+
293
+ export fn cosf (a : f32 ) f32 {
294
+ return math .cos (a );
295
+ }
296
+
297
+ export fn exp (a : f64 ) f64 {
298
+ return math .exp (a );
299
+ }
300
+
301
+ export fn expf (a : f32 ) f32 {
302
+ return math .exp (a );
303
+ }
304
+
305
+ export fn exp2 (a : f64 ) f64 {
306
+ return math .exp2 (a );
307
+ }
308
+
309
+ export fn exp2f (a : f32 ) f32 {
310
+ return math .exp2 (a );
311
+ }
312
+
313
+ export fn log (a : f64 ) f64 {
314
+ return math .ln (a );
315
+ }
316
+
317
+ export fn logf (a : f32 ) f32 {
318
+ return math .ln (a );
319
+ }
320
+
321
+ export fn log2 (a : f64 ) f64 {
322
+ return math .log2 (a );
323
+ }
324
+
325
+ export fn log2f (a : f32 ) f32 {
326
+ return math .log2 (a );
327
+ }
328
+
329
+ export fn log10 (a : f64 ) f64 {
330
+ return math .log10 (a );
331
+ }
332
+
333
+ export fn log10f (a : f32 ) f32 {
334
+ return math .log10 (a );
335
+ }
336
+
337
+ export fn fabs (a : f64 ) f64 {
338
+ return math .fabs (a );
339
+ }
340
+
341
+ export fn fabsf (a : f32 ) f32 {
342
+ return math .fabs (a );
343
+ }
344
+
345
+ export fn trunc (a : f64 ) f64 {
346
+ return math .trunc (a );
347
+ }
348
+
349
+ export fn truncf (a : f32 ) f32 {
350
+ return math .trunc (a );
351
+ }
352
+
353
+ export fn round (a : f64 ) f64 {
354
+ return math .round (a );
355
+ }
356
+
357
+ export fn roundf (a : f32 ) f32 {
358
+ return math .round (a );
359
+ }
360
+
283
361
fn generic_fmod (comptime T : type , x : T , y : T ) T {
284
362
@setRuntimeSafety (false );
285
363
0 commit comments