diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2018-03-17 15:17:48 +0000 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2018-03-17 15:17:48 +0000 |
| commit | abdc4f2dc70c36e6af722c4a4fd8dcfc85248c9d (patch) | |
| tree | 36a7459e284adf529632d43beeeb0276630bd419 /llvm/test/CodeGen/AMDGPU | |
| parent | 685d1e81577dcbf84eda0923699f58b4fc362379 (diff) | |
| download | bcm5719-llvm-abdc4f2dc70c36e6af722c4a4fd8dcfc85248c9d.tar.gz bcm5719-llvm-abdc4f2dc70c36e6af722c4a4fd8dcfc85248c9d.zip | |
AMDGPU/GlobalISel: Cleanup constant legality
llvm-svn: 327774
Diffstat (limited to 'llvm/test/CodeGen/AMDGPU')
| -rw-r--r-- | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir | 78 |
1 files changed, 22 insertions, 56 deletions
diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir b/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir index 67f3e4940e3..c999a01a4e5 100644 --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir @@ -1,94 +1,60 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py # RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=fiji -O0 -run-pass=legalizer -global-isel %s -o - | FileCheck %s ---- | - define void @test_constant_i32() { - ret void - } - - define void @test_constant_i64() { - ret void - } - - define void @test_fconstant_f32() { - ret void - } - - define void @test_fconstant_f64() { - ret void - } - - declare void @llvm.amdgcn.exp.f32(i32, i32, float, float, float, float, i1, i1) #1 - - attributes #1 = { nounwind } - -... - --- name: test_constant_i32 -registers: - - { id: 0, class: _ } - - { id: 1, class: _ } body: | bb.0: ; CHECK-LABEL: name: test_constant_i32 ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 5 - ; CHECK: [[C1:%[0-9]+]]:_(s1) = G_CONSTANT i1 false - ; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C1]](s1), [[C1]](s1) - %0(s32) = G_CONSTANT i32 5 - %1(s1) = G_CONSTANT i1 0 - G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp.f32), %0, %0, %0, %0, %0, %0, %1, %1; + ; CHECK: $vgpr0 = COPY [[C]](s32) + %0:_(s32) = G_CONSTANT i32 5 + $vgpr0 = COPY %0 ... --- name: test_constant_i64 -registers: - - { id: 0, class: _ } - - { id: 1, class: _ } body: | bb.0: ; CHECK-LABEL: name: test_constant_i64 - ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 5 - ; CHECK: [[C1:%[0-9]+]]:_(s1) = G_CONSTANT i1 false - ; CHECK: G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C]](s32), [[C1]](s1), [[C1]](s1) - %0(s32) = G_CONSTANT i32 5 - %1(s1) = G_CONSTANT i1 0 - G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.amdgcn.exp.f32), %0, %0, %0, %0, %0, %0, %1, %1; + ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 5 + ; CHECK: $vgpr0_vgpr1 = COPY [[C]](s64) + %0:_(s64) = G_CONSTANT i64 5 + $vgpr0_vgpr1 = COPY %0 + ... --- name: test_fconstant_f32 -registers: - - { id: 0, class: _ } - - { id: 1, class: _ } body: | bb.0: ; CHECK-LABEL: name: test_fconstant_f32 ; CHECK: [[C:%[0-9]+]]:_(s32) = G_FCONSTANT float 1.000000e+00 ; CHECK: $vgpr0 = COPY [[C]](s32) - ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_FCONSTANT float 7.500000e+00 - ; CHECK: $vgpr0 = COPY [[C1]](s32) - %0(s32) = G_FCONSTANT float 1.0 + %0:_(s32) = G_FCONSTANT float 1.0 $vgpr0 = COPY %0 - %1(s32) = G_FCONSTANT float 7.5 - $vgpr0 = COPY %1 ... --- name: test_fconstant_f64 -registers: - - { id: 0, class: _ } - - { id: 1, class: _ } body: | bb.0: ; CHECK-LABEL: name: test_fconstant_f64 ; CHECK: [[C:%[0-9]+]]:_(s64) = G_FCONSTANT double 1.000000e+00 ; CHECK: $vgpr0_vgpr1 = COPY [[C]](s64) - ; CHECK: [[C1:%[0-9]+]]:_(s64) = G_FCONSTANT double 7.500000e+00 - ; CHECK: $vgpr0_vgpr1 = COPY [[C1]](s64) - %0(s64) = G_FCONSTANT double 1.0 + %0:_(s64) = G_FCONSTANT double 1.0 $vgpr0_vgpr1 = COPY %0 - %1(s64) = G_FCONSTANT double 7.5 - $vgpr0_vgpr1 = COPY %1 +... + +--- +name: test_constant_1 +body: | + bb.0: + + ; CHECK-LABEL: name: test_constant_1 + ; CHECK: [[C:%[0-9]+]]:_(s1) = G_CONSTANT i1 false + ; CHECK: S_ENDPGM implicit [[C]](s1) + %1:_(s1) = G_CONSTANT i1 0 + S_ENDPGM implicit %1 ... |

