http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55721
--- Comment #12 from Steve Ellcey <sje at gcc dot gnu.org> 2013-01-09 21:52:59 UTC --- Here is another testcase that looks different then the others, it is cutdown from newlib/libm/math/k_rem_pio2.c. % cat bug3.c static const int init_jk[] = {2,3,4,6}; double twon24 = 5.96046447753906250000e-08; int __kernel_rem_pio2(double *x, double *y, int e0, int nx, int prec) { int jz,jx,jv,jp,jk,carry,n,iq[20],i,j,k,m,q0,ih; double z,fw,f[20],fq[20],q[20]; jk = init_jk[prec]; jz = jk; for(i=0,j=jz,z=q[jz];j>0;i++,j--) { fw = (double)((int)(twon24* z)); } switch(prec) { case 0: y[0] = fq[0]; y[1] = fq[1]; y[2] = fw; } } % gcc -mips64r2 -mabi=64 -c -O2 -g bug3.c bug3.c: In function '__kernel_rem_pio2': bug3.c:3:5: note: non-delegitimized UNSPEC unknown (230) found in variable location int __kernel_rem_pio2(double *x, double *y, int e0, int nx, int prec) ^ bug3.c:3:5: note: non-delegitimized UNSPEC unknown (230) found in variable location