sourcebuild.texi: Document check_effective_target_arm_vfp3_ok and add_options_for_arm_vfp3.
2014-02-11 Renlin Li <Renlin.Li@arm.com> gcc/ * doc/sourcebuild.texi: Document check_effective_target_arm_vfp3_ok and add_options_for_arm_vfp3. gcc/testsuite/ * gcc.target/arm/fixed_float_conversion.c: Add arm_vfp3 option. * lib/target-supports.exp (check_effective_target_arm_vfp3_ok): New. (add_options_for_arm_vfp3): New. From-SVN: r207691
This commit is contained in:
parent
cddddfff5b
commit
6d3715b90d
|
@ -1,3 +1,8 @@
|
|||
2014-02-11 Renlin Li <Renlin.Li@arm.com>
|
||||
|
||||
* doc/sourcebuild.texi: Document check_effective_target_arm_vfp3_ok and
|
||||
add_options_for_arm_vfp3.
|
||||
|
||||
2014-02-11 Jeff Law <law@redhat.com>
|
||||
|
||||
PR middle-end/54041
|
||||
|
|
|
@ -1551,6 +1551,10 @@ ARM target generates Thumb-2 code for @code{-mthumb}.
|
|||
ARM target supports @code{-mfpu=vfp -mfloat-abi=softfp}.
|
||||
Some multilibs may be incompatible with these options.
|
||||
|
||||
@item arm_vfp3_ok
|
||||
ARM target supports @code{-mfpu=vfp3 -mfloat-abi=softfp}.
|
||||
Some multilibs may be incompatible with these options.
|
||||
|
||||
@item arm_v8_vfp_ok
|
||||
ARM target supports @code{-mfpu=fp-armv8 -mfloat-abi=softfp}.
|
||||
Some multilibs may be incompatible with these options.
|
||||
|
@ -1954,6 +1958,10 @@ NEON and half-precision floating point support. Only ARM targets
|
|||
support this feature, and only then in certain modes; see
|
||||
the @ref{arm_neon_ok,,arm_neon_fp16_ok effective target keyword}.
|
||||
|
||||
@item arm_vfp3
|
||||
arm vfp3 floating point support; see
|
||||
the @ref{arm_vfp3_ok,,arm_vfp3_ok effective target keyword}.
|
||||
|
||||
@item bind_pic_locally
|
||||
Add the target-specific flags needed to enable functions to bind
|
||||
locally when using pic/PIC passes in the testsuite.
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2014-02-11 Renlin Li <Renlin.Li@arm.com>
|
||||
|
||||
* gcc.target/arm/fixed_float_conversion.c: Add arm_vfp3 option.
|
||||
* lib/target-supports.exp (check_effective_target_arm_vfp3_ok): New.
|
||||
(add_options_for_arm_vfp3): New.
|
||||
|
||||
2014-02-11 Jeff Law <law@redhat.com>
|
||||
|
||||
PR middle-end/54041
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
/* Check that vcvt is used for fixed and float data conversions. */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O1 -mfpu=vfp3" } */
|
||||
/* { dg-require-effective-target arm_vfp_ok } */
|
||||
/* { dg-require-effective-target arm_vfp3_ok } */
|
||||
/* { dg-options "-O1" } */
|
||||
/* { dg-add-options arm_vfp3 } */
|
||||
|
||||
float
|
||||
fixed_to_float (int i)
|
||||
|
|
|
@ -2259,6 +2259,19 @@ proc check_effective_target_arm_vfp_ok { } {
|
|||
}
|
||||
}
|
||||
|
||||
# Return 1 if this is an ARM target supporting -mfpu=vfp3
|
||||
# -mfloat-abi=softfp.
|
||||
|
||||
proc check_effective_target_arm_vfp3_ok { } {
|
||||
if { [check_effective_target_arm32] } {
|
||||
return [check_no_compiler_messages arm_vfp3_ok object {
|
||||
int dummy;
|
||||
} "-mfpu=vfp3 -mfloat-abi=softfp"]
|
||||
} else {
|
||||
return 0
|
||||
}
|
||||
}
|
||||
|
||||
# Return 1 if this is an ARM target supporting -mfpu=fp-armv8
|
||||
# -mfloat-abi=softfp.
|
||||
proc check_effective_target_arm_v8_vfp_ok {} {
|
||||
|
@ -2406,6 +2419,14 @@ proc add_options_for_arm_neonv2 { flags } {
|
|||
return "$flags $et_arm_neonv2_flags"
|
||||
}
|
||||
|
||||
# Add the options needed for vfp3.
|
||||
proc add_options_for_arm_vfp3 { flags } {
|
||||
if { ! [check_effective_target_arm_vfp3_ok] } {
|
||||
return "$flags"
|
||||
}
|
||||
return "$flags -mfpu=vfp3 -mfloat-abi=softfp"
|
||||
}
|
||||
|
||||
# Return 1 if this is an ARM target supporting -mfpu=neon
|
||||
# -mfloat-abi=softfp or equivalent options. Some multilibs may be
|
||||
# incompatible with these options. Also set et_arm_neon_flags to the
|
||||
|
|
Loading…
Reference in New Issue