summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprScalar.cpp
diff options
context:
space:
mode:
authorShiva Chen <shiva0217@gmail.com>2018-03-20 01:39:17 +0000
committerShiva Chen <shiva0217@gmail.com>2018-03-20 01:39:17 +0000
commitcbd498ac10427778a6133b9dc3a78c3a5e9ec6cd (patch)
treee2b2fcdef9f6681091aa1b6046ef9477f343bebc /clang/lib/CodeGen/CGExprScalar.cpp
parent2330d6cd550203d6ebc262e87b4a736e70ffad74 (diff)
downloadbcm5719-llvm-cbd498ac10427778a6133b9dc3a78c3a5e9ec6cd.tar.gz
bcm5719-llvm-cbd498ac10427778a6133b9dc3a78c3a5e9ec6cd.zip
[RISCV] Preserve stack space for outgoing arguments when the function contain variable size objects
E.g. bar (int x) { char p[x]; push outgoing variables for foo. call foo } We need to generate stack adjustment instructions for outgoing arguments by eliminateCallFramePseudoInstr when the function contains variable size objects to avoid outgoing variables corrupt the variable size object. Default hasReservedCallFrame will return !hasFP(). We don't want to generate extra sp adjustment instructions when hasFP() return true, So We override hasReservedCallFrame as !hasVarSizedObjects(). Differential Revision: https://reviews.llvm.org/D43752 llvm-svn: 327938
Diffstat (limited to 'clang/lib/CodeGen/CGExprScalar.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud