aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/IRObjectFile.cpp
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2020-12-08 11:54:11 -0800
committerReid Kleckner <rnk@google.com>2020-12-09 11:08:48 -0800
commitdf282215d497e15104ae9e182e083cdfa0bae3c2 (patch)
tree2915ed23a495af31913abb7b7af1f5b30131da93 /llvm/lib/Object/IRObjectFile.cpp
parentd7098ff29c58dd08ede8314818b7de7fd2fea4cc (diff)
downloadllvm-df282215d497e15104ae9e182e083cdfa0bae3c2.zip
llvm-df282215d497e15104ae9e182e083cdfa0bae3c2.tar.gz
llvm-df282215d497e15104ae9e182e083cdfa0bae3c2.tar.bz2
Don't setup inalloca for swiftcc on i686-windows-msvc
Swiftcall does it's own target-independent argument type classification, since it is not designed to be ABI compatible with anything local on the target that isn't LLVM-based. This means it never uses inalloca. However, we have duplicate logic for checking for inalloca parameters that runs before call argument setup. This logic needs to know ahead of time if inalloca will be used later, and we can't move the CGFunctionInfo calculation earlier. This change gets the calling convention from either the FunctionProtoType or ObjCMethodDecl, checks if it is swift, and if so skips the stackbase setup. Depends on D92883. Differential Revision: https://reviews.llvm.org/D92944
Diffstat (limited to 'llvm/lib/Object/IRObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions