r237822 - in /trunk/gcc: ChangeLog tree-ssa-mat...
wilco@gcc.gnu.org
wilco@gcc.gnu.org
Tue Jun 28 13:57:00 GMT 2016
Author: wilco
Date: Tue Jun 28 13:57:47 2016
New Revision: 237822
URL: https://gcc.gnu.org/viewcvs?rev=237822&root=gcc&view=rev
Log:
This patch fixes a bug in the bswap pass. In big-endian BIT_FIELD_REF uses
big-endian bit numbering so we need to adjust the bit position.
The existing version could potentially generate incorrect code however GCC
doesn't emit a BIT_FIELD_REF to access the low byte in a register, so the
symbolic number never matches in big-endian.
gcc/
* tree-ssa-math-opts.c (find_bswap_or_nop_1): Adjust bitnumbering
for big-endian BIT_FIELD_REF.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree-ssa-math-opts.c
More information about the Gcc-cvs
mailing list