aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Meissner <meissner@linux.vnet.ibm.com>2009-07-01 22:34:26 +0000
committerMichael Meissner <meissner@gcc.gnu.org>2009-07-01 22:34:26 +0000
commitd66a97e281d541d7595fa72c9ac7e3484c8abc3e (patch)
tree5f800c31ae9bab7e43753eabb033f99ec2ca5cb2
parent479b101323d7601d991a72ba79fc4f3a7dccaebc (diff)
downloadgcc-d66a97e281d541d7595fa72c9ac7e3484c8abc3e.zip
gcc-d66a97e281d541d7595fa72c9ac7e3484c8abc3e.tar.gz
gcc-d66a97e281d541d7595fa72c9ac7e3484c8abc3e.tar.bz2
Fix PR 40558, undo part of June 25th patch
Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com> Co-Authored-By: Revital Eres <eres@il.ibm.com> From-SVN: r149155
-rw-r--r--gcc/ChangeLog19
-rw-r--r--gcc/config/rs6000/rs6000.c2
2 files changed, 20 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 93a912d..456acee 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2009-07-01 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ PR bootstrap/40558
+ * config/rs6000/rs6000.c (print_operand): Undo change that breaks
+ darwin9 for printing reg addresses with %y.
+
2009-07-01 Adam Nemet <anemet@caviumnetworks.com>
* combine.c (force_to_mode): Handle TRUNCATE. Factor out
@@ -735,6 +741,19 @@
Pat Haugen <pthaugen@us.ibm.com>
Revital Eres <ERES@il.ibm.com>
+ * config/rs6000/rs6000.c (print_operand): Correct lossage message
+ for %c error. Add %x support to print VSX registers as a unified
+ register set, instead of separate float and altivec registers.
+ Switch to use VECTOR_MEM_ALTIVEC_P instead of TARGET_ALTIVEC for
+ %y case, and add support for VSX pre-modify addresses.
+ (output_toc): Add assert for CONST containing an integer constant
+ in the PLUS case.
+ (rs6000_adjust_cost): Add POWER7 support.
+ (insn_must_be_first_in_group): Ditto.
+ (insn_must_be_last_in_group): Ditto.
+ (rs6000_emit_popcount): Ditto.
+ (rs6000_vector_mode_supported_p): Ditto.
+
* config/rs6000/rs6000-protos.h (rs6000_secondary_reload_class):
Change some of the functions called by macros to being called
through a pointer, so debug functions can be inserted if
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 2065721..aa97f38 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -13471,7 +13471,7 @@ print_operand (FILE *file, rtx x, int code)
&& GET_CODE (tmp) == PRE_MODIFY)
tmp = XEXP (tmp, 1);
if (GET_CODE (tmp) == REG)
- fprintf (file, "%s,%s", reg_names[0], reg_names[REGNO (tmp)]);
+ fprintf (file, "0,%s", reg_names[REGNO (tmp)]);
else
{
if (!GET_CODE (tmp) == PLUS