summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2018-03-01 19:04:25 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2018-03-01 19:04:25 +0000
commitdd022ce06415dd7c1904a839d3e844985798b6d2 (patch)
tree499b588970bf2f806b77000903972b179e99eae4
parent9a289f7b724e5d408a1e532d38b478ca3cd8427d (diff)
downloadbcm5719-llvm-dd022ce06415dd7c1904a839d3e844985798b6d2.tar.gz
bcm5719-llvm-dd022ce06415dd7c1904a839d3e844985798b6d2.zip
AMDGPU/GlobalISel: Mark 32-bit G_FPTOSI as legal
Patch by Tom Stellard llvm-svn: 326464
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp3
-rw-r--r--llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fptosi.mir14
2 files changed, 17 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
index c08e33fce3a..7c6926dcada 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
@@ -56,6 +56,9 @@ AMDGPULegalizerInfo::AMDGPULegalizerInfo() {
setAction({G_FMUL, S32}, Legal);
+ setAction({G_FPTOSI, S32}, Legal);
+ setAction({G_FPTOSI, 1, S32}, Legal);
+
setAction({G_FPTOUI, S32}, Legal);
setAction({G_FPTOUI, 1, S32}, Legal);
diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fptosi.mir b/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fptosi.mir
new file mode 100644
index 00000000000..54e5bb950ab
--- /dev/null
+++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fptosi.mir
@@ -0,0 +1,14 @@
+# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
+# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=fiji -run-pass=legalizer -global-isel %s -o - | FileCheck %s
+
+---
+name: test_fptosi_f32_to_i32
+body: |
+ bb.0:
+ liveins: $vgpr0
+
+ ; CHECK-LABEL: name: test_fptosi_f32_to_i32
+ ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $vgpr0
+ %0:_(s32) = COPY $vgpr0
+ %1:_(s32) = G_FPTOSI %0
+...
OpenPOWER on IntegriCloud