parent
6a8b00eb9c
commit
213a1c03ba
|
@ -1,3 +1,7 @@
|
|||
2016-01-26 Christian Bruel <christian.bruel@st.com>
|
||||
|
||||
* doc/sourcebuild.texi (arm_crypto_pragma_ok): Remove.
|
||||
|
||||
2016-01-26 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* config/ia64/ia64.c (ia64_expand_vecint_compare): Use gen_int_mode.
|
||||
|
|
|
@ -1511,12 +1511,6 @@ Target generates decimal floating point instructions with current options.
|
|||
@item arm32
|
||||
ARM target generates 32-bit code.
|
||||
|
||||
@item arm_crypto_pragma_ok
|
||||
@anchor{arm_crypto_pragma_ok}
|
||||
ARM target supports pragma target @code{fpu=crypto-neon-fp-armv8}.
|
||||
This may need @code{-mfpu=crypto-neon-fp-armv8} or equivalent options.
|
||||
Some multilibs may be incompatible with these options.
|
||||
|
||||
@item arm_eabi
|
||||
ARM target adheres to the ABI for the ARM Architecture.
|
||||
|
||||
|
@ -2059,12 +2053,6 @@ The supported values of @var{feature} for directive @code{dg-add-options}
|
|||
are:
|
||||
|
||||
@table @code
|
||||
@item arm_crypto_pragma
|
||||
Crypto extension pragma support. Only ARM targets support this
|
||||
feature, and only then in certain modes; see the
|
||||
@ref{arm_crypto_pragma_ok,,arm_crypto_pragma_ok effective target
|
||||
keyword}.
|
||||
|
||||
@item arm_fp
|
||||
@code{__ARM_FP} definition. Only ARM targets support this feature, and only then
|
||||
in certain modes; see the @ref{arm_fp_ok,,arm_fp_ok effective target
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
2016-01-26 Christian Bruel <christian.bruel@st.com>
|
||||
|
||||
* lib/target-supports.exp
|
||||
(check_effective_target_arm_crypto_pragma_ok_nocache): Remove.
|
||||
(check_effective_target_arm_crypto_pragma_ok): Likewise.
|
||||
* gcc.target/arm/attr-crypto.c: Remove arm_crypto_pragma_ok test.
|
||||
|
||||
2016-01-26 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/69452
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
/* Make sure we can force fpu=vfp before switching using the
|
||||
pragma. */
|
||||
/* { dg-require-effective-target arm_fp_ok } */
|
||||
/* { dg-require-effective-target arm_crypto_pragma_ok } */
|
||||
/* { dg-options "-O2 -march=armv8-a" } */
|
||||
/* { dg-add-options arm_fp } */
|
||||
|
||||
|
|
|
@ -2852,52 +2852,6 @@ proc add_options_for_arm_crypto { flags } {
|
|||
return "$flags $et_arm_crypto_flags"
|
||||
}
|
||||
|
||||
# Return 1 if this is an ARM target supporting pragma target
|
||||
# fpu=crypto-neon-fp-armv8, possibly needing -mfloat-abi=softfp or
|
||||
# equivalent options. Some multilibs may be incompatible with these
|
||||
# options. Also set et_arm_crypto_pragma_flags to the best options to
|
||||
# add.
|
||||
|
||||
proc check_effective_target_arm_crypto_pragma_ok_nocache { } {
|
||||
global et_arm_crypto_pragma_flags
|
||||
set et_arm_crypto_pragma_flags ""
|
||||
if { [check_effective_target_arm_v8_neon_ok] } {
|
||||
foreach flags {"" "-mfloat-abi=softfp" "-mfpu=crypto-neon-fp-armv8" "-mfpu=crypto-neon-fp-armv8 -mfloat-abi=softfp"} {
|
||||
if { [check_no_compiler_messages_nocache arm_crypto_pragmaok object {
|
||||
#pragma GCC target ("fpu=crypto-neon-fp-armv8")
|
||||
#include "arm_neon.h"
|
||||
uint8x16_t
|
||||
foo (uint8x16_t a, uint8x16_t b)
|
||||
{
|
||||
return vaeseq_u8 (a, b);
|
||||
}
|
||||
} "[add_options_for_arm_v8_neon ""] $flags"] } {
|
||||
set et_arm_crypto_pragma_flags "[add_options_for_arm_v8_neon ""] $flags"
|
||||
return 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
# Return 1 if this is an ARM target supporting pragma target
|
||||
# -mfpu=crypto-neon-fp-armv8.
|
||||
|
||||
proc check_effective_target_arm_crypto_pragma_ok { } {
|
||||
return [check_cached_effective_target arm_crypto_pragma_ok \
|
||||
check_effective_target_arm_crypto_pragma_ok_nocache]
|
||||
}
|
||||
|
||||
# Add options for crypto extensions pragma.
|
||||
proc add_options_for_arm_crypto_pragma { flags } {
|
||||
if { ! [check_effective_target_arm_crypto_pragma_ok] } {
|
||||
return "$flags"
|
||||
}
|
||||
global et_arm_crypto_pragma_flags
|
||||
return "$flags $et_arm_crypto_pragma_flags"
|
||||
}
|
||||
|
||||
# Add the options needed for NEON. We need either -mfloat-abi=softfp
|
||||
# or -mfloat-abi=hard, but if one is already specified by the
|
||||
# multilib, use it. Similarly, if a -mfpu option already enables
|
||||
|
|
Loading…
Reference in New Issue