mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-02 16:56:50 +00:00
Fix wrong PowerPC instruction encodings due to
operand field name mismatches in: - AForm_3 (fmul, fmuls) - XFXForm_5 (mtcrf) - XFLForm (mtfsf) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167862 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
18430436ca
commit
4ff09818a9
@ -626,9 +626,9 @@ class XFXForm_5<bits<6> opcode, bits<10> xo, dag OOL, dag IOL, string asmstr,
|
||||
InstrItinClass itin>
|
||||
: I<opcode, OOL, IOL, asmstr, itin> {
|
||||
bits<8> FXM;
|
||||
bits<5> ST;
|
||||
bits<5> rS;
|
||||
|
||||
let Inst{6-10} = ST;
|
||||
let Inst{6-10} = rS;
|
||||
let Inst{11} = 0;
|
||||
let Inst{12-19} = FXM;
|
||||
let Inst{20} = 0;
|
||||
@ -667,7 +667,7 @@ class XFLForm<bits<6> opcode, bits<10> xo, dag OOL, dag IOL, string asmstr,
|
||||
string cstr, InstrItinClass itin, list<dag>pattern>
|
||||
: I<opcode, OOL, IOL, asmstr, itin> {
|
||||
bits<8> FM;
|
||||
bits<5> RT;
|
||||
bits<5> rT;
|
||||
|
||||
bit RC = 0; // set by isDOT
|
||||
let Pattern = pattern;
|
||||
@ -676,7 +676,7 @@ class XFLForm<bits<6> opcode, bits<10> xo, dag OOL, dag IOL, string asmstr,
|
||||
let Inst{6} = 0;
|
||||
let Inst{7-14} = FM;
|
||||
let Inst{15} = 0;
|
||||
let Inst{16-20} = RT;
|
||||
let Inst{16-20} = rT;
|
||||
let Inst{21-30} = xo;
|
||||
let Inst{31} = RC;
|
||||
}
|
||||
|
@ -1395,13 +1395,13 @@ let Uses = [RM] in {
|
||||
"fdivs $FRT, $FRA, $FRB", FPDivS,
|
||||
[(set F4RC:$FRT, (fdiv F4RC:$FRA, F4RC:$FRB))]>;
|
||||
def FMUL : AForm_3<63, 25,
|
||||
(outs F8RC:$FRT), (ins F8RC:$FRA, F8RC:$FRB),
|
||||
"fmul $FRT, $FRA, $FRB", FPFused,
|
||||
[(set F8RC:$FRT, (fmul F8RC:$FRA, F8RC:$FRB))]>;
|
||||
(outs F8RC:$FRT), (ins F8RC:$FRA, F8RC:$FRC),
|
||||
"fmul $FRT, $FRA, $FRC", FPFused,
|
||||
[(set F8RC:$FRT, (fmul F8RC:$FRA, F8RC:$FRC))]>;
|
||||
def FMULS : AForm_3<59, 25,
|
||||
(outs F4RC:$FRT), (ins F4RC:$FRA, F4RC:$FRB),
|
||||
"fmuls $FRT, $FRA, $FRB", FPGeneral,
|
||||
[(set F4RC:$FRT, (fmul F4RC:$FRA, F4RC:$FRB))]>;
|
||||
(outs F4RC:$FRT), (ins F4RC:$FRA, F4RC:$FRC),
|
||||
"fmuls $FRT, $FRA, $FRC", FPGeneral,
|
||||
[(set F4RC:$FRT, (fmul F4RC:$FRA, F4RC:$FRC))]>;
|
||||
def FSUB : AForm_2<63, 20,
|
||||
(outs F8RC:$FRT), (ins F8RC:$FRA, F8RC:$FRB),
|
||||
"fsub $FRT, $FRA, $FRB", FPAddSub,
|
||||
|
Loading…
Reference in New Issue
Block a user