On Oct 6, 2007, Richard Sandiford wrote: > Ah, thanks. I did have a quick look at it, and it seemed to be caused > by a missing conversion at the tree level. Expand was being given > a BIT_AND_EXPR with a DImode-typed result and HImode-typed operand. > I didn't try to track down where it was coming from. So it does seem > to be a tree-level bug after all. Yep, fixed in the revised patch below. It also fixes the endianness problem that was hitting machines that had BITS_BIG_ENDIAN != BYTES_BIG_ENDIAN, that caused the 20031211-1.c and other regressions. I remember having noticed at some point in the development of the bit-field SRA patch that I was using the wrong endianness macro and changing it, but BITS_BIG_ENDIAN wasn't what I was looking for. Doh. I haven't given this patch much testing yet, but the two new changes are obviously correct and do make progress. I'm starting a test run on a just-built mipsisa32-elf uberbaum tree, after having finally figured out why dejagnu wasn't finding newlib (my uberbaum source tree contained links to gcc and srcware sub-dirs, but site.exp set srcdir with the pathname of the gcc source tree, rather than that of the uberbaum tree, doesn't this bite anyone else?) Ok to install if it passes bootstrap on x86_64-linux-gnu?