Lines Matching +full:native +full:- +full:test
1 // REQUIRES: arm-registered-target
2 …-ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -triple arm-n…
3 …-ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -triple aarch…
4 …-ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -triple x86_6…
5 …-ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -triple arm-n…
6 …-ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -triple aarch…
7 …%clang_cc1 -ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -t…
8 // RUN: | FileCheck %s --check-prefix=NATIVE-HALF --check-prefix=CHECK
9 …lang_cc1 -ffp-exception-behavior=maytrap -fexperimental-strict-floating-point -emit-llvm -o - -tri…
10 // RUN: | FileCheck %s --check-prefix=NATIVE-HALF --check-prefix=CHECK
12 // Test that the constrained intrinsics are picking up the exception
20 volatile cond_t test; variable
28 // CHECK-LABEL: define void @foo() in foo()
34 …// NATIVE-HALF: call i32 @llvm.experimental.constrained.fptoui.i32.f16(half %{{.*}}, metadata !"fp… in foo()
36 test = (h0); in foo()
38 …// NATIVE-HALF: call half @llvm.experimental.constrained.uitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
42 h0 = (test); in foo()
44 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half 0xH0000, metada… in foo()
48 test = (!h1); in foo()
53 // NATIVE-HALF: fneg half in foo()
55 h1 = -h1; in foo()
59 // NATIVE-HALF: load volatile half in foo()
60 // NATIVE-HALF-NEXT: store volatile half in foo()
64 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half 0xH3C00, meta… in foo()
71 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half 0xH3C00, meta… in foo()
78 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half 0xHBC00, meta… in foo()
83 --h1; in foo()
85 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half 0xHBC00, meta… in foo()
90 h1--; in foo()
93 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
102 …// CHECK: call half @llvm.experimental.constrained.fptrunc.f16.f32(float -2.000000e+00, metadata !… in foo()
106 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
108 h1 = h0 * (__fp16) -2.0f; in foo()
122 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
123 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
131 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
140 …// CHECK: call half @llvm.experimental.constrained.fptrunc.f16.f32(float -2.000000e+00, metadata !… in foo()
144 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
146 h1 = (h0 / (__fp16) -2.0f); in foo()
160 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
161 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
169 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
177 …// CHECK: call half @llvm.experimental.constrained.fptrunc.f16.f64(double -2.000000e+00, metadata … in foo()
178 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
184 h1 = ((__fp16)-2.0 + h0); in foo()
198 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
199 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
207 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
213 h1 = (h2 - h0); in foo()
215 …// CHECK: call half @llvm.experimental.constrained.fptrunc.f16.f32(float -2.000000e+00, metadata !… in foo()
216 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
222 h1 = ((__fp16)-2.0f - h0); in foo()
228 h1 = (h2 - f0); in foo()
234 h1 = (f2 - h0); in foo()
236 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
237 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
243 h1 = (h0 - i0); in foo()
248 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
250 test = (h2 < h0); in foo()
253 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 4.200000e+01, meta… in foo()
257 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
259 test = (h2 < (__fp16)42.0); in foo()
264 test = (h2 < f0); in foo()
269 test = (f2 < h0); in foo()
271 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
272 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
277 test = (i0 < h0); in foo()
279 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
280 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
285 test = (h0 < i0); in foo()
287 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
292 test = (h0 > h2); in foo()
295 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 4.200000e+01, meta… in foo()
299 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
301 test = ((__fp16)42.0 > h2); in foo()
306 test = (h0 > f2); in foo()
311 test = (f0 > h2); in foo()
313 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
314 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
319 test = (i0 > h0); in foo()
321 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
322 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
327 test = (h0 > i0); in foo()
329 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
334 test = (h2 <= h0); in foo()
338 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 4.200000e+01, meta… in foo()
341 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
343 test = (h2 <= (__fp16)42.0); in foo()
348 test = (h2 <= f0); in foo()
353 test = (f2 <= h0); in foo()
355 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
356 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
361 test = (i0 <= h0); in foo()
363 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
364 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
369 test = (h0 <= i0); in foo()
375 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
377 test = (h0 >= h2); in foo()
380 …// CHECK: call half @llvm.experimental.constrained.fptrunc.f16.f64(double -2.000000e+00, metadata … in foo()
383 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
385 test = (h0 >= (__fp16)-2.0); in foo()
390 test = (h0 >= f2); in foo()
395 test = (f0 >= h2); in foo()
397 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
398 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
403 test = (i0 >= h0); in foo()
405 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
406 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmps.f16(half %{{.*}}, half %{{.*}}, metad… in foo()
411 test = (h0 >= i0); in foo()
413 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
418 test = (h1 == h2); in foo()
422 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 1.000000e+00, meta… in foo()
425 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
427 test = (h1 == (__fp16)1.0); in foo()
432 test = (h1 == f1); in foo()
437 test = (f1 == h1); in foo()
439 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
440 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
445 test = (i0 == h0); in foo()
447 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
448 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
453 test = (h0 == i0); in foo()
455 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
460 test = (h1 != h2); in foo()
462 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
468 test = (h1 != (__fp16)1.0); in foo()
473 test = (h1 != f1); in foo()
478 test = (f1 != h1); in foo()
480 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
481 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
486 test = (i0 != h0); in foo()
488 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
489 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half %{{.*}}, metada… in foo()
494 test = (h0 != i0); in foo()
496 …// NATIVE-HALF: call i1 @llvm.experimental.constrained.fcmp.f16(half %{{.*}}, half 0xH0000, metada… in foo()
507 // xATIVE-HALF: store {{.*}} half 0xHC000 // FIXME: We should be folding here. in foo()
510 …// CHECK: call half @llvm.experimental.constrained.fptrunc.f16.f32(float -2.000000e+00, metadata !… in foo()
512 h0 = (__fp16)-2.0f; in foo()
518 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
526 …// NATIVE-HALF: call i32 @llvm.experimental.constrained.fptosi.i32.f16(half %{{.*}}, metadata !"fp… in foo()
530 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
539 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f32(float 1.000000e+00, metad… in foo()
544 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
554 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
555 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
556 …// NATIVE-HALF: call i32 @llvm.experimental.constrained.fptosi.i32.f16(half %{{.*}}, metadata !"fp… in foo()
564 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
565 …// NATIVE-HALF: call half @llvm.experimental.constrained.fadd.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
573 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
579 h0 -= h1; in foo()
581 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 1.000000e+00, meta… in foo()
582 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
589 h0 -= (__fp16)1.0; in foo()
595 h0 -= f2; in foo()
597 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
598 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
599 …// NATIVE-HALF: call i32 @llvm.experimental.constrained.fptosi.i32.f16(half %{{.*}}, metadata !"fp… in foo()
605 i0 -= h0; in foo()
607 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
608 …// NATIVE-HALF: call half @llvm.experimental.constrained.fsub.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
614 h0 -= i0; in foo()
616 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
625 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 1.000000e+00, meta… in foo()
626 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
640 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
641 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
642 …// NATIVE-HALF: call i32 @llvm.experimental.constrained.fptosi.i32.f16(half %{{.*}}, metadata !"fp… in foo()
650 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
651 …// NATIVE-HALF: call half @llvm.experimental.constrained.fmul.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
659 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
668 …// NATIVE-HALF: call half @llvm.experimental.constrained.fptrunc.f16.f64(double 1.000000e+00, meta… in foo()
673 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
683 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
684 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
685 …// NATIVE-HALF: call i32 @llvm.experimental.constrained.fptosi.i32.f16(half %{{.*}}, metadata !"fp… in foo()
693 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i32(i32 %{{.*}}, metadata !"ro… in foo()
694 …// NATIVE-HALF: call half @llvm.experimental.constrained.fdiv.f16(half %{{.*}}, half %{{.*}}, meta… in foo()
721 …// NATIVE-HALF: call half @llvm.experimental.constrained.sitofp.f16.i16(i16 %{{.*}}, metadata !"ro… in foo()
728 // CHECK-LABEL: define void @testTypeDef(
729 // NATIVE-HALF: call <4 x half> @llvm.experimental.constrained.fadd.v4f16(<4 x half> %{{.*}}, <4 x …