Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / AMDGPU / GlobalISel / legalize-amdgcn.rsq.clamp.mir
blob93b605948165e2f49efca51a12be3ba87754aad4
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=tahiti -run-pass=legalizer %s -o - | FileCheck -check-prefix=SI %s
3 # RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=fiji -run-pass=legalizer %s -o - | FileCheck -check-prefix=VI %s
5 ---
6 name: test_rsq_clamp_flags_ieee_on_f32
7 tracksRegLiveness: true
8 machineFunctionInfo:
9   mode:
10     ieee: true
12 body: |
13   bb.0:
14     liveins: $vgpr0
16     ; SI-LABEL: name: test_rsq_clamp_flags_ieee_on_f32
17     ; SI: liveins: $vgpr0
18     ; SI-NEXT: {{  $}}
19     ; SI-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
20     ; SI-NEXT: [[INT:%[0-9]+]]:_(s32) = nnan ninf nsz G_INTRINSIC intrinsic(@llvm.amdgcn.rsq.clamp), [[COPY]](s32)
21     ; SI-NEXT: $vgpr0 = COPY [[INT]](s32)
22     ; VI-LABEL: name: test_rsq_clamp_flags_ieee_on_f32
23     ; VI: liveins: $vgpr0
24     ; VI-NEXT: {{  $}}
25     ; VI-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
26     ; VI-NEXT: [[INT:%[0-9]+]]:_(s32) = nnan ninf nsz G_INTRINSIC intrinsic(@llvm.amdgcn.rsq), [[COPY]](s32)
27     ; VI-NEXT: [[C:%[0-9]+]]:_(s32) = G_FCONSTANT float 0x47EFFFFFE0000000
28     ; VI-NEXT: [[FMINNUM_IEEE:%[0-9]+]]:_(s32) = nnan ninf nsz G_FMINNUM_IEEE [[INT]], [[C]]
29     ; VI-NEXT: [[C1:%[0-9]+]]:_(s32) = G_FCONSTANT float 0xC7EFFFFFE0000000
30     ; VI-NEXT: [[FMAXNUM_IEEE:%[0-9]+]]:_(s32) = nnan ninf nsz G_FMAXNUM_IEEE [[FMINNUM_IEEE]], [[C1]]
31     ; VI-NEXT: $vgpr0 = COPY [[FMAXNUM_IEEE]](s32)
32     %0:_(s32) = COPY $vgpr0
33     %1:_(s32) = nnan ninf nsz G_INTRINSIC intrinsic(@llvm.amdgcn.rsq.clamp), %0
34     $vgpr0 = COPY %1
35 ...
37 ---
38 name: test_rsq_clamp_flags_ieee_off_f32
39 tracksRegLiveness: true
40 machineFunctionInfo:
41   mode:
42     ieee: false
44 body: |
45   bb.0:
46     liveins: $vgpr0
48     ; SI-LABEL: name: test_rsq_clamp_flags_ieee_off_f32
49     ; SI: liveins: $vgpr0
50     ; SI-NEXT: {{  $}}
51     ; SI-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
52     ; SI-NEXT: [[INT:%[0-9]+]]:_(s32) = nnan ninf nsz G_INTRINSIC intrinsic(@llvm.amdgcn.rsq.clamp), [[COPY]](s32)
53     ; SI-NEXT: $vgpr0 = COPY [[INT]](s32)
54     ; VI-LABEL: name: test_rsq_clamp_flags_ieee_off_f32
55     ; VI: liveins: $vgpr0
56     ; VI-NEXT: {{  $}}
57     ; VI-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
58     ; VI-NEXT: [[INT:%[0-9]+]]:_(s32) = nnan ninf nsz G_INTRINSIC intrinsic(@llvm.amdgcn.rsq), [[COPY]](s32)
59     ; VI-NEXT: [[C:%[0-9]+]]:_(s32) = G_FCONSTANT float 0x47EFFFFFE0000000
60     ; VI-NEXT: [[FMINNUM:%[0-9]+]]:_(s32) = nnan ninf nsz G_FMINNUM [[INT]], [[C]]
61     ; VI-NEXT: [[C1:%[0-9]+]]:_(s32) = G_FCONSTANT float 0xC7EFFFFFE0000000
62     ; VI-NEXT: [[FMAXNUM:%[0-9]+]]:_(s32) = nnan ninf nsz G_FMAXNUM [[FMINNUM]], [[C1]]
63     ; VI-NEXT: $vgpr0 = COPY [[FMAXNUM]](s32)
64     %0:_(s32) = COPY $vgpr0
65     %1:_(s32) = nnan ninf nsz G_INTRINSIC intrinsic(@llvm.amdgcn.rsq.clamp), %0
66     $vgpr0 = COPY %1
67 ...