aboutsummaryrefslogtreecommitdiff
path: root/lib/Target
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-11-24 01:15:19 +0000
committerChris Lattner <sabre@nondot.org>2004-11-24 01:15:19 +0000
commit310a75287291b8a06d27c14849f184716e2aa666 (patch)
tree9d0c7a124a4ab5eef83288c6abf959a1f36718d8 /lib/Target
parent3b78e3b6a9865ab5e30fc5dc8fe194a805aebcf6 (diff)
Branch instructions explicitly represent CRx in them. bEcause of this, encode
them explicitly as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18193 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r--lib/Target/PowerPC/PPCInstrFormats.td10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/Target/PowerPC/PPCInstrFormats.td b/lib/Target/PowerPC/PPCInstrFormats.td
index c5ad77a958..4053136e83 100644
--- a/lib/Target/PowerPC/PPCInstrFormats.td
+++ b/lib/Target/PowerPC/PPCInstrFormats.td
@@ -70,21 +70,23 @@ class IForm<bits<6> opcode, bit aa, bit lk, bit ppc64, bit vmx,
class BForm<bits<6> opcode, bit aa, bit lk, bit ppc64, bit vmx,
dag OL, string asmstr> : I<opcode, ppc64, vmx, OL, asmstr> {
bits<5> BO;
- bits<5> BI;
+ bits<3> CRNum;
+ bits<2> BICode;
bits<14> BD;
let Inst{6-10} = BO;
- let Inst{11-15} = BI;
+ let Inst{11-13} = CRNum;
+ let Inst{14-15} = BICode;
let Inst{16-29} = BD;
let Inst{30} = aa;
let Inst{31} = lk;
}
-class BForm_ext<bits<6> opcode, bit aa, bit lk, bits<5> bo, bits<5> bi,
+class BForm_ext<bits<6> opcode, bit aa, bit lk, bits<5> bo, bits<2> bicode,
bit ppc64, bit vmx, dag OL, string asmstr>
: BForm<opcode, aa, lk, ppc64, vmx, OL, asmstr> {
let BO = bo;
- let BI = bi;
+ let BICode = bicode;
}
// 1.7.4 D-Form