From: Segher Boessenkool Date: Tue, 13 Jun 2017 17:06:37 +0000 (+0200) Subject: rs6000: Remove SPE_CONST_OFFSET_OK X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=afb0e4255a0a67aab004b2ce1bf781362e4055d7;p=gcc.git rs6000: Remove SPE_CONST_OFFSET_OK * config/rs6000/rs6000.c (SPE_CONST_OFFSET_OK): Delete. (rs6000_legitimate_offset_address_p): Return false for anything in V2SImode or V2SFmode. From-SVN: r249163 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9e2bfa419e2..ba35929ed61 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-06-13 Segher Boessenkool + + * config/rs6000/rs6000.c (SPE_CONST_OFFSET_OK): Delete. + (rs6000_legitimate_offset_address_p): Return false for anything in + V2SImode or V2SFmode. + 2017-06-13 Segher Boessenkool * config/rs6000/rs6000-modes.def: Remove all 8-byte vector modes diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index b51ffcc5677..a1005c01d23 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -8697,9 +8697,6 @@ legitimate_small_data_p (machine_mode mode, rtx x) && small_data_operand (x, mode)); } -/* SPE offset addressing is limited to 5-bits worth of double words. */ -#define SPE_CONST_OFFSET_OK(x) (((x) & ~0xf8) == 0) - bool rs6000_legitimate_offset_address_p (machine_mode mode, rtx x, bool strict, bool worst_case) @@ -8728,8 +8725,8 @@ rs6000_legitimate_offset_address_p (machine_mode mode, rtx x, { case V2SImode: case V2SFmode: - /* SPE vector modes. */ - return SPE_CONST_OFFSET_OK (offset); + /* Paired single modes: offset addressing isn't valid. */ + return false; case DFmode: case DDmode: