target-supports.exp (check_effective_target_arm_prefer_ldrd_strd): New procedure.

2012-10-19  Greta Yorsh  <Greta.Yorsh@arm.com>

gcc/testsuite/

        * gcc.target/arm/target-supports.exp (check_effective_target_arm_prefer_ldrd_strd): 
        New procedure.

gcc/

	* doc/sourcebuild.texi (Effective-Target Keywords): Document
	new effective target keyword arm_prefer_ldrd_strd.

From-SVN: r192615
This commit is contained in:
Greta Yorsh 2012-10-19 17:33:28 +01:00 committed by Greta Yorsh
parent 644b2e4c0d
commit cf5607f85a
4 changed files with 27 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2012-10-19 Greta Yorsh <Greta.Yorsh@arm.com>
* doc/sourcebuild.texi (Effective-Target Keywords): Document
new effective target keyword arm_prefer_ldrd_strd.
2012-10-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/54981

View File

@ -1555,6 +1555,11 @@ ARM target generates Thumb-2 code for @code{-mthumb}.
@item arm_vfp_ok
ARM target supports @code{-mfpu=vfp -mfloat-abi=softfp}.
Some multilibs may be incompatible with these options.
@item arm_prefer_ldrd_strd
ARM target prefers @code{LDRD} and @code{STRD} instructions over
@code{LDM} and @code{STM} instructions.
@end table
@subsubsection MIPS-specific attributes

View File

@ -1,3 +1,8 @@
2012-10-19 Greta Yorsh <Greta.Yorsh@arm.com>
* lib/target-supports.exp (check_effective_target_arm_prefer_ldrd_strd):
New procedure.
2012-10-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/54981

View File

@ -2464,6 +2464,18 @@ proc check_effective_target_arm_iwmmxt_ok { } {
}
}
# Return true if LDRD/STRD instructions are prefered over LDM/STM instructions
# for an ARM target.
proc check_effective_target_arm_prefer_ldrd_strd { } {
if { ![check_effective_target_arm32] } {
return 0;
}
return [check_no_messages_and_pattern arm_prefer_ldrd_strd "strd\tr" assembly {
void foo (int *p) { p[0] = 1; p[1] = 0;}
} "-O2 -mthumb" ]
}
# Return 1 if this is a PowerPC target with floating-point registers.
proc check_effective_target_powerpc_fprs { } {