------- Comment #2 from wilson at codesourcery dot com 2010-03-13 03:03 ------- Subject: Re: [ia64] Inappropriate address spills
This broke between gcc-4.0.0 and gcc-4.1.2. It appears to be the patch for PR 28490. There is a test in ia64_legitimate_constant_p for symbol +offset, where we require that the offset have the low 14-bits be zero which is not at all what we intended to test for. This should be a test for an offset that fits into a short add immediate instruction, which takes a signed-14 bit value, aka CONST_OK_FOR_I, or, hmm, let's look that up, I guess that would be satisfies_constraint_I nowadays. Except that satisfies_constraint_I wants an rtx, and we have an integer, so it might be simpler to just substitute in the right arithmetic for the constant check. I'll attach an untested patch that works for the testcase. Jim -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42040