summaryrefslogtreecommitdiff
path: root/lib/Target/PowerPC/PPCInstrFormats.td
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-03-27 03:34:17 +0000
committerChris Lattner <sabre@nondot.org>2006-03-27 03:34:17 +0000
commitfb143ce459bafde02a7c6d625cc8974966fa5dff (patch)
tree3809e74f83000e64581278a9c4f81cea9fdeed00 /lib/Target/PowerPC/PPCInstrFormats.td
parenteeaf72af39afce402236f71702d878ce65491b6a (diff)
downloadllvm-fb143ce459bafde02a7c6d625cc8974966fa5dff.tar.gz
llvm-fb143ce459bafde02a7c6d625cc8974966fa5dff.tar.bz2
llvm-fb143ce459bafde02a7c6d625cc8974966fa5dff.tar.xz
Fix the JIT encoding of VSEL
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27160 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/PPCInstrFormats.td')
-rw-r--r--lib/Target/PowerPC/PPCInstrFormats.td20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPCInstrFormats.td b/lib/Target/PowerPC/PPCInstrFormats.td
index 9f87b278e6..805e1258c5 100644
--- a/lib/Target/PowerPC/PPCInstrFormats.td
+++ b/lib/Target/PowerPC/PPCInstrFormats.td
@@ -590,6 +590,8 @@ class MDForm_1<bits<6> opcode, bits<3> xo, dag OL, string asmstr,
}
// E-1 VA-Form
+
+// VAForm_1 - DACB ordering.
class VAForm_1<bits<6> xo, dag OL, string asmstr,
InstrItinClass itin, list<dag> pattern>
: I<4, OL, asmstr, itin> {
@@ -607,6 +609,24 @@ class VAForm_1<bits<6> xo, dag OL, string asmstr,
let Inst{26-31} = xo;
}
+// VAForm_1a - DABC ordering.
+class VAForm_1a<bits<6> xo, dag OL, string asmstr,
+ InstrItinClass itin, list<dag> pattern>
+ : I<4, OL, asmstr, itin> {
+ bits<5> VD;
+ bits<5> VA;
+ bits<5> VB;
+ bits<5> VC;
+
+ let Pattern = pattern;
+
+ let Inst{6-10} = VD;
+ let Inst{11-15} = VA;
+ let Inst{16-20} = VB;
+ let Inst{21-25} = VC;
+ let Inst{26-31} = xo;
+}
+
class VAForm_2<bits<6> xo, dag OL, string asmstr,
InstrItinClass itin, list<dag> pattern>
: I<4, OL, asmstr, itin> {