This is the same as http://reviews.llvm.org/D15549, with added logic for avoiding clobbering of the red zone (PR26023).
Please take a look!
Paths
| Differential D18246
X86: Use push-pop for materializing 8-bit immediates for minsize (take 2) ClosedPublic Authored by hans on Mar 17 2016, 9:43 AM.
Details Summary This is the same as http://reviews.llvm.org/D15549, with added logic for avoiding clobbering of the red zone (PR26023). Please take a look!
Diff Detail
Event Timeline
Comment Actions FWIW, here is a link to the change set for the original commit of the push/pop optimization: http://reviews.llvm.org/D15549. I just diffed that patch against this new one for the purpose of easier review.
Comment Actions
Oops, it seems like I linked to the wrong one in the description of this patch.
hans updated this object. hans edited edge metadata. Comment ActionsAccurately check whether the red zone is used or not. Comment Actions Please fix the >80 char line. Otherwise, LGTM.
Closed by commit rL264375: X86: Use push-pop for materializing 8-bit immediates for minsize (take 2) (authored by hans). · Explain WhyMar 24 2016, 6:16 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 51624 llvm/trunk/lib/Target/X86/X86FrameLowering.cpp
llvm/trunk/lib/Target/X86/X86ISelDAGToDAG.cpp
llvm/trunk/lib/Target/X86/X86InstrCompiler.td
llvm/trunk/lib/Target/X86/X86InstrInfo.h
llvm/trunk/lib/Target/X86/X86InstrInfo.cpp
llvm/trunk/lib/Target/X86/X86InstrInfo.td
llvm/trunk/lib/Target/X86/X86MachineFunctionInfo.h
llvm/trunk/test/CodeGen/X86/materialize-one.ll
llvm/trunk/test/CodeGen/X86/materialize.ll
llvm/trunk/test/CodeGen/X86/powi.ll
|