mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-01 12:24:24 +00:00
add ldrexd/strexd instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91284 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -1710,11 +1710,15 @@ def LDREXH : AIldrex<0b11, (outs GPR:$dest), (ins GPR:$ptr), NoItinerary,
|
|||||||
def LDREX : AIldrex<0b00, (outs GPR:$dest), (ins GPR:$ptr), NoItinerary,
|
def LDREX : AIldrex<0b00, (outs GPR:$dest), (ins GPR:$ptr), NoItinerary,
|
||||||
"ldrex", "\t$dest, [$ptr]",
|
"ldrex", "\t$dest, [$ptr]",
|
||||||
[]>;
|
[]>;
|
||||||
|
def LDREXD : AIldrex<0b00, (outs GPR:$dest, GPR:$dest2), (ins GPR:$ptr),
|
||||||
|
NoItinerary,
|
||||||
|
"ldrexd", "\t$dest, $dest2, [$ptr]",
|
||||||
|
[]>;
|
||||||
}
|
}
|
||||||
|
|
||||||
let mayStore = 1 in {
|
let mayStore = 1 in {
|
||||||
def STREXB : AIstrex<0b10, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
def STREXB : AIstrex<0b10, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
||||||
NoItinerary,
|
NoItinerary,
|
||||||
"strexb", "\t$success, $src, [$ptr]",
|
"strexb", "\t$success, $src, [$ptr]",
|
||||||
[]>;
|
[]>;
|
||||||
def STREXH : AIstrex<0b11, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
def STREXH : AIstrex<0b11, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
||||||
@ -1722,9 +1726,14 @@ def STREXH : AIstrex<0b11, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
|||||||
"strexh", "\t$success, $src, [$ptr]",
|
"strexh", "\t$success, $src, [$ptr]",
|
||||||
[]>;
|
[]>;
|
||||||
def STREX : AIstrex<0b00, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
def STREX : AIstrex<0b00, (outs GPR:$success), (ins GPR:$src, GPR:$ptr),
|
||||||
NoItinerary,
|
NoItinerary,
|
||||||
"strex", "\t$success, $src, [$ptr]",
|
"strex", "\t$success, $src, [$ptr]",
|
||||||
[]>;
|
[]>;
|
||||||
|
def STREXD : AIstrex<0b00, (outs GPR:$success),
|
||||||
|
(ins GPR:$src, GPR:$src2, GPR:$ptr),
|
||||||
|
NoItinerary,
|
||||||
|
"strexd", "\t$success, $src, $src2, [$ptr]",
|
||||||
|
[]>;
|
||||||
}
|
}
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
Reference in New Issue
Block a user