* [patch, ARM] require 64-bit hw-int for all arm targets
@ 2013-07-30 16:16 Richard Earnshaw
2013-08-07 0:26 ` Joseph S. Myers
0 siblings, 1 reply; 3+ messages in thread
From: Richard Earnshaw @ 2013-07-30 16:16 UTC (permalink / raw)
To: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 452 bytes --]
Most arm target configs now require a 64-bit HW-int. Unfortunately a
few of the older, less commonly used config targets do not. The code in
arm.c now pretty much requires that a 64-bit HW-int is used, especially
for vectorization to work.
This patch makes 64-bit HW-int the default for all arm configs and
cleans up the configure script accordingly.
* config.gcc (arm): Require 64-bit host-wide-int for all ARM
target configs.
R.
[-- Attachment #2: config.patch --]
[-- Type: text/plain, Size: 1722 bytes --]
--- gcc/config.gcc (revision 201327)
+++ gcc/config.gcc (local)
@@ -330,6 +330,7 @@ arm*-*-*)
target_type_format_char='%'
c_target_objs="arm-c.o"
cxx_target_objs="arm-c.o"
+ need_64bit_hwint=yes
extra_options="${extra_options} arm/arm-tables.opt"
;;
avr-*-*)
@@ -943,10 +944,6 @@ arm*-*-linux-*) # ARM GNU/Linux with E
tmake_file="$tmake_file arm/t-linux-androideabi"
;;
esac
- # The BPABI long long divmod functions return a 128-bit value in
- # registers r0-r3. Correctly modeling that requires the use of
- # TImode.
- need_64bit_hwint=yes
# The EABI requires the use of __cxa_atexit.
default_use_cxa_atexit=yes
with_tls=${with_tls:-gnu}
@@ -955,10 +952,6 @@ arm*-*-uclinux*eabi*) # ARM ucLinux
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h glibc-stdint.h"
tmake_file="arm/t-arm arm/t-arm-elf arm/t-bpabi"
tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h arm/aout.h vxworks-dummy.h arm/arm.h"
- # The BPABI long long divmod functions return a 128-bit value in
- # registers r0-r3. Correctly modeling that requires the use of
- # TImode.
- need_64bit_hwint=yes
# The EABI requires the use of __cxa_atexit.
default_use_cxa_atexit=yes
;;
@@ -967,10 +960,6 @@ arm*-*-eabi* | arm*-*-symbianelf* | arm*
arm*eb-*-eabi*)
tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1"
esac
- # The BPABI long long divmod functions return a 128-bit value in
- # registers r0-r3. Correctly modeling that requires the use of
- # TImode.
- need_64bit_hwint=yes
default_use_cxa_atexit=yes
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h"
tmake_file="arm/t-arm arm/t-arm-elf"
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [patch, ARM] require 64-bit hw-int for all arm targets
2013-07-30 16:16 [patch, ARM] require 64-bit hw-int for all arm targets Richard Earnshaw
@ 2013-08-07 0:26 ` Joseph S. Myers
2013-08-07 13:52 ` Richard Earnshaw
0 siblings, 1 reply; 3+ messages in thread
From: Joseph S. Myers @ 2013-08-07 0:26 UTC (permalink / raw)
To: Richard Earnshaw; +Cc: gcc-patches
On Tue, 30 Jul 2013, Richard Earnshaw wrote:
> Most arm target configs now require a 64-bit HW-int. Unfortunately a few of
> the older, less commonly used config targets do not. The code in arm.c now
> pretty much requires that a 64-bit HW-int is used, especially for
> vectorization to work.
>
> This patch makes 64-bit HW-int the default for all arm configs and cleans up
> the configure script accordingly.
>
> * config.gcc (arm): Require 64-bit host-wide-int for all ARM
> target configs.
The configuration in libcpp/configure.ac of which targets need 64-bit
HOST_WIDE_INT always needs to be kept in sync with that in gcc/config.gcc.
--
Joseph S. Myers
joseph@codesourcery.com
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [patch, ARM] require 64-bit hw-int for all arm targets
2013-08-07 0:26 ` Joseph S. Myers
@ 2013-08-07 13:52 ` Richard Earnshaw
0 siblings, 0 replies; 3+ messages in thread
From: Richard Earnshaw @ 2013-08-07 13:52 UTC (permalink / raw)
To: Joseph S. Myers; +Cc: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 897 bytes --]
On 07/08/13 01:25, Joseph S. Myers wrote:
> On Tue, 30 Jul 2013, Richard Earnshaw wrote:
>
>> Most arm target configs now require a 64-bit HW-int. Unfortunately a few of
>> the older, less commonly used config targets do not. The code in arm.c now
>> pretty much requires that a 64-bit HW-int is used, especially for
>> vectorization to work.
>>
>> This patch makes 64-bit HW-int the default for all arm configs and cleans up
>> the configure script accordingly.
>>
>> * config.gcc (arm): Require 64-bit host-wide-int for all ARM
>> target configs.
>
> The configuration in libcpp/configure.ac of which targets need 64-bit
> HOST_WIDE_INT always needs to be kept in sync with that in gcc/config.gcc.
>
Oops. Fixed thusly:
2013-08-07 Richard Earnshaw <rearnsha@arm.com>
* configure.ac: Set need_64bit_hwint for all arm targets.
* configure: Regenerated.
[-- Attachment #2: patch --]
[-- Type: text/plain, Size: 569 bytes --]
--- configure (revision 201547)
+++ configure (local)
@@ -7152,9 +7152,7 @@ fi
case $target in
aarch64*-*-* | \
alpha*-*-* | \
- arm*-*-*eabi* | \
- arm*-*-rtems* | \
- arm*-*-symbianelf* | \
+ arm*-*-* | \
x86_64-*-* | \
ia64-*-* | \
hppa*64*-*-* | \
--- configure.ac (revision 201547)
+++ configure.ac (local)
@@ -184,9 +184,7 @@ m4_changequote(,)
case $target in
aarch64*-*-* | \
alpha*-*-* | \
- arm*-*-*eabi* | \
- arm*-*-rtems* | \
- arm*-*-symbianelf* | \
+ arm*-*-* | \
x86_64-*-* | \
ia64-*-* | \
hppa*64*-*-* | \
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-08-07 13:52 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-30 16:16 [patch, ARM] require 64-bit hw-int for all arm targets Richard Earnshaw
2013-08-07 0:26 ` Joseph S. Myers
2013-08-07 13:52 ` Richard Earnshaw
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).