2015-10-28 9:28 GMT+03:00 Senthil Kumar Selvaraj <senthil_kumar.selva...@atmel.com>: > > Ping! > > Regards > Senthil > On Fri, Oct 16, 2015 at 03:17:17PM +0530, Senthil Kumar Selvaraj wrote: > > Ping! > > > > Regards > > Senthil > > > > On Mon, Oct 05, 2015 at 02:30:58PM +0530, Senthil Kumar Selvaraj wrote: > > > Hi, > > > > > > As part of support for io and io_low attributes, the upper bound of > > > the range check for low IO and IO addresses was changed from hardcoded > > > values to hardcoded_range_end + 1 - GET_MODE_SIZE(mode). > > > > > > GCC passes VOID as the mode from genrecog, and GET_MODE_SIZE returns > > > 0, resulting in the range getting incorrectly extended by a byte. > > > > > > Not sure why it was done, as the mode of the operand shouldn't really > > > matter when computing the upper bound. In any case, the insns that use > > > the predicate already have a mem:QI wrapping it, and all the bit > > > addressable instructions operate on a single IO register only. > > > > > > This patch reverts the check back to a hardcoded value, and adds a > > > test to prevent regressions. > > > > > > No new regression failures. If ok, could someone commit please? I > > > don't have commit access. > > > > > > > > > Regards > > > Senthil > > > > > > gcc/ChangeLog > > > > > > 2015-10-05 Senthil Kumar Selvaraj <senthil_kumar.selva...@atmel.com> > > > > > > PR target/67839 > > > * config/avr/predicates.md (low_io_address_operand): Don't > > > consider MODE when computing upper bound. > > > (io_address_operand): Likewise. > > > > > > > > > gcc/testsuite/ChangeLog > > > > > > 2015-10-05 Senthil Kumar Selvaraj <senthil_kumar.selva...@atmel.com> > > > > > > PR target/67839 > > > * gcc.target/avr/pr67839.c: New test. > > >
Committed. Denis