Microblaze PIC problem

Michael Eager eager@eagerm.com
Tue Jul 20 14:56:00 GMT 2010


Chris Wulff wrote:
>   I'm trying to track down a bug in the -fPIC support for microblaze.
> I'm currently using the gcc 4.1.2 tree from the Xilinx git repository
> but the microblaze 4.5 branch from svn shows the same symptom.
> 
>   It appears that what is going on is that it is creating a non-PIC
> symbol_ref instead of the correct one. (It actually compiles with gcc 3,
> but I think it creates a non-PIC reference directly to the symbol as it
> just doesn't have that assertion.)
> 
>   My questions are these (more details below):
> 
>   1) When doing PIC, should REG_EQUIV or REG_EQUAL notes still refer to
> the original symbol_ref or should they contain the PIC expression?
> 
>   2) Or should the PIC expression be re-inserted in some later phase?
> 
>   3) Does it look like I'm even looking in the right area? I'm still
> learning my way around the gcc codebase but my current understanding is
> that the "global_alloc" or "reload" code can just replace the
> pseudo-register with the REG_EQUIV note if it can't keep the register
> around.

Chris --

Your last point is correct, but this only happens if there is no
suitable register.

I'll take a look at your diagnostics and see if I can make some
sense of what is going on.

-- 
Michael Eager	 eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077



More information about the Gcc mailing list