This change implements the following three logical vector operations:
- veqv (vector equivalence)
- vnand
- vorc
I increased the AddedComplexity for these instructions to 500 to ensure they are generated instead of issuing other VSX instructions.
Differential D7469
[PowerPC] Implement miscellaneous vector logical operations introduced in POWER8 kbarton on Feb 6 2015, 8:27 AM. Authored by
Details
Diff Detail Event TimelineComment Actions This LGTM -- could you expand on the FIXME to indicate what we discussed the other day? I.e., that the patterns should be differentiated by HasVSX and !HasVSX so that uses of AddedComplexity are minimized? Comment Actions LGTM too. My hope is that if we disable competing Altivec patterns when VSX is enabled (thus allowing the VSX patterns to be selected, which reduces register pressure), then we won't need the added complexity for the VSX patterns at all. Another option might be to treat the added complexity for VSX patterns in a more principled way (adding only 1 or 2 under the theory that using VSX over Altivec could save one or two extra copies from the register allocator). Comment Actions How is the following: FIXME: Use AddedComplexity > 400 to ensure these patterns match before the Comment Actions then -> than
LGTM, thanks! |