This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug dynamic-link/15128] dynamic loader may clobber floating-point parameters on AArch64
- From: "aj at suse dot de" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Mon, 25 Feb 2013 08:05:56 +0000
- Subject: [Bug dynamic-link/15128] dynamic loader may clobber floating-point parameters on AArch64
- Auto-submitted: auto-generated
- References: <bug-15128-131@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=15128
Andreas Jaeger <aj at suse dot de> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |aj at suse dot de
--- Comment #10 from Andreas Jaeger <aj at suse dot de> 2013-02-25 08:05:56 UTC ---
(In reply to comment #9)
> Created attachment 6891 [details]
> testcase with ifunc that fails on x86-64
>
> This problem is not limited to AArch64. Attached is a testcase that fails on
> x86-64 (and probably other arches as well). In this case, an IFUNC resolver
> function clobbers xmm0, which is not saved/restored in _dl_runtime_resolve.
Yes, the problem occurs there as well if you use directly floating point
instructions in the IFUNC resolver, e.g. via:
volatile float c = foo_impl(42);
And the question here is what is allowed to be done in the resolver - right now
the implicit requirement is: No Floating point.
Before we go down on AARCH64 with the patch to preserver fp/simd arguments,
let's discuss this on libc-alpha, we should handle this the same on all
architectures.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.