mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-06 23:32:27 +00:00
PPC rotate instructions don't have unmodeled side effcts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178982 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7ea2e48694
commit
946a811ef1
@ -495,6 +495,7 @@ def MULLD : XOForm_1<31, 233, 0, (outs G8RC:$rT), (ins G8RC:$rA, G8RC:$rB),
|
||||
[(set i64:$rT, (mul i64:$rA, i64:$rB))]>, isPPC64;
|
||||
|
||||
|
||||
let neverHasSideEffects = 1 in {
|
||||
let isCommutable = 1 in {
|
||||
def RLDIMI : MDForm_1<30, 3,
|
||||
(outs G8RC:$rA), (ins G8RC:$rSi, G8RC:$rS, u6imm:$SH, u6imm:$MB),
|
||||
@ -522,11 +523,12 @@ def RLWINM8 : MForm_2<21,
|
||||
"rlwinm $rA, $rS, $SH, $MB, $ME", IntGeneral,
|
||||
[]>;
|
||||
|
||||
let isSelect = 1, neverHasSideEffects = 1 in
|
||||
let isSelect = 1 in
|
||||
def ISEL8 : AForm_4<31, 15,
|
||||
(outs G8RC:$rT), (ins G8RC_NOX0:$rA, G8RC:$rB, CRBITRC:$cond),
|
||||
"isel $rT, $rA, $rB, $cond", IntGeneral,
|
||||
[]>;
|
||||
} // neverHasSideEffects = 1
|
||||
} // End FXU Operations.
|
||||
|
||||
|
||||
|
@ -1554,8 +1554,9 @@ let Uses = [RM] in {
|
||||
}
|
||||
}
|
||||
|
||||
let neverHasSideEffects = 1 in {
|
||||
let PPC970_Unit = 1 in { // FXU Operations.
|
||||
let isSelect = 1, neverHasSideEffects = 1 in
|
||||
let isSelect = 1 in
|
||||
def ISEL : AForm_4<31, 15,
|
||||
(outs GPRC:$rT), (ins GPRC_NOR0:$rA, GPRC:$rB, CRBITRC:$cond),
|
||||
"isel $rT, $rA, $rB, $cond", IntGeneral,
|
||||
@ -1586,7 +1587,7 @@ def RLWNM : MForm_2<23,
|
||||
"rlwnm $rA, $rS, $rB, $MB, $ME", IntGeneral,
|
||||
[]>;
|
||||
}
|
||||
|
||||
} // neverHasSideEffects = 1
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// PowerPC Instruction Patterns
|
||||
|
Loading…
x
Reference in New Issue
Block a user