From 57b04e6fa7195e1f398950ed076512ac24ab30a2 Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Thu, 16 Jul 2009 14:07:06 +0000 Subject: [PATCH] Implement 64 bit immediates git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75982 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/SystemZ/SystemZInstrInfo.td | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/Target/SystemZ/SystemZInstrInfo.td b/lib/Target/SystemZ/SystemZInstrInfo.td index 67ae9c2722a..8969bdfe0b6 100644 --- a/lib/Target/SystemZ/SystemZInstrInfo.td +++ b/lib/Target/SystemZ/SystemZInstrInfo.td @@ -703,6 +703,10 @@ def : Pat<(i64 (anyext GR32:$src)), // FIXME: use add/sub tricks with 32678/-32768 +// Arbitrary immediate support. Implement in terms of LLIHF/OILF. +def : Pat<(i64 imm:$imm), + (OR64rilo32 (MOV64rihi32 (HI32 imm:$imm)), (LO32 imm:$imm))>; + // trunc patterns def : Pat<(i32 (trunc GR64:$src)), (EXTRACT_SUBREG GR64:$src, subreg_32bit)>;