[PowerPC] Support lmw/stmw in the asm parser
This adds support for the load/store multiple instructions, currently used by the asm parser only. llvm-svn: 185564
This commit is contained in:
parent
3d11a3061a
commit
2542b3b17f
|
@ -1378,6 +1378,10 @@ def LFIWZX : XForm_25<31, 887, (outs f8rc:$frD), (ins memrr:$src),
|
||||||
[(set f64:$frD, (PPClfiwzx xoaddr:$src))]>;
|
[(set f64:$frD, (PPClfiwzx xoaddr:$src))]>;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Load Multiple
|
||||||
|
def LMW : DForm_1<46, (outs gprc:$rD), (ins memri:$src),
|
||||||
|
"lmw $rD, $src", LdStLMW, []>;
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// PPC32 Store Instructions.
|
// PPC32 Store Instructions.
|
||||||
//
|
//
|
||||||
|
@ -1508,6 +1512,10 @@ def : Pat<(pre_store f32:$rS, iPTR:$ptrreg, iPTR:$ptroff),
|
||||||
def : Pat<(pre_store f64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
|
def : Pat<(pre_store f64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
|
||||||
(STFDUX $rS, $ptrreg, $ptroff)>;
|
(STFDUX $rS, $ptrreg, $ptroff)>;
|
||||||
|
|
||||||
|
// Store Multiple
|
||||||
|
def STMW : DForm_1<47, (outs), (ins gprc:$rS, memri:$dst),
|
||||||
|
"stmw $rS, $dst", LdStLMW, []>;
|
||||||
|
|
||||||
def SYNC : XForm_24_sync<31, 598, (outs), (ins i32imm:$L),
|
def SYNC : XForm_24_sync<31, 598, (outs), (ins i32imm:$L),
|
||||||
"sync $L", LdStSync, []>;
|
"sync $L", LdStSync, []>;
|
||||||
def : Pat<(int_ppc_sync), (SYNC 0)>;
|
def : Pat<(int_ppc_sync), (SYNC 0)>;
|
||||||
|
|
|
@ -177,7 +177,12 @@
|
||||||
# CHECK: stdbrx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x28]
|
# CHECK: stdbrx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x28]
|
||||||
stdbrx 2, 3, 4
|
stdbrx 2, 3, 4
|
||||||
|
|
||||||
# FIXME: Fixed-point load and store multiple instructions
|
# Fixed-point load and store multiple instructions
|
||||||
|
|
||||||
|
# CHECK: lmw 2, 128(1) # encoding: [0xb8,0x41,0x00,0x80]
|
||||||
|
lmw 2, 128(1)
|
||||||
|
# CHECK: stmw 2, 128(1) # encoding: [0xbc,0x41,0x00,0x80]
|
||||||
|
stmw 2, 128(1)
|
||||||
|
|
||||||
# FIXME: Fixed-point move assist instructions
|
# FIXME: Fixed-point move assist instructions
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue