diff options
author | Chris Lattner <sabre@nondot.org> | 2004-11-24 01:15:19 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-11-24 01:15:19 +0000 |
commit | 310a75287291b8a06d27c14849f184716e2aa666 (patch) | |
tree | 9d0c7a124a4ab5eef83288c6abf959a1f36718d8 /lib/Target | |
parent | 3b78e3b6a9865ab5e30fc5dc8fe194a805aebcf6 (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.td | 10 |
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 |