mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
Simplify vector lane handling math a bit. No functional change intended.
llvm-svn: 187783
This commit is contained in:
parent
70290dd386
commit
4a0f26ca0c
@ -3886,12 +3886,10 @@ static bool isUNPCKLMask(ArrayRef<int> Mask, EVT VT,
|
||||
unsigned NumLanes = VT.getSizeInBits()/128;
|
||||
unsigned NumLaneElts = NumElts/NumLanes;
|
||||
|
||||
for (unsigned l = 0; l != NumLanes; ++l) {
|
||||
for (unsigned i = l*NumLaneElts, j = l*NumLaneElts;
|
||||
i != (l+1)*NumLaneElts;
|
||||
i += 2, ++j) {
|
||||
int BitI = Mask[i];
|
||||
int BitI1 = Mask[i+1];
|
||||
for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
|
||||
for (unsigned i = 0, j = l; i != NumLaneElts; i += 2, ++j) {
|
||||
int BitI = Mask[l+i];
|
||||
int BitI1 = Mask[l+i+1];
|
||||
if (!isUndefOrEqual(BitI, j))
|
||||
return false;
|
||||
if (V2IsSplat) {
|
||||
@ -3925,11 +3923,10 @@ static bool isUNPCKHMask(ArrayRef<int> Mask, EVT VT,
|
||||
unsigned NumLanes = VT.getSizeInBits()/128;
|
||||
unsigned NumLaneElts = NumElts/NumLanes;
|
||||
|
||||
for (unsigned l = 0; l != NumLanes; ++l) {
|
||||
for (unsigned i = l*NumLaneElts, j = (l*NumLaneElts)+NumLaneElts/2;
|
||||
i != (l+1)*NumLaneElts; i += 2, ++j) {
|
||||
int BitI = Mask[i];
|
||||
int BitI1 = Mask[i+1];
|
||||
for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
|
||||
for (unsigned i = 0, j = l+NumLaneElts/2; i != NumLaneElts; i += 2, ++j) {
|
||||
int BitI = Mask[l+i];
|
||||
int BitI1 = Mask[l+i+1];
|
||||
if (!isUndefOrEqual(BitI, j))
|
||||
return false;
|
||||
if (V2IsSplat) {
|
||||
@ -3970,12 +3967,10 @@ static bool isUNPCKL_v_undef_Mask(ArrayRef<int> Mask, EVT VT, bool HasInt256) {
|
||||
unsigned NumLanes = VT.getSizeInBits()/128;
|
||||
unsigned NumLaneElts = NumElts/NumLanes;
|
||||
|
||||
for (unsigned l = 0; l != NumLanes; ++l) {
|
||||
for (unsigned i = l*NumLaneElts, j = l*NumLaneElts;
|
||||
i != (l+1)*NumLaneElts;
|
||||
i += 2, ++j) {
|
||||
int BitI = Mask[i];
|
||||
int BitI1 = Mask[i+1];
|
||||
for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
|
||||
for (unsigned i = 0, j = l; i != NumLaneElts; i += 2, ++j) {
|
||||
int BitI = Mask[l+i];
|
||||
int BitI1 = Mask[l+i+1];
|
||||
|
||||
if (!isUndefOrEqual(BitI, j))
|
||||
return false;
|
||||
@ -4005,11 +4000,10 @@ static bool isUNPCKH_v_undef_Mask(ArrayRef<int> Mask, EVT VT, bool HasInt256) {
|
||||
unsigned NumLanes = VT.getSizeInBits()/128;
|
||||
unsigned NumLaneElts = NumElts/NumLanes;
|
||||
|
||||
for (unsigned l = 0; l != NumLanes; ++l) {
|
||||
for (unsigned i = l*NumLaneElts, j = (l*NumLaneElts)+NumLaneElts/2;
|
||||
i != (l+1)*NumLaneElts; i += 2, ++j) {
|
||||
int BitI = Mask[i];
|
||||
int BitI1 = Mask[i+1];
|
||||
for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
|
||||
for (unsigned i = 0, j = l+NumLaneElts/2; i != NumLaneElts; i += 2, ++j) {
|
||||
int BitI = Mask[l+i];
|
||||
int BitI1 = Mask[l+i+1];
|
||||
if (!isUndefOrEqual(BitI, j))
|
||||
return false;
|
||||
if (!isUndefOrEqual(BitI1, j))
|
||||
|
Loading…
Reference in New Issue
Block a user