aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorWalter Lee <walt@tilera.com>2014-01-25 20:23:42 +0000
committerWalter Lee <walt@gcc.gnu.org>2014-01-25 20:23:42 +0000
commit450c1ffe7717b814b69154b2ab0f66239a8820ba (patch)
tree1f419840888c27ee2c31636785f3bf3042383427 /gcc
parent317a951fc75f1afb5e4fc25810722cf9044da7ed (diff)
downloadgcc-450c1ffe7717b814b69154b2ab0f66239a8820ba.zip
gcc-450c1ffe7717b814b69154b2ab0f66239a8820ba.tar.gz
gcc-450c1ffe7717b814b69154b2ab0f66239a8820ba.tar.bz2
tilegx.c (tilegx_expand_builtin): Set PREFETCH_SCHEDULE_BARRIER_P to true for prefetches.
2014-01-25 Walter Lee <walt@tilera.com> * config/tilegx/tilegx.c (tilegx_expand_builtin): Set PREFETCH_SCHEDULE_BARRIER_P to true for prefetches. * config/tilepro/tilepro.c (tilepro_expand_builtin): Ditto. From-SVN: r207080
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/tilegx/tilegx.c6
-rw-r--r--gcc/config/tilepro/tilepro.c6
3 files changed, 19 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 921b0ce..a4f5fd5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
-2014-01-25 Richard Sandiford <rdsandiford@googlemail.com>
+2014-01-25 Walter Lee <walt@tilera.com>
+ * config/tilegx/tilegx.c (tilegx_expand_builtin): Set
+ PREFETCH_SCHEDULE_BARRIER_P to true for prefetches.
+ * config/tilepro/tilepro.c (tilepro_expand_builtin): Ditto.
+
+2014-01-25 Richard Sandiford <rdsandiford@googlemail.com>
+
* config/mips/constraints.md (kl): Delete.
* config/mips/mips.md (divmod<mode>4, udivmod<mode>4): Turn into
define expands, using...
diff --git a/gcc/config/tilegx/tilegx.c b/gcc/config/tilegx/tilegx.c
index 85a46f7..c168621 100644
--- a/gcc/config/tilegx/tilegx.c
+++ b/gcc/config/tilegx/tilegx.c
@@ -3570,6 +3570,12 @@ tilegx_expand_builtin (tree exp,
}
if (!pat)
return NULL_RTX;
+
+ /* If we are generating a prefetch, tell the scheduler not to move
+ it around. */
+ if (GET_CODE (pat) == PREFETCH)
+ PREFETCH_SCHEDULE_BARRIER_P (pat) = true;
+
emit_insn (pat);
if (nonvoid)
diff --git a/gcc/config/tilepro/tilepro.c b/gcc/config/tilepro/tilepro.c
index 615d490..74f8800 100644
--- a/gcc/config/tilepro/tilepro.c
+++ b/gcc/config/tilepro/tilepro.c
@@ -3184,6 +3184,12 @@ tilepro_expand_builtin (tree exp,
}
if (!pat)
return NULL_RTX;
+
+ /* If we are generating a prefetch, tell the scheduler not to move
+ it around. */
+ if (GET_CODE (pat) == PREFETCH)
+ PREFETCH_SCHEDULE_BARRIER_P (pat) = true;
+
emit_insn (pat);
if (nonvoid)