aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Eckhardt <jle@cygnus.com>2000-04-03 06:51:45 +0000
committerJeff Law <law@gcc.gnu.org>2000-04-03 00:51:45 -0600
commit478a4495af4d5710f348ad7e8d1fc84adea80537 (patch)
tree3b157e86550d0b3922df9e40eb6fa80a7287770b /gcc
parentf0fddb1554eb70f0adb3eeb73fb5991a4686deb4 (diff)
downloadgcc-478a4495af4d5710f348ad7e8d1fc84adea80537.zip
gcc-478a4495af4d5710f348ad7e8d1fc84adea80537.tar.gz
gcc-478a4495af4d5710f348ad7e8d1fc84adea80537.tar.bz2
pa.c (print_operand): Compute 'base' only inside the code paths that use it.
* pa.c (print_operand): Compute 'base' only inside the code paths that use it. From-SVN: r32875
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/pa/pa.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 122cf05..0d06bae 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Mon Apr 3 00:50:06 2000 Jason Eckhardt <jle@cygnus.com>
+
+ * pa.c (print_operand): Compute 'base' only inside the code paths
+ that use it.
+
2000-04-03 Geoffrey Keating <geoffk@cygnus.com>
* stor-layout.c (byte_from_pos): Use TRUNC_DIV_EXPR rather than
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index 4fc8a0c..f47ce37 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -3912,15 +3912,17 @@ print_operand (file, x, code)
else if (GET_CODE (x) == MEM)
{
int size = GET_MODE_SIZE (GET_MODE (x));
- rtx base = XEXP (XEXP (x, 0), 0);
+ rtx base = NULL_RTX;
switch (GET_CODE (XEXP (x, 0)))
{
case PRE_DEC:
case POST_DEC:
+ base = XEXP (XEXP (x, 0), 0);
fprintf (file, "-%d(%s)", size, reg_names [REGNO (base)]);
break;
case PRE_INC:
case POST_INC:
+ base = XEXP (XEXP (x, 0), 0);
fprintf (file, "%d(%s)", size, reg_names [REGNO (base)]);
break;
default: