On Wed, Sep 22, 2010, Dave Martin wrote:
I'm not a toolchain expert, so I'm happy to be overridden... but my _guess_ is:
I think that in practice (at least on arm) cc -fPIC = cc -fPIE, and ld -pie just forces ld to generate PIC veneers (as for -shared). Beyond this, I think ld -shared / -pie / (nothing) probably just changes which linker script is used by default. U-Boot overrides the default with its own linker script anyway, so it may make no difference.
Catching up on email, I just came across: http://article.gmane.org/gmane.comp.boot-loaders.u-boot/84789 so it seems to be different, but not significantly
I don't care too strongly, but it might make sense to try to use the flag which means exactly what we want to allow for future optimizations?