This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC][ARM] TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook
- From: Kugan <kugan dot vivekanandarajah at linaro dot org>
- To: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Cc: Ramana Radhakrishnan <ramrad01 at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>
- Date: Mon, 26 May 2014 18:01:08 +1000
- Subject: Re: [RFC][ARM] TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook
- Authentication-results: sourceware.org; auth=none
- References: <535B89D6 dot 2070309 at linaro dot org> <Pine dot LNX dot 4 dot 64 dot 1405020012530 dot 16441 at digraph dot polyomino dot org dot uk> <53635FBA dot 7060505 at linaro dot org> <53700C12 dot 4000102 at linaro dot org>
Ping^2 ?
Thanks,
Kugan
On 12/05/14 09:47, Kugan wrote:
> Ping ?
>
> Thanks,
> Kugan
>
> On 02/05/14 19:04, Kugan wrote:
>> On 02/05/14 10:15, Joseph S. Myers wrote:
>>> It doesn't seem a good idea to me for a host-side GCC file to use the FE_*
>>> names for the target's FE_* values; you'd run into problems if that file
>>> ever ends up including the host's <fenv.h>, directly or indirectly, on any
>>> host. The same comment applies to the AArch64 patch as well.
>>>
>>> Instead I suggest names such as ARM_FE_* that won't conflict with the
>>> host's system headers.
>>>
>> Thanks for spotting it. Here is the updated patch that changes it to
>> ARM_FE_*.
>>
>> Thanks,
>> Kugan
>>
>>
>> gcc/
>>
>> +2014-05-02 Kugan Vivekanandarajah <kuganv@linaro.org>
>> +
>> + * config/arm/arm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.
>> + (arm_builtins) : Add ARM_BUILTIN_GET_FPSCR and ARM_BUILTIN_SET_FPSCR.
>> + (bdesc_2arg) : Add description for builtins __builtins_arm_set_fpscr
>> + and __builtins_arm_get_fpscr.
>> + (arm_init_builtins) : Initialize builtins __builtins_arm_set_fpscr and
>> + __builtins_arm_get_fpscr.
>> + (arm_expand_builtin) : Expand builtins __builtins_arm_set_fpscr and
>> + __builtins_arm_ldfpscr.
>> + (arm_atomic_assign_expand_fenv): New function.
>> + * config/arm/vfp.md (set_fpscr): New pattern.
>> + (get_fpscr) : Likewise.
>> + * config/arm/unspecs.md (unspecv): Add VUNSPEC_GET_FPSCR and
>> + VUNSPEC_SET_FPSCR.
>> + * doc/extend.texi (AARCH64 Built-in Functions) : Document
>> + __builtins_arm_set_fpscr, __builtins_arm_get_fpscr.
>> +
>>
>