This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [SPARC] Fix PR target/59316
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 05 Dec 2013 21:57:20 +0100
- Subject: Re: [SPARC] Fix PR target/59316
- Authentication-results: sourceware.org; auth=none
- References: <5391528 dot xJ694iqFr8 at polaris> <Pine dot LNX dot 4 dot 64 dot 1312051717060 dot 16480 at digraph dot polyomino dot org dot uk>
> Note that you could probably just reload the tmp1_var value rather than
> needing to store the fsr value again to clear exceptions from it, unless
> there's an architecture-specific reason the tmp1_var value might no longer
> be the right value to load to clear exceptions. (This is what x86 does
> for SSE state, loading the same value for exceptions-cleared SSE state
> every iteration of the loop.)
That depends upon the context I'd think: the FSR contains the FP condition
code so reloading tmp1_var will overwrite it with the old value (and SPARC is
not a cc0 target). Would that be safe?
In the meantime, it occurred to me that I very likely don't need to mask the
value of tmp3_var before calling __atomic_feraiseexcept on it. glibc does it
but this looks unnecessary even there.
--
Eric Botcazou