A computer-implemented method analyzes a source code segment which is to be
compiled for execution by any one of several different processor types.
The method determines whether a performance advantage would be achieved by
generating a customized version of object code that can be executed by one
of the processor types compared with generating a non-customized version.
If a performance advantage would be achieved, the method generates at
least one customized object code version and a non-customized version for
the source code segment, and it generates a control section that causes
one of the object code versions to be called during execution of the
object code in accordance with an executing processor's processor type. If
no performance advantage would be achieved, the method generates a
non-customized version of the object code that can be executed by any of
the different processor types.
Een computer-uitgevoerde methode analyseert een broncodesegment dat voor uitvoering door om het even wie van verscheidene verschillende bewerkertypes moet worden gecompileerd. De methode bepaalt of een prestatiesvoordeel worden bereikt door een aangepaste versie van objecten code te produceren die door één van de bewerkertypes kan worden uitgevoerd die met het produceren van een niet-aangepaste versie worden vergeleken. Als een prestatiesvoordeel worden bereikt, produceert de methode minstens één aangepaste objecten codeversie en een niet-aangepaste versie voor het broncodesegment, en het produceert een controlesectie die veroorzaakt dat één van de objecten codeversies wordt geroepen tijdens uitvoering van de objecten code overeenkomstig het bewerkertype van een uitvoerende bewerker. Als geen prestatiesvoordeel worden bereikt, produceert de methode een niet-aangepaste versie van de objecten code die door om het even welk van de verschillende bewerkertypes kan worden uitgevoerd.