diff options
author | Anton Korobeynikov <asl@math.spbu.ru> | 2009-07-16 13:29:38 +0000 |
---|---|---|
committer | Anton Korobeynikov <asl@math.spbu.ru> | 2009-07-16 13:29:38 +0000 |
commit | 1cc9dc7267c84b83379a44a479bb435f4aa18355 (patch) | |
tree | 6d0fbf5e94e5be10cee9c537c94963cdf4d8a3bb /lib/Target/SystemZ/SystemZInstrInfo.td | |
parent | 87a24e3ee43559fc4d1c6a7f442d49d1e3ccf663 (diff) | |
download | llvm-1cc9dc7267c84b83379a44a479bb435f4aa18355.tar.gz llvm-1cc9dc7267c84b83379a44a479bb435f4aa18355.tar.bz2 llvm-1cc9dc7267c84b83379a44a479bb435f4aa18355.tar.xz |
Add simple reg-reg and reg-imm moves
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75912 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ/SystemZInstrInfo.td')
-rw-r--r-- | lib/Target/SystemZ/SystemZInstrInfo.td | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/Target/SystemZ/SystemZInstrInfo.td b/lib/Target/SystemZ/SystemZInstrInfo.td index 54e0969bc5..9b961cbdab 100644 --- a/lib/Target/SystemZ/SystemZInstrInfo.td +++ b/lib/Target/SystemZ/SystemZInstrInfo.td @@ -30,3 +30,20 @@ def NOP : Pseudo<(outs), (ins), "# no-op", []>; let isReturn = 1, isTerminator = 1 in { def RET : Pseudo<(outs), (ins), "br\t%r14", [(SystemZretflag)]>; } + +//===----------------------------------------------------------------------===// +// Move Instructions + +// FIXME: Provide proper encoding! +let neverHasSideEffects = 1 in { +def MOV64rr : Pseudo<(outs GR64:$dst), (ins GR64:$src), + "lgr\t{$dst, $src}", + []>; +} + +// FIXME: Provide proper encoding! +let isReMaterializable = 1, isAsCheapAsAMove = 1 in { +def MOV64ri : Pseudo<(outs GR64:$dst), (ins i64imm:$src), + "lghi\t{$dst, $src}", + [(set GR64:$dst, imm:$src)]>; +} |