When replacing FrameIndex with BasePtr, we must preserve BasePtr for
LEA64_32r since BasePtr is used later for stack adjustment if it is
the same as StackPtr.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
lib/Target/X86/X86RegisterInfo.cpp | ||
---|---|---|
638 | Maybe something like: unsigned MachineBasePtr = BasePtr; if (Opc == X86::LEA64_32r && X86::GR32RegClass.contains(BasePtr)) MachineBasePtr = getX86SubSuperRegister(BasePtr, 64); ? | |
642–643 | As long as you're touching this, can you fix this comment to make sense? | |
test/CodeGen/X86/x32-movtopush64.ll | ||
2 | You shouldn't need the -O2, I think. |
Maybe something like:
?