[all-commits] [llvm/llvm-project] 4dba59: [ARM] prologue instructions emitted for naked func...
simonwallis2 via All-commits
all-commits at lists.llvm.org
Tue Jun 9 03:33:39 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 4dba59689d008df7be37733de4bb537b2911d3ad
https://github.com/llvm/llvm-project/commit/4dba59689d008df7be37733de4bb537b2911d3ad
Author: Simon Wallis <simon.wallis2 at arm.com>
Date: 2020-06-09 (Tue, 09 Jun 2020)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
A llvm/test/CodeGen/ARM/naked-no-prolog.ll
Log Message:
-----------
[ARM] prologue instructions emitted for naked function with >64 byte argument
Summary:
The naked function attribute is meant to suppress all function
prologue/epilogue instructions.
On ARM, some are still emitted if an argument greater than 64 bytes in size
(the threshold for using the byval attribute in IR) is passed partially
in registers.
Perform the check for Attribute::Naked and early exit in
SelectionDAGISel::LowerArguments().
Checking in ARMFrameLowering::determineCalleeSaves() is too late.
A test case is included.
Reviewers: llvm-commits, olista01, danielkiss
Reviewed By: danielkiss
Subscribers: kristof.beyls, hiraditya, danielkiss
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D80715
Change-Id: Icedecf2a4ad31bc3c35ab0df7489a9d346e1f7cc
More information about the All-commits
mailing list