From 0a90c336200ac1bed97b54a7561f3ab6f21ab1d2 Mon Sep 17 00:00:00 2001 From: David Edelsohn Date: Mon, 22 Jan 1996 21:51:28 +0000 Subject: [PATCH] Use Pmode and cleanup From-SVN: r11083 --- gcc/config/rs6000/rs6000.h | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index 67a8cbc16cb..4830957e4c0 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -1655,10 +1655,7 @@ typedef struct rs6000_args #define GO_IF_LEGITIMATE_ADDRESS(MODE, X, ADDR) \ { if (LEGITIMATE_INDIRECT_ADDRESS_P (X)) \ goto ADDR; \ - if (GET_CODE (X) == PRE_INC \ - && LEGITIMATE_INDIRECT_ADDRESS_P (XEXP (X, 0))) \ - goto ADDR; \ - if (GET_CODE (X) == PRE_DEC \ + if ((GET_CODE (X) == PRE_INC || GET_CODE (X) == PRE_DEC) \ && LEGITIMATE_INDIRECT_ADDRESS_P (XEXP (X, 0))) \ goto ADDR; \ if (LEGITIMATE_CONSTANT_POOL_ADDRESS_P (X)) \ @@ -1705,9 +1702,9 @@ typedef struct rs6000_args low_int = INTVAL (XEXP (X, 1)) & 0xffff; \ if (low_int & 0x8000) \ high_int += 1, low_int |= 0xffff0000; \ - (X) = gen_rtx (PLUS, SImode, \ + (X) = gen_rtx (PLUS, Pmode, \ force_operand \ - (gen_rtx (PLUS, SImode, XEXP (X, 0), \ + (gen_rtx (PLUS, Pmode, XEXP (X, 0), \ gen_rtx (CONST_INT, VOIDmode, \ high_int << 16)), 0), \ gen_rtx (CONST_INT, VOIDmode, low_int)); \ @@ -1718,8 +1715,8 @@ typedef struct rs6000_args && (TARGET_HARD_FLOAT || (MODE) != DFmode) \ && (MODE) != DImode && (MODE) != TImode) \ { \ - (X) = gen_rtx (PLUS, SImode, XEXP (X, 0), \ - force_reg (SImode, force_operand (XEXP (X, 1), 0))); \ + (X) = gen_rtx (PLUS, Pmode, XEXP (X, 0), \ + force_reg (Pmode, force_operand (XEXP (X, 1), 0))); \ goto WIN; \ } \ else if (TARGET_ELF && !TARGET_64BIT && TARGET_NO_TOC \ @@ -1763,7 +1760,7 @@ typedef struct rs6000_args /* Specify the machine mode that this machine uses for the index in the tablejump instruction. */ -#define CASE_VECTOR_MODE SImode +#define CASE_VECTOR_MODE (TARGET_64BIT ? DImode : SImode) /* Define this if the tablejump instruction expects the table to contain offsets from the address of the table. -- 2.30.2