------- Comment #2 from falk at debian dot org 2006-08-10 21:11 ------- Confirmed. This is a smaller test case:
int vformat(char *buffer) { return buffer[32767]; } This needs -mcpu=ev45. It is triggered by the synthetization of the 8-bit load by 64-bit loads. ldb v0, x(a0) is done as lda a0,x+1(a0) ldq_u v0,-1(a0) extqh v0,a0,v0 sra v0,56,v0 and if x=32767, this fails. (Incidentally, maybe we should do ldq_u t1,x(a0) lda a0,x+1(a0) extqh t1,a0,t1 sra t1,56,v0 and save one cycle at the cost of one extra register.) -- falk at debian dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rth at gcc dot gnu dot org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28623