Hey Derek,

Are you imaging something like Apple's "fat" mach-o binaries on Mac OS X
that support multiple ISAs in a single binary? There's nothing like that
for Solaris -- we've chosen a different tack which is to deliver the
individual binaries and then choose the appropriate one with an intermediate
binary (isaexec).

Adam

On Sun, Dec 10, 2006 at 12:56:38PM -0600, Derek E. Lewis wrote:
> Greetings,
> 
> I'm curious if it's possible to link an ELF with multiple objects 
> compiled for varying CPUs (say, SPARCv8, UltraSPARC-I, etc.) and the 
> header of the ELF cannot be modified to state that the ELF is for the 
> CPU of the object of the highest CPU?
> 
> MPlayer's runtime-CPU-detection depends on this, as when a VIS 
> instruction is executed, SIGILL is caught and VIS instructions are 
> disabled in the MPlayer binary. Right now, certain objects need to be 
> built for UltraSPARC-I, because they contain VIS1 instructions. 
> Obviously, the object cannot be built for SPARCv8. It seems if this 
> weren't possible, SIGILL would be quite useless, so this is why I think 
> there's a solution.
> 
> Any thoughts?
> 
> -- 
> Derek E. Lewis
> delewis at acm.org
> http://riemann.solnetworks.net/~dlewis
> 
> _______________________________________________
> tools-linking mailing list
> tools-linking at opensolaris.org

-- 
Adam Leventhal, Solaris Kernel Development       http://blogs.sun.com/ahl

Reply via email to