diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2016-01-04 08:56:49 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2016-01-04 08:56:49 +0000 |
commit | 8db883aa82562867eba7e8a82b34ed70204bad6b (patch) | |
tree | 60af570af4efe153a3eda337353d8c5a5c87f59b /gcc | |
parent | 9e3b2fe375baa8b1a959892661e64766f32c613a (diff) | |
download | gcc-8db883aa82562867eba7e8a82b34ed70204bad6b.zip gcc-8db883aa82562867eba7e8a82b34ed70204bad6b.tar.gz gcc-8db883aa82562867eba7e8a82b34ed70204bad6b.tar.bz2 |
arm.c (aapcs_vfp_allocate_return_reg): Treat all integer modes larger than TImode as TImode if NEON is not enabled.
* config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer
modes larger than TImode as TImode if NEON is not enabled.
From-SVN: r232051
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa7b0c4..6e0a160 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2016-01-04 Eric Botcazou <ebotcazou@adacore.com> + * config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer + modes larger than TImode as TImode if NEON is not enabled. + +2016-01-04 Eric Botcazou <ebotcazou@adacore.com> + PR target/69100 * config/sparc/sparc.h (FUNCTION_ARG_REGNO_P): Return true in 64-bit mode for %f0-%f31 only if TARGET_FPU. diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index f89411e..e193f02 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -5846,7 +5846,10 @@ aapcs_vfp_allocate_return_reg (enum arm_pcs pcs_variant ATTRIBUTE_UNUSED, if (!use_vfp_abi (pcs_variant, false)) return NULL; - if (mode == BLKmode || (mode == TImode && !TARGET_NEON)) + if (mode == BLKmode + || (GET_MODE_CLASS (mode) == MODE_INT + && GET_MODE_SIZE (mode) >= GET_MODE_SIZE (TImode) + && !TARGET_NEON)) { int count; machine_mode ag_mode; |