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
60 " in/out CFI information errors.");
108 /// checking the block for CFI instructions. Block's incoming CFA info remains
116 /// information of the previous block. If it doesn't, insert CFI instruction
121 /// if needed. The negated value is needed when creating CFI instructions that
139 "Check CFA info and insert CFI instructions if needed", false,
193 const MCCFIInstruction &CFI = Instrs[CFIIndex];
194 switch (CFI.getOperation()) {
196 SetRegister = CFI.getRegister();
199 SetOffset = CFI.getOffset();
202 SetOffset += CFI.getOffset();
205 SetRegister = CFI.getRegister();
206 SetOffset = CFI.getOffset();
209 CSROffset = CFI.getOffset();
212 CSRReg = CFI.getRegister2();
215 CSROffset = CFI.getOffset() - SetOffset;
218 CSRRestored.set(CFI.getRegister());
244 // Other CFI directives do not affect CFA value.
255 auto It = CSRLocMap.find(CFI.getRegister());
258 {CFI.getRegister(), CSRSavedLocation(CSRReg, CSROffset)});
262 CSRSaved.set(CFI.getRegister());