This is an archive of the discontinued LLVM Phabricator instance.

[X86][SSE] Truncate with PACKSS any input with sufficient sign-bits
ClosedPublic

Authored by RKSimon on Oct 31 2017, 2:15 PM.

Details

Summary

So far we've only been using PACKSS truncations with 'all-bits or zero-bits' patterns (vector comparison results etc.). When really we can safely use it for any case as long as the number of sign bits reach down to the last 16-bits (or 8-bits if we're truncating to bytes).

The next steps after this is add the equivalent support for PACKUS and to support packing to sub-128 bit vectors for truncating stores etc.

Diff Detail

Repository
rL LLVM

Event Timeline

RKSimon created this revision.Oct 31 2017, 2:15 PM
zvi edited edge metadata.Nov 1 2017, 2:31 AM

LGTM

This revision was automatically updated to reflect the committed changes.