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