ispc/ispc — pull request #686 by ifilippov (2013-12-17 15:13:32+00:00)
Title: Packed_store_active2

These changes add new builtin "packed_store_active2". Its semantics are the same as in packed_store_array, but it has some performance improvements. We change the main loop where we copy elements only under the condition of corresponding mask element is on to the "always write" method when we copy all elements but change their positions only if corresponding mask element is on. Also we added zext instruction to remove unused cltq instructions in asm code.

This implementation has some limitations: 1. you should keep array with incremented length. 2. you can operate with arrays with length less than 2^32.