Commit 5399093b by Maciej W. Rozycki Committed by Maciej W. Rozycki

* lib/target-supports.exp

	(check_effective_target_arm_iwmmxt_ok): New procedure.
	* gcc.target/arm/mmx-1.c: Only run if arm_iwmmxt_ok.  Remove the
	exclusions for -mfloat-abi=softfp and -mfloat-abi=hard.

From-SVN: r151003
parent 08ffd640
2009-08-21 Maciej W. Rozycki <macro@codesourcery.com>
* lib/target-supports.exp
(check_effective_target_arm_iwmmxt_ok): New procedure.
* gcc.target/arm/mmx-1.c: Only run if arm_iwmmxt_ok. Remove the
exclusions for -mfloat-abi=softfp and -mfloat-abi=hard.
2009-08-21 Uros Bizjak <ubizjak@gmail.com> 2009-08-21 Uros Bizjak <ubizjak@gmail.com>
* gfortran.dg/boz_9.f90: Do not generate denormal floating * gfortran.dg/boz_9.f90: Do not generate denormal floating
......
...@@ -3,11 +3,10 @@ ...@@ -3,11 +3,10 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-mcpu=*" } { "-mcpu=iwmmxt" } } */ /* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-mcpu=*" } { "-mcpu=iwmmxt" } } */
/* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-mabi=*" } { "-mabi=iwmmxt" } } */ /* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-mabi=*" } { "-mabi=iwmmxt" } } */
/* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-mfloat-abi=softfp" } { "" } } */
/* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-mfloat-abi=hard" } { "" } } */
/* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-march=*" } { "-march=iwmmxt" } } */ /* { dg-skip-if "Test is specific to the iWMMXt" { arm*-*-* } { "-march=*" } { "-march=iwmmxt" } } */
/* { dg-options "-O -mno-apcs-frame -mcpu=iwmmxt -mabi=iwmmxt" } */ /* { dg-options "-O -mno-apcs-frame -mcpu=iwmmxt -mabi=iwmmxt" } */
/* { dg-require-effective-target arm32 } */ /* { dg-require-effective-target arm32 } */
/* { dg-require-effective-target arm_iwmmxt_ok } */
/* { dg-final { scan-assembler "ldmfd\[ ]sp!.*ip,\[ ]*pc" } } */ /* { dg-final { scan-assembler "ldmfd\[ ]sp!.*ip,\[ ]*pc" } } */
/* This function uses all the call-saved registers, namely r4, r5, r6, /* This function uses all the call-saved registers, namely r4, r5, r6,
......
...@@ -1620,6 +1620,19 @@ proc check_effective_target_arm_eabi { } { ...@@ -1620,6 +1620,19 @@ proc check_effective_target_arm_eabi { } {
}] }]
} }
# Return 1 if this is an ARM target supporting -mcpu=iwmmxt.
# Some multilibs may be incompatible with this option.
proc check_effective_target_arm_iwmmxt_ok { } {
if { [check_effective_target_arm32] } {
return [check_no_compiler_messages arm_iwmmxt_ok object {
int dummy;
} "-mcpu=iwmmxt"]
} else {
return 0
}
}
# Return 1 if this is a PowerPC target with floating-point registers. # Return 1 if this is a PowerPC target with floating-point registers.
proc check_effective_target_powerpc_fprs { } { proc check_effective_target_powerpc_fprs { } {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment