> > If I understand correctly it complains about a move instruction where src
> > memory location should be (reg22+reg23). My arch defines:
> > #define MAX_REGS_PER_ADDRESS 1
> > the first pseudo reg is 13
> > 
> 
>   I think the wording of the second sentence in the M_R_P_A documentation
> (beginning 'Note that ...'):
> 
>  -- Macro: MAX_REGS_PER_ADDRESS
>      A number, the maximum number of registers that can appear in a
>      valid memory address.  Note that it is up to you to specify a
>      value equal to the maximum number that
>      `TARGET_LEGITIMATE_ADDRESS_P' would ever accept.

Yeah I finally found that yesterday. Sorry that I could not find it in the docs 
before ;) It's open all the time but I just slipped through it...
I don't really understand why this define exists anyway if finally only the 
LEGITIMATE_ADDRESS_P matters.
The doc doesn't say (or at least I could not find it) what it is good for, if 
it is not the decision maker piece.

Anyway, the libgcc is cross compiled. The "only" problem I face now that two 
object files do not compile with -O or -O2 switch. There is an ICE in 
reload_combine_not_use. But I'll try to figure that out.

Thank,
Gabor

Reply via email to