[lsb-discuss] appchk - command line processing

Nick Stoughton nick at usenix.org
Thu Jun 28 13:16:14 PDT 2007

On Thu, 2007-06-28 at 15:06 -0400, Robert Schweikert wrote:
> Wichmann, Mats D wrote:
> <snip>
> > Let's think of an example:
> >
> > an app wants to make use of specific hardware, for
> > example optimizations it could do based on a
> > particular processor chip.  The LSB says to be
> > fully conforming you must use the instruction set
> > specified, for example the "i486" equivalent for
> > x86.  
> Now I'm somewhat getting lost as appchck does no evaluate the 
> instructions, only called symbols. AFAIK I can build an application 
> which will only run on chips with SSE2 instructions, i.e. P4 and better 
> and still be fully LSB compliant, right? If not I have a bigger problem 
> than just missing symbols.

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."

Nick Stoughton                          Cell: 510 388 1413
USENIX Standards Liaison                Fax:  510 548 5738

More information about the lsb-discuss mailing list