Lines Matching refs:Asm
39 isAArch64 = Asm->TM.getTargetTriple().isAArch64(); in WinException()
40 isThumb = Asm->TM.getTargetTriple().isThumb(); in WinException()
48 auto &OS = *Asm->OutStreamer; in endModule()
52 OS.emitCOFFSafeSEH(Asm->getSymbol(&F)); in endModule()
56 OS.switchSection(Asm->OutContext.getObjectFileInfo()->getGEHContSection()); in endModule()
72 shouldEmitMoves = Asm->needsSEHMoves() && MF->hasWinCFI(); in beginFunction()
74 const TargetLoweringObjectFile &TLOF = Asm->getObjFileLowering(); in beginFunction()
98 if (!Asm->MAI->usesWindowsCFI()) { in beginFunction()
113 beginFunclet(MF->front(), Asm->CurrentFnSym); in beginFunction()
119 Asm->OutStreamer->emitWinCFIFuncletOrFuncEnd(); in markFunctionEnd()
140 Asm->OutStreamer->pushSection(); in endFunction()
143 MCSection *XData = Asm->OutStreamer->getAssociatedXDataSection( in endFunction()
144 Asm->OutStreamer->getCurrentSectionOnly()); in endFunction()
145 Asm->OutStreamer->switchSection(XData); in endFunction()
160 Asm->OutStreamer->popSection(); in endFunction()
171 static MCSymbol *getMCSymbolForMBB(AsmPrinter *Asm, in getMCSymbolForMBB() argument
194 const Function &F = Asm->MF->getFunction(); in beginFunclet()
197 Sym = getMCSymbolForMBB(Asm, &MBB); in beginFunclet()
200 Asm->OutStreamer->beginCOFFSymbolDef(Sym); in beginFunclet()
201 Asm->OutStreamer->emitCOFFSymbolStorageClass(COFF::IMAGE_SYM_CLASS_STATIC); in beginFunclet()
202 Asm->OutStreamer->emitCOFFSymbolType(COFF::IMAGE_SYM_DTYPE_FUNCTION in beginFunclet()
204 Asm->OutStreamer->endCOFFSymbolDef(); in beginFunclet()
208 Asm->emitAlignment(std::max(Asm->MF->getAlignment(), MBB.getAlignment()), in beginFunclet()
212 Asm->OutStreamer->emitLabel(Sym); in beginFunclet()
217 CurrentFuncletTextSection = Asm->OutStreamer->getCurrentSectionOnly(); in beginFunclet()
218 Asm->OutStreamer->emitWinCFIStartProc(Sym); in beginFunclet()
222 const TargetLoweringObjectFile &TLOF = Asm->getObjFileLowering(); in beginFunclet()
229 TLOF.getCFIPersonalitySymbol(PerFn, Asm->TM, MMI); in beginFunclet()
237 Asm->OutStreamer->emitWinEHHandler(PersHandlerSym, true, true); in beginFunclet()
244 Asm->OutStreamer->switchSection(CurrentFuncletTextSection); in endFunclet()
245 Asm->OutStreamer->emitWinCFIFuncletOrFuncEnd(); in endFunclet()
255 const MachineFunction *MF = Asm->MF; in endFuncletImpl()
265 Asm->OutStreamer->emitWinEHHandlerData(); in endFuncletImpl()
270 MCSymbol *FuncInfoXData = Asm->OutContext.getOrCreateSymbol( in endFuncletImpl()
272 Asm->OutStreamer->emitValue(create32bitRef(FuncInfoXData), 4); in endFuncletImpl()
276 Asm->OutStreamer->emitWinEHHandlerData(); in endFuncletImpl()
283 Asm->OutStreamer->emitWinEHHandlerData(); in endFuncletImpl()
296 Asm->OutStreamer->switchSection(CurrentFuncletTextSection); in endFuncletImpl()
297 Asm->OutStreamer->emitWinCFIEndProc(); in endFuncletImpl()
306 return MCConstantExpr::create(0, Asm->OutContext); in create32bitRef()
310 Asm->OutContext); in create32bitRef()
315 return MCConstantExpr::create(0, Asm->OutContext); in create32bitRef()
316 return create32bitRef(Asm->getSymbol(GV)); in create32bitRef()
321 Asm->OutContext); in getLabel()
326 MCConstantExpr::create(1, Asm->OutContext), in getLabelPlusOne()
327 Asm->OutContext); in getLabelPlusOne()
333 MCSymbolRefExpr::create(OffsetOf, Asm->OutContext), in getOffset()
334 MCSymbolRefExpr::create(OffsetFrom, Asm->OutContext), Asm->OutContext); in getOffset()
340 MCConstantExpr::create(1, Asm->OutContext), in getOffsetPlusOne()
341 Asm->OutContext); in getOffsetPlusOne()
346 const TargetFrameLowering &TFI = *Asm->MF->getSubtarget().getFrameLowering(); in getFrameIndexOffset()
348 if (Asm->MAI->usesWindowsCFI()) { in getFrameIndexOffset()
350 TFI.getFrameIndexReferencePreferSP(*Asm->MF, FrameIndex, UnusedReg, in getFrameIndexOffset()
353 Asm->MF->getSubtarget() in getFrameIndexOffset()
362 StackOffset Offset = TFI.getFrameIndexReference(*Asm->MF, FrameIndex, UnusedReg); in getFrameIndexOffset()
560 auto &OS = *Asm->OutStreamer; in emitCSpecificHandlerTable()
561 MCContext &Ctx = Asm->OutContext; in emitCSpecificHandlerTable()
579 Asm->OutStreamer->emitAssignment(ParentFrameOffset, MCOffset); in emitCSpecificHandlerTable()
628 auto &OS = *Asm->OutStreamer; in emitSEHActionsForRange()
629 MCContext &Ctx = Asm->OutContext; in emitSEHActionsForRange()
643 FilterOrFinally = create32bitRef(getMCSymbolForMBB(Asm, Handler)); in emitSEHActionsForRange()
670 auto &OS = *Asm->OutStreamer; in emitCXXFrameHandler3Table()
681 Asm->OutContext.getOrCreateSymbol(Twine("$cppxdata$", FuncLinkageName)); in emitCXXFrameHandler3Table()
684 FuncInfoXData = Asm->OutContext.getOrCreateLSDASymbol(FuncLinkageName); in emitCXXFrameHandler3Table()
692 if (Asm->MAI->usesWindowsCFI() && in emitCXXFrameHandler3Table()
701 UnwindMapXData = Asm->OutContext.getOrCreateSymbol( in emitCXXFrameHandler3Table()
705 Asm->OutContext.getOrCreateSymbol(Twine("$tryMap$", FuncLinkageName)); in emitCXXFrameHandler3Table()
708 Asm->OutContext.getOrCreateSymbol(Twine("$ip2state$", FuncLinkageName)); in emitCXXFrameHandler3Table()
755 if (Asm->MAI->usesWindowsCFI() && in emitCXXFrameHandler3Table()
779 Asm, dyn_cast_if_present<MachineBasicBlock *>(UME.Cleanup)); in emitCXXFrameHandler3Table()
804 Asm->OutContext.getOrCreateSymbol(Twine("$handlerMap$") in emitCXXFrameHandler3Table()
861 FrameAllocOffsetRef = MCConstantExpr::create(Offset, Asm->OutContext); in emitCXXFrameHandler3Table()
863 FrameAllocOffsetRef = MCConstantExpr::create(0, Asm->OutContext); in emitCXXFrameHandler3Table()
867 Asm, dyn_cast_if_present<MachineBasicBlock *>(HT.Handler)); in emitCXXFrameHandler3Table()
929 StartLabel = Asm->getFunctionBegin(); in computeIP2StateTable()
935 StartLabel = getMCSymbolForMBB(Asm, &*FuncletStart); in computeIP2StateTable()
979 const TargetFrameLowering *TFI = Asm->MF->getSubtarget().getFrameLowering(); in emitEHRegistrationOffsetLabel()
980 Offset = TFI->getNonLocalFrameIndexReference(*Asm->MF, FI).getFixed(); in emitEHRegistrationOffsetLabel()
983 MCContext &Ctx = Asm->OutContext; in emitEHRegistrationOffsetLabel()
986 Asm->OutStreamer->emitAssignment(ParentFrameOffset, in emitEHRegistrationOffsetLabel()
994 MCStreamer &OS = *Asm->OutStreamer; in emitExceptHandlerTable()
1008 MCSymbol *LSDALabel = Asm->OutContext.getOrCreateLSDASymbol(FLinkageName); in emitExceptHandlerTable()
1074 UME.IsFinally ? getMCSymbolForMBB(Asm, Handler) : Handler->getSymbol(); in emitExceptHandlerTable()
1122 MCStreamer &OS = *Asm->OutStreamer; in emitCLRExceptionTable()
1124 MCSymbol *FuncBeginSym = Asm->getFunctionBegin(); in emitCLRExceptionTable()
1125 MCSymbol *FuncEndSym = Asm->getFunctionEnd(); in emitCLRExceptionTable()
1190 EndSymbol = getMCSymbolForMBB(Asm, &*FuncletEnd); in emitCLRExceptionTable()
1305 MCSymbol *BeginSym = getMCSymbolForMBB(Asm, HandlerBlock); in emitCLRExceptionTable()