This is an archive of the discontinued LLVM Phabricator instance.

[X86][SLH] Regroup the instructions in isDataInvariantLoad a little. NFC
ClosedPublic

Authored by craig.topper on Jul 13 2018, 12:01 PM.

Details

Summary

-Move BSF/BSR to the same group as TZCNT/LZCNT/POPCNT.
-Split some of the bit manipulation instructions away from TZCNT/LZCNT/POPCNT. These are things like 'x & (x - 1)' which are composed of a few simple arithmetic operations. These aren't nearly as complicated/surprising as counting bits.
-Move BEXTR/BZHI into their own group. They aren't like a simple arithmethic op or the bit manipulation instructions. They're more like a shift+and.

Diff Detail

Repository
rL LLVM

Event Timeline

craig.topper created this revision.Jul 13 2018, 12:01 PM
This revision is now accepted and ready to land.Jul 13 2018, 2:14 PM
This revision was automatically updated to reflect the committed changes.