aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2016-11-02 18:06:04 +0100
committerSegher Boessenkool <segher@gcc.gnu.org>2016-11-02 18:06:04 +0100
commit302fd2cc3f4b3742e13361a2dbfbe54cd855d0e7 (patch)
tree4340a65f419b48d8f918e514c2c26be34180d3da
parentb231822daedfc5cf7dbacda8208daff722519776 (diff)
downloadgcc-302fd2cc3f4b3742e13361a2dbfbe54cd855d0e7.zip
gcc-302fd2cc3f4b3742e13361a2dbfbe54cd855d0e7.tar.gz
gcc-302fd2cc3f4b3742e13361a2dbfbe54cd855d0e7.tar.bz2
rs6000: Disable shrink-wrap-separate for abi=spe (PR78168)
With the SPE ABI, if we wrap GPRs we need to handle the upper half of the extended 64-bit registers as well, which we cannot easily do. So, this patch disables separate shrink-wrapping for the SPE ABI. PR target/78168 * config/r6000/rs6000.c (rs6000_get_separate_components): Return NULL if TARGET_SPE_ABI. From-SVN: r241799
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.c3
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 96bcf41..e9640c8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-11-02 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR target/78168
+ * config/r6000/rs6000.c (rs6000_get_separate_components): Return
+ NULL if TARGET_SPE_ABI.
+
2016-11-02 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gimple-ssa-store-merging.c (encode_tree_to_bitpos): Don't forget to
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 39ac469..49985f1 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -27634,6 +27634,9 @@ rs6000_get_separate_components (void)
if (WORLD_SAVE_P (info))
return NULL;
+ if (TARGET_SPE_ABI)
+ return NULL;
+
sbitmap components = sbitmap_alloc (32);
bitmap_clear (components);