mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-15 07:33:18 +00:00
what the heck, add support for the rest of the 3dNow! binary operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115467 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
548abfcbd6
commit
f132fa0e74
@ -36,9 +36,27 @@ let Constraints = "$src1 = $dst" in {
|
||||
}
|
||||
}
|
||||
|
||||
defm PAVGUSB : I3DNow_binop_rm<0xBF, "pavgusb">;
|
||||
defm PAVGUSB : I3DNow_binop_rm<0xBF, "pavgusb">;
|
||||
defm PF2ID : I3DNow_binop_rm<0x1D, "pf2id">;
|
||||
defm PFACC : I3DNow_binop_rm<0xAE, "pfacc">;
|
||||
defm PFADD : I3DNow_binop_rm<0x9E, "pfadd">;
|
||||
defm PFCMPEQ : I3DNow_binop_rm<0xB0, "pfcmpeq">;
|
||||
defm PFCMPGE : I3DNow_binop_rm<0x90, "pfcmpge">;
|
||||
defm PFCMPGT : I3DNow_binop_rm<0xA0, "pfcmpgt">;
|
||||
defm PFMAX : I3DNow_binop_rm<0xA4, "pfmax">;
|
||||
defm PFMIN : I3DNow_binop_rm<0x94, "pfmin">;
|
||||
defm PFMUL : I3DNow_binop_rm<0xB4, "pfmul">;
|
||||
defm PFRCP : I3DNow_binop_rm<0x96, "pfrcp">;
|
||||
defm PFRCPIT1 : I3DNow_binop_rm<0xA6, "pfrcpit1">;
|
||||
defm PFRCPIT2 : I3DNow_binop_rm<0xB6, "pfrcpit2">;
|
||||
defm PFRSQIT1 : I3DNow_binop_rm<0xA7, "pfrsqit1">;
|
||||
defm PFRSQRT : I3DNow_binop_rm<0x97, "pfrsqrt">;
|
||||
defm PFSUB : I3DNow_binop_rm<0x9A, "pfsub">;
|
||||
defm PFSUBR : I3DNow_binop_rm<0xAA, "pfsubr">;
|
||||
defm PI2FD : I3DNow_binop_rm<0x0D, "pi2fd">;
|
||||
defm PMULHRW : I3DNow_binop_rm<0xB7, "pmulhrw">;
|
||||
|
||||
|
||||
|
||||
|
||||
// TODO: Add support for the rest of the 3DNow! and "3DNowA" instructions.
|
||||
// TODO: Add support for the "3DNowA" instructions.
|
||||
|
@ -5,7 +5,64 @@
|
||||
// CHECK: pavgusb %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xbf]
|
||||
pavgusb %mm2, %mm1
|
||||
|
||||
// CHECK: pavgusb 9(%esi,%edx), %mm3 # encoding: [0x0f,0x0f,0x5c,0x16,0x09,0
|
||||
// CHECK: pavgusb 9(%esi,%edx), %mm3 # encoding: [0x0f,0x0f,0x5c,0x16,0x09,0xbf]
|
||||
pavgusb 9(%esi,%edx), %mm3
|
||||
|
||||
|
||||
// CHECK: pf2id %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x1d]
|
||||
pf2id %mm2, %mm1
|
||||
|
||||
// CHECK: pf2id 9(%esi,%edx), %mm3 # encoding: [0x0f,0x0f,0x5c,0x16,0x09,0x1d]
|
||||
pf2id 9(%esi,%edx), %mm3
|
||||
|
||||
// CHECK: pfacc %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xae]
|
||||
pfacc %mm2, %mm1
|
||||
|
||||
// CHECK: pfadd %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x9e]
|
||||
pfadd %mm2, %mm1
|
||||
|
||||
// CHECK: pfcmpeq %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xb0]
|
||||
pfcmpeq %mm2, %mm1
|
||||
|
||||
// CHECK: pfcmpge %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x90]
|
||||
pfcmpge %mm2, %mm1
|
||||
|
||||
// CHECK: pfcmpgt %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xa0]
|
||||
pfcmpgt %mm2, %mm1
|
||||
|
||||
// CHECK: pfmax %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xa4]
|
||||
pfmax %mm2, %mm1
|
||||
|
||||
// CHECK: pfmin %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x94]
|
||||
pfmin %mm2, %mm1
|
||||
|
||||
// CHECK: pfmul %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xb4]
|
||||
pfmul %mm2, %mm1
|
||||
|
||||
// CHECK: pfrcp %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x96]
|
||||
pfrcp %mm2, %mm1
|
||||
|
||||
// CHECK: pfrcpit1 %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xa6]
|
||||
pfrcpit1 %mm2, %mm1
|
||||
|
||||
// CHECK: pfrcpit2 %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xb6]
|
||||
pfrcpit2 %mm2, %mm1
|
||||
|
||||
// CHECK: pfrsqit1 %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xa7]
|
||||
pfrsqit1 %mm2, %mm1
|
||||
|
||||
// CHECK: pfrsqrt %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x97]
|
||||
pfrsqrt %mm2, %mm1
|
||||
|
||||
// CHECK: pfsub %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x9a]
|
||||
pfsub %mm2, %mm1
|
||||
|
||||
// CHECK: pfsubr %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xaa]
|
||||
pfsubr %mm2, %mm1
|
||||
|
||||
// CHECK: pi2fd %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0x0d]
|
||||
pi2fd %mm2, %mm1
|
||||
|
||||
// CHECK: pmulhrw %mm2, %mm1 # encoding: [0x0f,0x0f,0xca,0xb7]
|
||||
pmulhrw %mm2, %mm1
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user