diff options
author | Greta Yorsh <greta.yorsh@arm.com> | 2012-10-19 17:33:28 +0100 |
---|---|---|
committer | Greta Yorsh <gretay@gcc.gnu.org> | 2012-10-19 17:33:28 +0100 |
commit | cf5607f85aba4e94b2feda9c9ecf4f1da1edc27e (patch) | |
tree | 3c53625d21f1b3f015e67ae2a8c8461e050967f4 | |
parent | 644b2e4c0dc69212ca11ed5d58be5a82b1b7dcc8 (diff) | |
download | gcc-cf5607f85aba4e94b2feda9c9ecf4f1da1edc27e.zip gcc-cf5607f85aba4e94b2feda9c9ecf4f1da1edc27e.tar.gz gcc-cf5607f85aba4e94b2feda9c9ecf4f1da1edc27e.tar.bz2 |
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
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/doc/sourcebuild.texi | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/lib/target-supports.exp | 12 |
4 files changed, 27 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7a82d9f..f599d1e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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 diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi index 2efd799..89e7712 100644 --- a/gcc/doc/sourcebuild.texi +++ b/gcc/doc/sourcebuild.texi @@ -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 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a7e4d3e..be805f2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -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 diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 2ab630e..944143b 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -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 { } { |