diff options
author | Richard Earnshaw <rearnsha@arm.com> | 2018-08-01 08:16:48 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2018-08-01 08:16:48 +0000 |
commit | d1b05d128dca0009642908dd2fb490c1ee27e72e (patch) | |
tree | 666fbf4907a416bc86347044c7e407cba6510155 | |
parent | 31e962f2dd67eef0f148b60696df9d95cc1dd713 (diff) | |
download | gcc-d1b05d128dca0009642908dd2fb490c1ee27e72e.zip gcc-d1b05d128dca0009642908dd2fb490c1ee27e72e.tar.gz gcc-d1b05d128dca0009642908dd2fb490c1ee27e72e.tar.bz2 |
rs6000 - add speculation_barrier pattern
This patch reworks the existing rs6000_speculation_barrier pattern to
work with the new __builtin_sepculation_safe_value() intrinsic. The
change is trivial as it simply requires renaming the existing speculation
barrier pattern.
So the total patch is to delete 14 characters!
* config/rs6000/rs6000.md (speculation_barrier): Renamed from
rs6000_speculation_barrier.
* config/rs6000/rs6000.c (rs6000_expand_builtin): Adjust for
new barrier pattern name.
From-SVN: r263197
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 2 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6b2e93b..54cd8f9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2018-08-01 Richard Earnshaw <rearnsha@arm.com> + * config/rs6000/rs6000.md (speculation_barrier): Renamed from + rs6000_speculation_barrier. + * config/rs6000/rs6000.c (rs6000_expand_builtin): Adjust for + new barrier pattern name. + +2018-08-01 Richard Earnshaw <rearnsha@arm.com> + * config/i386/i386.md (unspecv): Add UNSPECV_SPECULATION_BARRIER. (speculation_barrier): New insn. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 3040382..c2af4b8 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -15836,7 +15836,7 @@ rs6000_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED, case MISC_BUILTIN_SPEC_BARRIER: { - emit_insn (gen_rs6000_speculation_barrier ()); + emit_insn (gen_speculation_barrier ()); return NULL_RTX; } diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 56b8a30..d70b01b 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -12641,7 +12641,7 @@ return "ori 2,2,0"; }) -(define_insn "rs6000_speculation_barrier" +(define_insn "speculation_barrier" [(unspec_volatile:BLK [(const_int 0)] UNSPECV_SPEC_BARRIER)] "" "ori 31,31,0") |