Lines Matching defs:SourceHalfMask
13845 MutableArrayRef<int> SourceHalfMask,
13850 SourceHalfMask[InPlaceInputs[0] - HalfOffset] =
13858 SourceHalfMask[Input - HalfOffset] = Input - HalfOffset;
13865 SourceHalfMask[InPlaceInputs[0] - HalfOffset] =
13870 SourceHalfMask[AdjIndex - HalfOffset] = InPlaceInputs[1] - HalfOffset;
13883 MutableArrayRef<int> SourceHalfMask, MutableArrayRef<int> HalfMask,
13886 auto isWordClobbered = [](ArrayRef<int> SourceHalfMask, int Word) {
13887 return SourceHalfMask[Word] >= 0 && SourceHalfMask[Word] != Word;
13889 auto isDWordClobbered = [&isWordClobbered](ArrayRef<int> SourceHalfMask,
13893 return isWordClobbered(SourceHalfMask, LowWord) ||
13894 isWordClobbered(SourceHalfMask, HighWord);
13905 if (isWordClobbered(SourceHalfMask, Input - SourceOffset)) {
13906 if (SourceHalfMask[SourceHalfMask[Input - SourceOffset]] < 0) {
13907 SourceHalfMask[SourceHalfMask[Input - SourceOffset]] =
13911 if (M == SourceHalfMask[Input - SourceOffset] + SourceOffset)
13914 M = SourceHalfMask[Input - SourceOffset] + SourceOffset;
13916 assert(SourceHalfMask[SourceHalfMask[Input - SourceOffset]] ==
13923 Input = SourceHalfMask[Input - SourceOffset] + SourceOffset;
13950 if (isWordClobbered(SourceHalfMask, IncomingInputs[0] - SourceOffset)) {
13951 int InputFixed = find(SourceHalfMask, -1) - std::begin(SourceHalfMask) +
13953 SourceHalfMask[InputFixed - SourceOffset] =
13961 isDWordClobbered(SourceHalfMask, IncomingInputs[0] - SourceOffset)) {
13971 if (!isWordClobbered(SourceHalfMask, InputsFixed[0]) &&
13972 SourceHalfMask[InputsFixed[0] ^ 1] < 0) {
13973 SourceHalfMask[InputsFixed[0]] = InputsFixed[0];
13974 SourceHalfMask[InputsFixed[0] ^ 1] = InputsFixed[1];
13976 } else if (!isWordClobbered(SourceHalfMask, InputsFixed[1]) &&
13977 SourceHalfMask[InputsFixed[1] ^ 1] < 0) {
13978 SourceHalfMask[InputsFixed[1]] = InputsFixed[1];
13979 SourceHalfMask[InputsFixed[1] ^ 1] = InputsFixed[0];
13981 } else if (SourceHalfMask[2 * ((InputsFixed[0] / 2) ^ 1)] < 0 &&
13982 SourceHalfMask[2 * ((InputsFixed[0] / 2) ^ 1) + 1] < 0) {
13986 SourceHalfMask[2 * ((InputsFixed[0] / 2) ^ 1)] = InputsFixed[0];
13987 SourceHalfMask[2 * ((InputsFixed[0] / 2) ^ 1) + 1] = InputsFixed[1];
13996 assert((SourceHalfMask[i] < 0 || SourceHalfMask[i] == i) &&
14001 SourceHalfMask[InputsFixed[0] ^ 1] = InputsFixed[1];
14002 SourceHalfMask[InputsFixed[1]] = InputsFixed[0] ^ 1;