gcc 3.3.2 ICE on altivec - bug category question

Jakub Bogusz qboosh@pld-linux.org
Mon Jan 19 19:56:00 GMT 2004


I'm getting an ICE using gcc 3.3.2 (doesn't matter here if PR
target/11793 fix is applied or not, I tried both versions) on
ppc-linux system, on the following code (already preprocessed and
simplified from original one):


typedef __attribute__((vector_size(16))) signed int vector_s_t;

static vector_s_t my_vec_and (vector_s_t const A, vector_s_t const B)
{
return __builtin_altivec_vand(A, B);
}


$ gcc -c alt.i -maltivec
alt.i: In function `my_vec_and':
alt.i:6: error: unrecognizable insn:
(insn 5 4 30 0 (nil) (set (reg:V4SI 119)
        (mem/u/f:V4SI (plus:SI (reg/f:SI 67 ap)
                (const_int 8 [0x8])) [0 B+0 S16 A128])) -1 (nil)
    (nil))
alt.i:6: internal compiler error: in extract_insn, at recog.c:2175
Please submit a full bug report,
with preprocessed source if appropriate.

But:
$ gcc -c alt.i -maltivec -mabi=altivec
$

Is suppose that altivec ABI can be needed to return vector... but
I haven't found such information - is it true?
And thus, does it fall under "ice-on-valid-code" or "ice-on-invalid-code"?
Can it be expected to be fixed in 3.3.x line, or 3.4/3.5?


-- 
Jakub Bogusz    http://cyber.cs.net.pl/~qboosh/
PLD Team        http://www.pld-linux.org/



More information about the Gcc-bugs mailing list