summaryrefslogtreecommitdiff
path: root/lib/Target/MSP430/MSP430InstrInfo.td
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2009-05-03 13:11:04 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2009-05-03 13:11:04 +0000
commitd5047cb9f7f207798e1729911daa6d3752b668e3 (patch)
tree091355d8617d7bae8103cc8c0d40d5d797e9700a /lib/Target/MSP430/MSP430InstrInfo.td
parent875e1eb8ab7c6210f3d6d55d358e2c6a751f2cbb (diff)
downloadllvm-d5047cb9f7f207798e1729911daa6d3752b668e3.tar.gz
llvm-d5047cb9f7f207798e1729911daa6d3752b668e3.tar.bz2
llvm-d5047cb9f7f207798e1729911daa6d3752b668e3.tar.xz
Add code for save/restore of callee-saved registers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70739 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/MSP430/MSP430InstrInfo.td')
-rw-r--r--lib/Target/MSP430/MSP430InstrInfo.td11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/Target/MSP430/MSP430InstrInfo.td b/lib/Target/MSP430/MSP430InstrInfo.td
index 3afab5b0ac..8ab41ad46c 100644
--- a/lib/Target/MSP430/MSP430InstrInfo.td
+++ b/lib/Target/MSP430/MSP430InstrInfo.td
@@ -117,6 +117,17 @@ let isCall = 1 in
//===----------------------------------------------------------------------===//
+// Miscellaneous Instructions...
+//
+let Defs = [SPW], Uses = [SPW], neverHasSideEffects=1 in {
+let mayLoad = 1 in
+def POP16r : Pseudo<(outs GR16:$reg), (ins), "pop.w\t$reg", []>;
+
+let mayStore = 1 in
+def PUSH16r : Pseudo<(outs), (ins GR16:$reg), "push.w\t$reg",[]>;
+}
+
+//===----------------------------------------------------------------------===//
// Move Instructions
// FIXME: Provide proper encoding!