summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorSimon Dardis <simon.dardis@imgtec.com>2016-09-21 09:43:40 +0000
committerSimon Dardis <simon.dardis@imgtec.com>2016-09-21 09:43:40 +0000
commit9a66bbecae7ab496ff2d2d204c8808d1e90f3607 (patch)
treefe16ca399f5cf13c03c725b704dde74e17c0bc16 /llvm/lib/CodeGen
parent7c98baab29f8ade4b0f69d482f9ce0bef4063b65 (diff)
downloadbcm5719-llvm-9a66bbecae7ab496ff2d2d204c8808d1e90f3607.tar.gz
bcm5719-llvm-9a66bbecae7ab496ff2d2d204c8808d1e90f3607.zip
[mips] LLVM PR/30197 - Tail call incorrectly clobbers arguments for mips
The postRA scheduler performs alias analysis to determine if stores and loads can moved past each other. When a function has more arguments than argument registers for the calling convention used, excess arguments are spilled onto the stack. LLVM by default assumes that argument slots are immutable, unless the function contains a tail call. Without the knowledge of that a function contains a tail call site, stores and loads to fixed stack slots may be re-ordered causing the out-going arguments to clobber the incoming arguments before the incoming arguments are supposed to be dead. Reviewers: vkalintiris Differential Review: https://reviews.llvm.org/D24077 llvm-svn: 282063
Diffstat (limited to 'llvm/lib/CodeGen')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud