Lines Matching defs:CFI
1 //===------ CFIInstrInserter.cpp - Insert additional CFI instructions -----===//
10 /// blocks. CFA information is information about offset and register set by CFI
14 /// set and inserts additional CFI instruction at their beginnings if they
15 /// don't. CFI instructions are inserted if basic blocks have incorrect offset
61 " in/out CFI information errors.");
109 /// checking the block for CFI instructions. Block's incoming CFA info remains
117 /// information of the previous block. If it doesn't, insert CFI instruction
122 /// if needed. The negated value is needed when creating CFI instructions that
140 "Check CFA info and insert CFI instructions if needed", false,
198 const MCCFIInstruction &CFI = Instrs[CFIIndex];
199 switch (CFI.getOperation()) {
201 SetRegister = CFI.getRegister();
204 SetOffset = CFI.getOffset();
207 SetOffset += CFI.getOffset();
210 SetRegister = CFI.getRegister();
211 SetOffset = CFI.getOffset();
214 CSROffset = CFI.getOffset();
217 CSRReg = CFI.getRegister2();
220 CSROffset = CFI.getOffset() - SetOffset;
223 CSRRestored.set(CFI.getRegister());
257 // Other CFI directives do not affect CFA value.
270 auto It = CSRLocMap.find(CFI.getRegister());
273 {CFI.getRegister(), CSRSavedLocation(CSRReg, CSROffset)});
277 CSRSaved.set(CFI.getRegister());