summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallUserDefinedFunction.py
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2018-01-19 02:45:38 +0000
committerMatthias Braun <matze@braunis.de>2018-01-19 02:45:38 +0000
commitdc4b3e87f466982fe7f8a5a9a5b154c7f2b0a4a6 (patch)
treec15a18b3c58f79fac5ea3693721be56aa1aa3879 /lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallUserDefinedFunction.py
parent34230844edaa2b64a6089b222c8de6183811f8bd (diff)
downloadbcm5719-llvm-dc4b3e87f466982fe7f8a5a9a5b154c7f2b0a4a6.tar.gz
bcm5719-llvm-dc4b3e87f466982fe7f8a5a9a5b154c7f2b0a4a6.zip
AArch64: Omit callframe setup/destroy when not necessary
Do not create CALLSEQ_START/CALLSEQ_END when there is no callframe to setup and the callframe size is 0. - Fixes an invalid callframe nesting for byval arguments, which would look like this before this patch (as in `big-byval.ll`): ... ADJCALLSTACKDOWN 32768, 0, ... # Setup for extfunc ... ADJCALLSTACKDOWN 0, 0, ... # setup for memcpy ... BL &memcpy ... ADJCALLSTACKUP 0, 0, ... # destroy for memcpy ... BL &extfunc ADJCALLSTACKUP 32768, 0, ... # destroy for extfunc - Saves us two instructions in the common case of zero-sized stackframes. - Remove an unnecessary scheduling barrier (hence the small unittest changes). Differential Revision: https://reviews.llvm.org/D42006 llvm-svn: 322917
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallUserDefinedFunction.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud