mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Check-pointing the new SjLj EH lowering.
This code will replace the version in ARMAsmPrinter.cpp. It creates a new machine basic block, which is the dispatch for the return from a longjmp call. It then shoves the address of that machine basic block into the correct place in the function context so that the EH runtime will jump to it directly instead of having to go through a compare-and-jump-to-the-dispatch bit. This should be more efficient in the common case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141031 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -512,6 +512,9 @@ namespace llvm {
|
||||
bool signExtend,
|
||||
ARMCC::CondCodes Cond) const;
|
||||
|
||||
MachineBasicBlock *EmitSjLjDispatchBlock(MachineInstr *MI,
|
||||
MachineBasicBlock *MBB) const;
|
||||
|
||||
bool RemapAddSubWithFlags(MachineInstr *MI, MachineBasicBlock *BB) const;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user