[llvm] 43e948c - [X86] Change how the alignment for the stack object is created in LowerFLT_ROUNDS_.
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 17 11:29:19 PST 2020
Author: Craig Topper
Date: 2020-02-17T11:27:34-08:00
New Revision: 43e948c4b77f1da88511bac38cfcf4752bc19d37
URL: https://github.com/llvm/llvm-project/commit/43e948c4b77f1da88511bac38cfcf4752bc19d37
DIFF: https://github.com/llvm/llvm-project/commit/43e948c4b77f1da88511bac38cfcf4752bc19d37.diff
LOG: [X86] Change how the alignment for the stack object is created in LowerFLT_ROUNDS_.
We don't need FrameInfo's concept of the stack alignment. We just
need to tell it the desired alignment. Which in this case is 2.
Added:
Modified:
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/flt-rounds.ll
Removed:
################################################################################
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 76bf65156431..96d41ed0e316 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -25736,14 +25736,12 @@ SDValue X86TargetLowering::LowerFLT_ROUNDS_(SDValue Op,
*/
MachineFunction &MF = DAG.getMachineFunction();
- const TargetFrameLowering &TFI = *Subtarget.getFrameLowering();
- const Align StackAlignment(TFI.getStackAlignment());
MVT VT = Op.getSimpleValueType();
SDLoc DL(Op);
// Save FP Control Word to stack slot
int SSFI =
- MF.getFrameInfo().CreateStackObject(2, StackAlignment.value(), false);
+ MF.getFrameInfo().CreateStackObject(2, 2, false);
SDValue StackSlot =
DAG.getFrameIndex(SSFI, getPointerTy(DAG.getDataLayout()));
diff --git a/llvm/test/CodeGen/X86/flt-rounds.ll b/llvm/test/CodeGen/X86/flt-rounds.ll
index b5e77c4e5866..eb640f5e8c69 100644
--- a/llvm/test/CodeGen/X86/flt-rounds.ll
+++ b/llvm/test/CodeGen/X86/flt-rounds.ll
@@ -8,7 +8,7 @@ declare i32 @llvm.flt.rounds()
define i32 @test_flt_rounds() nounwind {
; X86-LABEL: test_flt_rounds:
; X86: # %bb.0:
-; X86-NEXT: subl $12, %esp
+; X86-NEXT: subl $2, %esp
; X86-NEXT: fnstcw (%esp)
; X86-NEXT: movzwl (%esp), %ecx
; X86-NEXT: shrl $9, %ecx
@@ -17,7 +17,7 @@ define i32 @test_flt_rounds() nounwind {
; X86-NEXT: # kill: def $cl killed $cl killed $ecx
; X86-NEXT: shrl %cl, %eax
; X86-NEXT: andl $3, %eax
-; X86-NEXT: addl $12, %esp
+; X86-NEXT: addl $2, %esp
; X86-NEXT: retl
;
; X64-LABEL: test_flt_rounds:
More information about the llvm-commits
mailing list