[X86] Put no-op ADJCALLSTACK markers around all dynamic lowerings
authorReid Kleckner <rnk@google.com>
Thu, 3 Dec 2015 20:46:59 +0000 (20:46 +0000)
committerReid Kleckner <rnk@google.com>
Thu, 3 Dec 2015 20:46:59 +0000 (20:46 +0000)
commit3a8af93eb7ae93e59adec0ae6e30352816ea200d
tree240bbe999907f43800042ebfa085a544e1ff7574
parent208ed9b5fb3eb00c3cc52e647df6cfce49168449
[X86] Put no-op ADJCALLSTACK markers around all dynamic lowerings

Summary:
These ADJCALLSTACK markers don't generate code, but they keep dynamic
alloca code that calls chkstk out of the prologue.

This slightly pessimizes inalloca calls by preventing some register copy
coalescing, but I can live with that.

Reviewers: qcolombet

Subscribers: hans, llvm-commits

Differential Revision: http://reviews.llvm.org/D15200

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254645 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/inalloca-stdcall.ll
test/CodeGen/X86/inalloca.ll
test/CodeGen/X86/shrink-wrap-chkstk.ll [new file with mode: 0644]