[lsb-discuss] appchk - command line processing
robert.schweikert at mathworks.com
Fri Jun 29 09:11:40 PDT 2007
Nick Stoughton wrote:
> On Thu, 2007-06-28 at 15:06 -0400, Robert Schweikert wrote:
> To conform, your application must run with equivalent functionality on
> all 486 and up. It can contain SSE2 instructions, so long as there is a
> path for lesser processors to avoid those advanced instructions.
> The IA32 spec says, in 8.1.1, "Only the features of the Intel486
> processor instruction set may be assumed to be present. An application
> should determine if any additional instruction set features are
> available before using those additional features. If a feature is not
> present, then a conforming application shall not use it."
Ooops, big surprise on my part. Most people will not read this, I am
prove of that. Thus we should test this somehow, yes this will be very
difficult. Or we provide a different way (see below).
What this means is that LSB certification on x86 will most likely be out
of the question for most HPC apps. The reason is that generating code
for both 486 and P4 or better in the same binary generally bloats the
object code to an unacceptable size.
I think the LSB should provide a mechanism for ISVs to restrict the
instruction set, such as "Our app only runs on P4 and better" and still
be LSB compliant. For HPC applications it simply makes no sense to
generate a binary which runs on hopelessly out dated hardware. While
some HPC apps will probably drop 32 bit support in the not too distant
future others will continue support. In practice no user of these apps
has a 486 machine either.
Robert Schweikert MAY THE SOURCE BE WITH YOU
(robert.schweikert at mathworks.com) LINUX
The MathWorks Inc.
Phone : 508-647-2042
More information about the lsb-discuss