[50/77] Add helper routines for SUBREG_PROMOTED_VAR_P subregs
commitc9d17be3fb2440509b5a02c0b0b5e571488b36cf
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 30 Aug 2017 11:17:20 +0000 (30 11:17 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 30 Aug 2017 11:17:20 +0000 (30 11:17 +0000)
treed48a76de8eb38795478f41a6e359ffce506390ce
parent652e50b4a3a30e63aaa8c4cbce80e8249df4ad24
[50/77] Add helper routines for SUBREG_PROMOTED_VAR_P subregs

When subregs contain promoted values, as indicated by
SUBREG_PROMOTED_VAR_P, both the unpromoted (outer) and
promoted (inner) values are known to be scalar integers.
This patch adds helper routines that get the modes as
scalar_int_modes.

2017-08-30  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* rtl.h (subreg_unpromoted_mode, subreg_promoted_mode): New functions.
* expr.c (convert_move): Use them.
(convert_modes): Likewise.
(store_expr_with_bounds): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@251502 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/expr.c
gcc/rtl.h