mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-16 14:31:59 +00:00
[Hexagon] Simplifying deallocret definitions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231847 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
931b52d665
commit
287bb3bc2b
@ -3272,26 +3272,17 @@ defm L4_return: LD_MISC_L4_RETURN <"dealloc_return">, PredNewRel;
|
|||||||
// Restore registers and dealloc return function call.
|
// Restore registers and dealloc return function call.
|
||||||
let isCall = 1, isBarrier = 1, isReturn = 1, isTerminator = 1,
|
let isCall = 1, isBarrier = 1, isReturn = 1, isTerminator = 1,
|
||||||
Defs = [R29, R30, R31, PC], isPredicable = 0, isAsmParserOnly = 1 in {
|
Defs = [R29, R30, R31, PC], isPredicable = 0, isAsmParserOnly = 1 in {
|
||||||
def RESTORE_DEALLOC_RET_JMP_V4 : JInst<(outs),
|
def RESTORE_DEALLOC_RET_JMP_V4 : T_JMP<"">;
|
||||||
(ins calltarget:$dst),
|
|
||||||
"jump $dst",
|
|
||||||
[]>;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Restore registers and dealloc frame before a tail call.
|
// Restore registers and dealloc frame before a tail call.
|
||||||
let isCall = 1, Defs = [R29, R30, R31, PC], isAsmParserOnly = 1 in {
|
let isCall = 1, Defs = [R29, R30, R31, PC], isAsmParserOnly = 1 in {
|
||||||
def RESTORE_DEALLOC_BEFORE_TAILCALL_V4 : JInst<(outs),
|
def RESTORE_DEALLOC_BEFORE_TAILCALL_V4 : T_Call<"">, PredRel;
|
||||||
(ins calltarget:$dst),
|
|
||||||
"call $dst",
|
|
||||||
[]>;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save registers function call.
|
// Save registers function call.
|
||||||
let isCall = 1, Uses = [R29, R31], isAsmParserOnly = 1 in {
|
let isCall = 1, Uses = [R29, R31], isAsmParserOnly = 1 in {
|
||||||
def SAVE_REGISTERS_CALL_V4 : JInst<(outs),
|
def SAVE_REGISTERS_CALL_V4 : T_Call<"">, PredRel;
|
||||||
(ins calltarget:$dst),
|
|
||||||
"call $dst // Save_calle_saved_registers",
|
|
||||||
[]>;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
Loading…
x
Reference in New Issue
Block a user