[PATCH] D63396: [WinEH] Allocate space in funclets stack to save XMM CSRs
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 28 16:20:13 PDT 2019
craig.topper added inline comments.
================
Comment at: llvm/lib/Target/X86/X86FrameLowering.cpp:1418
+ (NumBytes & ~(Align - 1));
+ addRegOffset(BuildMI(MBB, MBBI, DL, TII.get(X86::MOVAPSmr)),
+ StackPtr, true, Offset)
----------------
Should we use a VEX instruction here under AVX?
================
Comment at: llvm/lib/Target/X86/X86FrameLowering.cpp:1424
+ }
+ else {
+ assert(!NeedsWinFPO && "SEH_SaveXMM incompatible with FPO data");
----------------
Put else on the line above
================
Comment at: llvm/lib/Target/X86/X86FrameLowering.cpp:2245
+ if (MBB.isEHFuncletEntry() && STI.is64Bit()) {
+ if (X86::FR64RegClass.contains(Reg)) {
+ int Offset = (CSI[i].getFrameIdx() - XMMFrameSlotOrigin - 1) * 16;
----------------
Any reason we're using FR64 here instead of VR128?
================
Comment at: llvm/lib/Target/X86/X86FrameLowering.cpp:2247
+ int Offset = (CSI[i].getFrameIdx() - XMMFrameSlotOrigin - 1) * 16;
+ addRegOffset(BuildMI(MBB, MI, DL, TII.get(X86::MOVAPSrm), Reg),
+ X86::RSP, true, SEHFrameOffset + Offset);
----------------
VEX instruction under AVX?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63396/new/
https://reviews.llvm.org/D63396
More information about the llvm-commits
mailing list