summaryrefslogtreecommitdiff
path: root/gcc/config/arc
diff options
context:
space:
mode:
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-14 18:53:25 +0000
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-14 18:53:25 +0000
commit983454618104a3e8beefa2fc56d7d3413d4b8b59 (patch)
tree2face44bf8029d1504f886c9261ad0ff90a7bd3b /gcc/config/arc
parent75791c3fb733045397f1d9e4c7f45cc9ee10aedb (diff)
downloadgcc-983454618104a3e8beefa2fc56d7d3413d4b8b59.tar.gz
* config/arc/arc.md (doloop_begin_i): Remove extra alignment;
use (.&-4) idiom. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204810 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/arc')
-rw-r--r--gcc/config/arc/arc.md3
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
index baf347876be..64b4162a877 100644
--- a/gcc/config/arc/arc.md
+++ b/gcc/config/arc/arc.md
@@ -4789,8 +4789,7 @@
{
/* ??? Can do better for when a scratch register
is known. But that would require extra testing. */
- arc_clear_unalign ();
- return ".p2align 2\;push_s r0\;add r0,pcl,%4-.+2\;sr r0,[2]; LP_START\;add r0,pcl,.L__GCC__LP%1-.+2\;sr r0,[3]; LP_END\;pop_s r0";
+ return "push_s r0\;add r0,pcl,%4-(.&-4)\;sr r0,[2]; LP_START\;add r0,pcl,.L__GCC__LP%1-(.&-4)\;sr r0,[3]; LP_END\;pop_s r0";
}
/* Check if the loop end is in range to be set by the lp instruction. */
size = INTVAL (operands[3]) < 2 ? 0 : 2048;