Ross,
> Kai Tietz writes:
> >I read that too, but how can I teach gcc to do this that registers are
> >callee-saved? I tried it by use of call_used part in regclass.c, but
> >this didn't worked as expected.
>
> I think you need to modify CALL_USED_REGISTERS and/or
> CONDITIONAL_REGISTER_USAGE in i386.h. Making any changes to regclass.c
> is probably not the right thing to do.
Hmm, the parts in CALL_USED_REGISTERS and CONDITIONAL_REGISTER_USAGE seems
to be ok (beside xmm6-xmm15).
If I change xmm6-xmm15 to be non-volatile, I get ICE's in float
initialize.
But the interesting part is, that by methods like memset/memcpy/ the
register r13 still get clobbered.
Could it be that on externals (or dll imported) symbols in optimization
the register clobbering of a call is not treated correctly?
Cheers,
Kai
| (\_/) This is Bunny. Copy and paste Bunny
| (='.'=) into your signature to help him gain
| (")_(") world domination.