diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-04-03 06:51:45 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-04-03 06:51:45 +0000 |
commit | f7dff90d7ab6a4b43725505fd6db5bcaf7e767f3 (patch) | |
tree | 3b157e86550d0b3922df9e40eb6fa80a7287770b | |
parent | fb65a9008b62ceb4344ce077e997a4c74f93c757 (diff) | |
download | gcc-f7dff90d7ab6a4b43725505fd6db5bcaf7e767f3.tar.gz |
* pa.c (print_operand): Compute 'base' only inside the code paths
that use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32875 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 122cf05eabc..0d06baefc74 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 4fc8a0ce43b..f47ce37ba72 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: |