[PATCH] D60909: [X86] Fix stack probing on x32 (PR41477)

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 19 12:08:58 PDT 2019


efriedma added inline comments.


================
Comment at: llvm/lib/Target/X86/X86WinAllocaExpander.cpp:239
       // Sub.
       BuildMI(*MBB, I, DL, TII->get(getSubOpcode(Is64Bit, Amount)), StackPtr)
           .addReg(StackPtr)
----------------
Are you sure this subtraction is using the right opcode?


================
Comment at: llvm/lib/Target/X86/X86WinAllocaExpander.cpp:260
       BuildMI(*MBB, I, DL, TII->get(Is64Bit ? X86::SUB64rr : X86::SUB32rr),
               StackPtr)
           .addReg(StackPtr)
----------------
Also the subtraction here.


================
Comment at: llvm/test/CodeGen/X86/pr41477.ll:17
+; CHECK-NEXT:    callq __rust_probestack
+; CHECK-NEXT:    subq %rax, %rsp
+start:
----------------
subq is the wrong opcode; should be using subl.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60909/new/

https://reviews.llvm.org/D60909





More information about the llvm-commits mailing list