mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-24 22:24:54 +00:00
CodeGen: Make MachineBasicBlock::back skip to the beginning of the last bundle.
This makes front/back symmetric with begin/end, avoiding some confusion. Added instr_front/instr_back for the old behavior, corresponding to instr_begin/instr_end. Audited all three in-tree users of back(), all of them look like they don't want to look inside bundles. Fixes an assertion (PR19815) when generating debug info on mips, where a delay slot was bundled at the end of a branch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209580 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -219,10 +219,15 @@ public:
|
||||
unsigned size() const { return (unsigned)Insts.size(); }
|
||||
bool empty() const { return Insts.empty(); }
|
||||
|
||||
MachineInstr& front() { return Insts.front(); }
|
||||
MachineInstr& back() { return Insts.back(); }
|
||||
const MachineInstr& front() const { return Insts.front(); }
|
||||
const MachineInstr& back() const { return Insts.back(); }
|
||||
MachineInstr &instr_front() { return Insts.front(); }
|
||||
MachineInstr &instr_back() { return Insts.back(); }
|
||||
const MachineInstr &instr_front() const { return Insts.front(); }
|
||||
const MachineInstr &instr_back() const { return Insts.back(); }
|
||||
|
||||
MachineInstr &front() { return Insts.front(); }
|
||||
MachineInstr &back() { return *--end(); }
|
||||
const MachineInstr &front() const { return Insts.front(); }
|
||||
const MachineInstr &back() const { return *--end(); }
|
||||
|
||||
instr_iterator instr_begin() { return Insts.begin(); }
|
||||
const_instr_iterator instr_begin() const { return Insts.begin(); }
|
||||
|
Reference in New Issue
Block a user