This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC][LIBGCC][2 of 2] 64 bit divide implementation for processor without hw divide instruction
- From: Kugan <kugan dot vivekanandarajah at linaro dot org>
- To: Richard Earnshaw <rearnsha at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "ian at airs dot com" <ian at airs dot com>, "patches at linaro dot org" <patches at linaro dot org>
- Date: Tue, 03 Dec 2013 17:39:51 +1100
- Subject: Re: [RFC][LIBGCC][2 of 2] 64 bit divide implementation for processor without hw divide instruction
- Authentication-results: sourceware.org; auth=none
- References: <52900902 dot 9020602 at linaro dot org> <52900AEC dot 2060301 at linaro dot org> <5294B930 dot 6030608 at arm dot com> <52957548 dot 8060308 at linaro dot org>
ping
Thanks,
Kugan
On 27/11/13 15:30, Kugan wrote:
> On 27/11/13 02:07, Richard Earnshaw wrote:
>> On 23/11/13 01:54, Kugan wrote:
>
> [snip]
>
>>> +2013-11-22 Kugan Vivekanandarajah <kuganv@linaro.org>
>>> +
>>> + * libgcc/config/arm/pbapi-lib.h (HAVE_NO_HW_DIVIDE): Define for
>>
>> It's bpabi-lib.h
>
> Thanks for the review.
>
>>> + __ARM_ARCH_7_A__.
>>> +
>>>
>>>
>>
>> No, this will:
>> 1) Do the wrong thing for Cortex-a7, A12 and A15 (which all have HW
>> divide, and currently define __ARM_ARCH_7_A__).
>> 2) Do the wrong thing for v7-M and v7-R devices, which have Thumb HW
>> division instructions.
>> 3) Do the wrong thing for all pre-v7 devices, which don't have HW division.
>>
>> I think the correct solution is to test !defined(__ARM_ARCH_EXT_IDIV__)
>
> I understand it now and updated the code as attached.
>
> +2013-11-27 Kugan Vivekanandarajah <kuganv@linaro.org>
> +
> + * config/arm/bpapi-lib.h (TARGET_HAS_NO_HW_DIVIDE): Define for
> + architectures that does not have hardware divide instruction.
> + i.e. architectures that does not define __ARM_ARCH_EXT_IDIV__.
> +
>
>
> Is this OK for trunk now?
> Thanks,
> Kugan
>