This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] add -fprolog-pad=N option to c-family
- From: Szabolcs Nagy <szabolcs dot nagy at arm dot com>
- To: Torsten Duwe <duwe at suse dot de>, Maxim Kuvyrkov <maxim dot kuvyrkov at linaro dot org>
- Cc: <nd at arm dot com>, Li Bin <huawei dot libin at huawei dot com>, Jiri Kosina <jkosina at suse dot cz>, <gcc-patches at gcc dot gnu dot org>, Marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, Takahiro Akashi <takahiro dot akashi at linaro dot org>
- Date: Wed, 27 Apr 2016 17:26:05 +0100
- Subject: Re: [PATCH] add -fprolog-pad=N option to c-family
- Authentication-results: sourceware.org; auth=none
- Nodisclaimer: True
- References: <20160427152217 dot GA2637 at suse dot de>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:23
On 27/04/16 16:22, Torsten Duwe wrote:
> Hi Maxim,
>
> thanks for starting the work on this; I have added the missing
> command line option. It builds now and the resulting compiler generates
> a linux kernel with the desired properties, so work can continue there.
>
> Torsten
i guess the flag should be documented in invoke.texi
it's not clear what N means in -fprolog-pad=N, how
location recording is enabled and how it interacts
with -fipa-ra. (-pg disables -fipa-ra, but -fprolog-pad
works without -pg.)
with -mfentry, by default the user only has to
implement the fentry call (linux wants nops there, but
e.g. glibc could use -pg -mfentry for profiling on
aarch64 and the target specific details are easier to
document for an -m option than for something general).
the nop-padding is more general, but the size and
layout of nops and the call abi will be target
specific and the user will most likely need to modify
the binary (to get the right sequence) which needs
additional tooling. i don't know who might use it
other than linux (which already has tools to deal with
-mfentry).
i'm not against nop-padding, but i think more evidence
is needed that the generalization is a good idea and
users can deal with the resulting issues.