diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 1997-10-16 03:37:28 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1997-10-15 21:37:28 -0600 |
commit | 96b63cd7a25592e0831692272568f2b0e63b5cc5 (patch) | |
tree | fceea5e6540abcabea63d1e450a017c12a4552cc /gcc | |
parent | f192bf8b22b4512bac0479435a5c3d4a33ad13c3 (diff) | |
download | gcc-96b63cd7a25592e0831692272568f2b0e63b5cc5.zip gcc-96b63cd7a25592e0831692272568f2b0e63b5cc5.tar.gz gcc-96b63cd7a25592e0831692272568f2b0e63b5cc5.tar.bz2 |
pa.c (move_operand): Respect -mdisable-indexing.
* pa.c (move_operand): Respect -mdisable-indexing.
* pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
Bring over from gcc2. Fixes ada -O2 bootstrap.
From-SVN: r15927
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.c | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.h | 3 |
3 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 41fb7af..05b67dc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + * pa.c (move_operand): Respect -mdisable-indexing. + * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise. + Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu> * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 5a1ccbb..5729fb8 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -1,5 +1,5 @@ /* Subroutines for insn-output.c for HPPA. - Copyright (C) 1992, , 1994, 95, 96, 1997 Free Software Foundation, Inc. + Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc. Contributed by Tim Moore (moore@cs.utah.edu), based on sparc.c This file is part of GNU CC. @@ -297,7 +297,8 @@ move_operand (op, mode) /* Since move_operand is only used for source operands, we can always allow scaled indexing! */ - if (GET_CODE (op) == PLUS + if (! TARGET_DISABLE_INDEXING + && GET_CODE (op) == PLUS && ((GET_CODE (XEXP (op, 0)) == MULT && GET_CODE (XEXP (XEXP (op, 0), 0)) == REG && GET_CODE (XEXP (XEXP (op, 0), 1)) == CONST_INT diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 79bbac3..7d6c826 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for the HP Spectrum. - Copyright (C) 1992, 1993, 1994, 1995, 1996 Free Software Foundation, Inc. + Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) of Cygnus Support and Tim Moore (moore@defmacro.cs.utah.edu) of the Center for Software Science at the University of Utah. @@ -1548,6 +1548,7 @@ extern struct rtx_def *hppa_builtin_saveregs (); || INT_5_BITS (index))) \ goto ADDR; \ if (! TARGET_SOFT_FLOAT \ + && ! TARGET_DISABLE_INDEXING \ && base \ && (mode == SFmode || mode == DFmode) \ && GET_CODE (index) == MULT \ |