mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-19 19:29:31 +00:00
Model calls as *both* using *and* killing O0..O5, because callees use the
argument values passed in (so they're not dead until *after* the call), and callees are free to modify those registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16882 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
50094edf96
commit
9f0cecd438
@ -193,7 +193,8 @@ def FBO : FPBranchV8<0b1111, "fbo">;
|
||||
|
||||
// Section B.24 - Call and Link Instruction, p. 125
|
||||
// This is the only Format 1 instruction
|
||||
let Defs = [O0, O1, O2, O3, O4, O5], hasDelaySlot = 1, isCall = 1 in {
|
||||
let Uses = [O0, O1, O2, O3, O4, O5], Defs = [O0, O1, O2, O3, O4, O5],
|
||||
hasDelaySlot = 1, isCall = 1 in {
|
||||
// pc-relative call:
|
||||
def CALL : InstV8 {
|
||||
bits<30> disp;
|
||||
|
@ -193,7 +193,8 @@ def FBO : FPBranchV8<0b1111, "fbo">;
|
||||
|
||||
// Section B.24 - Call and Link Instruction, p. 125
|
||||
// This is the only Format 1 instruction
|
||||
let Defs = [O0, O1, O2, O3, O4, O5], hasDelaySlot = 1, isCall = 1 in {
|
||||
let Uses = [O0, O1, O2, O3, O4, O5], Defs = [O0, O1, O2, O3, O4, O5],
|
||||
hasDelaySlot = 1, isCall = 1 in {
|
||||
// pc-relative call:
|
||||
def CALL : InstV8 {
|
||||
bits<30> disp;
|
||||
|
Loading…
Reference in New Issue
Block a user