diff --git a/llvm/lib/Target/X86/X86FrameLowering.cpp b/llvm/lib/Target/X86/X86FrameLowering.cpp --- a/llvm/lib/Target/X86/X86FrameLowering.cpp +++ b/llvm/lib/Target/X86/X86FrameLowering.cpp @@ -1293,11 +1293,11 @@ BuildMI(headMBB, DL, TII.get(Uses64BitFramePtr ? X86::CMP64rr : X86::CMP32rr)) - .addReg(FinalStackProbed) .addReg(StackPtr) + .addReg(FinalStackProbed) .setMIFlag(MachineInstr::FrameSetup); - // jump + // jump to the footer if StackPtr < FinalStackProbed BuildMI(headMBB, DL, TII.get(X86::JCC_1)) .addMBB(footMBB) .addImm(X86::COND_B) @@ -1329,7 +1329,7 @@ .addReg(StackPtr) .setMIFlag(MachineInstr::FrameSetup); - // jump + // jump back while FinalStackProbed < StackPtr BuildMI(bodyMBB, DL, TII.get(X86::JCC_1)) .addMBB(bodyMBB) .addImm(X86::COND_B) diff --git a/llvm/test/CodeGen/X86/stack-clash-large-large-align.ll b/llvm/test/CodeGen/X86/stack-clash-large-large-align.ll --- a/llvm/test/CodeGen/X86/stack-clash-large-large-align.ll +++ b/llvm/test/CodeGen/X86/stack-clash-large-large-align.ll @@ -44,7 +44,7 @@ ; CHECK-NEXT: je .LBB1_4 ; CHECK-NEXT: # %bb.1: ; CHECK-NEXT: subq $4096, %rsp # imm = 0x1000 -; CHECK-NEXT: cmpq %rsp, %r11 +; CHECK-NEXT: cmpq %r11, %rsp ; CHECK-NEXT: jb .LBB1_3 ; CHECK-NEXT: .LBB1_2: # =>This Inner Loop Header: Depth=1 ; CHECK-NEXT: movq $0, (%rsp) diff --git a/llvm/test/CodeGen/X86/stack-clash-small-large-align.ll b/llvm/test/CodeGen/X86/stack-clash-small-large-align.ll --- a/llvm/test/CodeGen/X86/stack-clash-small-large-align.ll +++ b/llvm/test/CodeGen/X86/stack-clash-small-large-align.ll @@ -40,7 +40,7 @@ ; CHECK-NEXT: je .LBB1_4 ; CHECK-NEXT: # %bb.1: ; CHECK-NEXT: subq $4096, %rsp # imm = 0x1000 -; CHECK-NEXT: cmpq %rsp, %r11 +; CHECK-NEXT: cmpq %r11, %rsp ; CHECK-NEXT: jb .LBB1_3 ; CHECK-NEXT: .LBB1_2: # =>This Inner Loop Header: Depth=1 ; CHECK-NEXT: movq $0, (%rsp)