mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 16:33:28 +00:00
[Hexagon] Adding packhl instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@223664 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e77177b3ae
commit
5c7adadf6d
@ -204,6 +204,12 @@ def: BinOp32_pat<or, A2_or, i32>;
|
||||
def: BinOp32_pat<sub, A2_sub, i32>;
|
||||
def: BinOp32_pat<xor, A2_xor, i32>;
|
||||
|
||||
// A few special cases producing register pairs:
|
||||
let OutOperandList = (outs DoubleRegs:$Rd), hasNewValue = 0,
|
||||
isCodeGenOnly = 0 in {
|
||||
def S2_packhl : T_ALU32_3op <"packhl", 0b101, 0b100, 0, 0>;
|
||||
}
|
||||
|
||||
let hasSideEffects = 0, hasNewValue = 1, isCompare = 1, InputType = "reg" in
|
||||
class T_ALU32_3op_cmp<string mnemonic, bits<2> MinOp, bit IsNeg, bit IsComm>
|
||||
: ALU32_rr<(outs PredRegs:$Pd), (ins IntRegs:$Rs, IntRegs:$Rt),
|
||||
|
@ -22,3 +22,5 @@
|
||||
# CHECK: r17 = aslh(r21)
|
||||
0x11 0xc0 0x35 0x70
|
||||
# CHECK: r17 = asrh(r21)
|
||||
0x10 0xdf 0x95 0xf5
|
||||
# CHECK: r17:16 = packhl(r21, r31)
|
||||
|
Loading…
x
Reference in New Issue
Block a user