Lines Matching refs:WinEH
25 static uint8_t CountOfUnwindCodes(std::vector<WinEH::Instruction> &Insns) {
63 WinEH::Instruction &inst) {
155 const WinEH::FrameInfo *info) {
166 static void EmitUnwindInfo(MCStreamer &streamer, WinEH::FrameInfo *info) {
200 WinEH::Instruction &frameInst = info->Instructions[info->LastFrameInst];
209 WinEH::Instruction inst = info->Instructions.back();
254 WinEH::FrameInfo *info,
303 ArrayRef<WinEH::Instruction> Insns,
340 static uint32_t ARM64CountOfUnwindCodes(ArrayRef<WinEH::Instruction> Insns) {
446 const WinEH::Instruction &inst) {
651 FindMatchingEpilog(const std::vector<WinEH::Instruction>& EpilogInstrs,
653 const WinEH::FrameInfo *info) {
676 static void simplifyARM64Opcodes(std::vector<WinEH::Instruction> &Instructions,
681 auto VisitInstruction = [&](WinEH::Instruction &Inst) {
733 for (WinEH::Instruction &Inst : Instructions)
740 getARM64OffsetInProlog(const std::vector<WinEH::Instruction> &Prolog,
741 const std::vector<WinEH::Instruction> &Epilog) {
757 return ARM64CountOfUnwindCodes(ArrayRef<WinEH::Instruction>(
761 static int checkARM64PackedEpilog(MCStreamer &streamer, WinEH::FrameInfo *info,
762 WinEH::FrameInfo::Segment *Seg,
769 const std::vector<WinEH::Instruction> &Epilog =
804 static bool tryARM64PackedUnwind(WinEH::FrameInfo *info, uint32_t FuncLength,
845 for (const WinEH::Instruction &Inst : info->Instructions) {
1081 static void ARM64ProcessEpilogs(WinEH::FrameInfo *info,
1082 WinEH::FrameInfo::Segment *Seg,
1126 WinEH::FrameInfo *info,
1186 auto Seg = WinEH::FrameInfo::Segment(
1199 WinEH::FrameInfo::Segment(SegOffset, RawFuncLength - SegOffset,
1207 WinEH::FrameInfo *info,
1208 WinEH::FrameInfo::Segment &Seg,
1335 for (const WinEH::Instruction &inst : EpilogInstrs)
1353 static void ARM64EmitUnwindInfo(MCStreamer &streamer, WinEH::FrameInfo *info,
1431 static uint32_t ARMCountOfUnwindCodes(ArrayRef<WinEH::Instruction> Insns) {
1502 static uint32_t ARMCountOfInstructionBytes(ArrayRef<WinEH::Instruction> Insns,
1562 ArrayRef<WinEH::Instruction> Insns,
1586 static bool isARMTerminator(const WinEH::Instruction &inst) {
1600 const WinEH::Instruction &inst) {
1735 static int getARMOffsetInProlog(const std::vector<WinEH::Instruction> &Prolog,
1736 const std::vector<WinEH::Instruction> &Epilog,
1767 return ARMCountOfUnwindCodes(ArrayRef<WinEH::Instruction>(
1771 static int checkARMPackedEpilog(MCStreamer &streamer, WinEH::FrameInfo *info,
1777 const WinEH::FrameInfo::Epilog &EpilogInfo = info->EpilogMap.begin()->second;
1782 const std::vector<WinEH::Instruction> &Epilog = EpilogInfo.Instructions;
1868 static bool tryARMPackedUnwind(MCStreamer &streamer, WinEH::FrameInfo *info,
1881 for (const WinEH::Instruction &Inst : info->Instructions) {
2010 const WinEH::FrameInfo::Epilog &EpilogInfo =
2014 const std::vector<WinEH::Instruction> &Epilog = EpilogInfo.Instructions;
2033 for (const WinEH::Instruction &Inst : Epilog) {
2270 static void ARMEmitUnwindInfo(MCStreamer &streamer, WinEH::FrameInfo *info,
2484 WinEH::Instruction inst = info->Instructions.back();
2492 for (const WinEH::Instruction &inst : EpilogInstrs)
2509 const WinEH::FrameInfo *info) {
2527 const WinEH::FrameInfo *info) {
2544 WinEH::FrameInfo *Info = CFI.get();
2554 WinEH::FrameInfo *Info = CFI.get();
2567 WinEH::FrameInfo *info,
2589 WinEH::FrameInfo *Info = CFI.get();
2599 WinEH::FrameInfo *Info = CFI.get();
2612 WinEH::FrameInfo *info,