Simplify pad_below implementation
authorRichard Sandiford <richard.sandiford@linaro.org>
Mon, 21 Aug 2017 14:52:43 +0000 (14:52 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Mon, 21 Aug 2017 14:52:43 +0000 (14:52 +0000)
commitb66fd4fc3777e1d072a63529b70b2ff777e6efcb
tree16ed38c19f780a1c7f311546e6eeffca79e4eac6
parent427764163985bbfb309ee43a85605d6b32c225d5
Simplify pad_below implementation

This patch simplifies the alignment calculations in pad_below.
The first arm of the "if" was:

- taking GET_MODE_BITSIZE (always equal to GET_MODE_SIZE * BITS_PER_UNIT),
- rounding up to the next multiple of PARM_BOUNDARY
- converting bits to bytes and
- subtracting the GET_MODE_SIZE

so was in effect calculating the number of bytes needed to round
GET_MODE_SIZE up to (PARM_BOUNDARY / BITS_PER_UNIT).  That can be
done more directly as -size & (align - 1), which is easier to
convert to variable-sized modes.

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

gcc/
* function.c (pad_below): Simplify padding calculation.

Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
Co-Authored-By: David Sherwood <david.sherwood@arm.com>
From-SVN: r251233
gcc/ChangeLog
gcc/function.c