diff options
author | Misha Brukman <brukman+llvm@gmail.com> | 2004-10-23 20:29:24 +0000 |
---|---|---|
committer | Misha Brukman <brukman+llvm@gmail.com> | 2004-10-23 20:29:24 +0000 |
commit | 40a55e1e291f1e28eadae19e5ce6f9087d99e085 (patch) | |
tree | 5459b011fa2fcc1e032d62b41a8db278e088db75 /lib | |
parent | 3a561f5478f764434d092209c1e6cb9625733c55 (diff) |
Add BA, BL, and BLA opcodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17193 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/PowerPC/PPCInstrInfo.td | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Target/PowerPC/PPCInstrInfo.td b/lib/Target/PowerPC/PPCInstrInfo.td index 8d539b859a..69cc55fc79 100644 --- a/lib/Target/PowerPC/PPCInstrInfo.td +++ b/lib/Target/PowerPC/PPCInstrInfo.td @@ -53,7 +53,10 @@ def MovePCtoLR : Pseudo<(ops piclabel:$label), "bl $label">; let isBranch = 1, isTerminator = 1 in { def COND_BRANCH : Pseudo<(ops), "; COND_BRANCH">; - def B : IForm<18, 0, 0, 0, 0, (ops target:$func), "b $func">; + def B : IForm<18, 0, 0, 0, 0, (ops target:$func), "b $func">; + def BA : IForm<18, 1, 0, 0, 0, (ops target:$func), "ba $func">; + def BL : IForm<18, 0, 1, 0, 0, (ops target:$func), "bl $func">; + def BLA : IForm<18, 1, 1, 0, 0, (ops target:$func), "bla $func">; // FIXME: 4*CR# needs to be added to the BI field! // This will only work for CR0 as it stands now def BLT : BForm_ext<16, 0, 0, 12, 0, 0, 0, (ops CRRC:$crS, target:$block), |