Patent ID: 8196127

Claim:
An information handling system (IHS) comprising: a processor capable of processing program code that includes data parallel select processing operations; and a memory coupled to the processor, the memory including a compiler, wherein the compiler: receives an instruction stream including a plurality of instructions that form the program code, the instructions being related to both scalar and vector data; forms hyperblocks from the instruction stream thus providing an instruction stream with hyperblocks; injects data parallel select instructions into the instruction stream with hyperblocks to form a modified instruction stream wherein conditional test and branch instructions are replaced with data parallel select instructions; revises the modified instruction stream to enhance execution of the data parallel select instructions by performing select promotion operations on the modified instruction stream, wherein the select promotion operations: identify a program sequence in the modified instruction stream wherein a select operation is associated with two selection sources corresponding to two operations of the same type, the two selection sources including input operands, the select operation yielding a result computation; and replace the result computation of the select operation with at least one other select operation corresponding to a selection of at least one of the input operands, the output of the at least one other select operation feeding another operation of the same type, thus providing a revised modified instruction stream; and generates vectorized code from the revised modified instruction stream.