aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/SparcV8/SparcV8InstrInfo.td
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/SparcV8/SparcV8InstrInfo.td')
-rw-r--r--lib/Target/SparcV8/SparcV8InstrInfo.td4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/SparcV8/SparcV8InstrInfo.td b/lib/Target/SparcV8/SparcV8InstrInfo.td
index eaa6691fee..22ed2417df 100644
--- a/lib/Target/SparcV8/SparcV8InstrInfo.td
+++ b/lib/Target/SparcV8/SparcV8InstrInfo.td
@@ -660,6 +660,8 @@ def : Pat<(i32 simm13:$val),
def : Pat<(i32 imm:$val),
(ORri (SETHIi (HI22 imm:$val)), (LO10 imm:$val))>;
-// Global addresses
+// Global addresses, constant pool entries
def : Pat<(V8hi tglobaladdr:$in), (SETHIi tglobaladdr:$in)>;
def : Pat<(V8lo tglobaladdr:$in), (ORri G0, tglobaladdr:$in)>;
+def : Pat<(V8hi tconstpool:$in), (SETHIi tconstpool:$in)>;
+def : Pat<(V8lo tconstpool:$in), (ORri G0, tconstpool:$in)>;