[llvm] r283808 - GlobalISel: allow G_GLOBAL_VALUEs in AArch64 legalization.
Tim Northover via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 10 14:49:53 PDT 2016
Author: tnorthover
Date: Mon Oct 10 16:49:53 2016
New Revision: 283808
URL: http://llvm.org/viewvc/llvm-project?rev=283808&view=rev
Log:
GlobalISel: allow G_GLOBAL_VALUEs in AArch64 legalization.
Modified:
llvm/trunk/lib/Target/AArch64/AArch64MachineLegalizer.cpp
llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir
Modified: llvm/trunk/lib/Target/AArch64/AArch64MachineLegalizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64MachineLegalizer.cpp?rev=283808&r1=283807&r2=283808&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AArch64/AArch64MachineLegalizer.cpp (original)
+++ llvm/trunk/lib/Target/AArch64/AArch64MachineLegalizer.cpp Mon Oct 10 16:49:53 2016
@@ -168,6 +168,7 @@ AArch64MachineLegalizer::AArch64MachineL
// Pointer-handling
setAction({G_FRAME_INDEX, p0}, Legal);
+ setAction({G_GLOBAL_VALUE, p0}, Legal);
setAction({G_PTRTOINT, 0, s64}, Legal);
setAction({G_PTRTOINT, 1, p0}, Legal);
Modified: llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir?rev=283808&r1=283807&r2=283808&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir (original)
+++ llvm/trunk/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir Mon Oct 10 16:49:53 2016
@@ -11,6 +11,8 @@
entry:
ret void
}
+ @var = global i8 0
+ define i8* @test_global() { ret i8* undef }
...
---
@@ -61,3 +63,15 @@ body: |
%1(s64) = G_FCONSTANT double 2.0
%2(s16) = G_FCONSTANT half 0.0
...
+
+---
+name: test_global
+registers:
+ - { id: 0, class: _ }
+body: |
+ bb.0:
+ ; CHECK-LABEL: name: test_global
+ ; CHECK: %0(p0) = G_GLOBAL_VALUE @var
+
+ %0(p0) = G_GLOBAL_VALUE @var
+...
More information about the llvm-commits
mailing list