Lines Matching refs:restrictions

365 static bool HasVectorRestrictions(uint64_t restrictions, uint64_t tested) {  in HasVectorRestrictions()  argument
366 return (restrictions & tested) != 0; in HasVectorRestrictions()
1744 uint64_t restrictions = kNone; in VectorizeDef() local
1758 restrictions |= kNoHiBits; in VectorizeDef()
1760 if (TrySetVectorType(type, &restrictions) && in VectorizeDef()
1763 VectorizeUse(node, value, generate_code, type, restrictions)) { in VectorizeDef()
1781 if (VectorizeSADIdiom(node, instruction, generate_code, type, restrictions) || in VectorizeDef()
1782 VectorizeDotProdIdiom(node, instruction, generate_code, type, restrictions) || in VectorizeDef()
1783 (TrySetVectorType(type, &restrictions) && in VectorizeDef()
1784 VectorizeUse(node, instruction, generate_code, type, restrictions))) { in VectorizeDef()
1803 return VectorizeIfCondition(node, instruction, generate_code, restrictions); in VectorizeDef()
1815 uint64_t restrictions) { in VectorizeUse() argument
1835 if (is_string_char_at && (HasVectorRestrictions(restrictions, kNoStringCharAt))) { in VectorizeUse()
1861 if (HasVectorRestrictions(restrictions, kNoReduction)) { in VectorizeUse()
1888 VectorizeUse(node, opa, generate_code, type, restrictions | kNoHiBits)) || in VectorizeUse()
1891 VectorizeUse(node, opa, generate_code, type, restrictions))) { in VectorizeUse()
1906 if (TrySetVectorType(from, &restrictions) && in VectorizeUse()
1907 VectorizeUse(node, opa, generate_code, from, restrictions)) { in VectorizeUse()
1918 if (VectorizeUse(node, opa, generate_code, type, restrictions)) { in VectorizeUse()
1928 if ((instruction->IsMul() && HasVectorRestrictions(restrictions, kNoMul)) || in VectorizeUse()
1929 (instruction->IsDiv() && HasVectorRestrictions(restrictions, kNoDiv))) { in VectorizeUse()
1935 if (VectorizeUse(node, opa, generate_code, type, restrictions) && in VectorizeUse()
1936 VectorizeUse(node, opb, generate_code, type, restrictions)) { in VectorizeUse()
1944 if (VectorizeHalvingAddIdiom(node, instruction, generate_code, type, restrictions)) { in VectorizeUse()
1952 if ((HasVectorRestrictions(restrictions, kNoShift)) || in VectorizeUse()
1953 (instruction->IsShr() && HasVectorRestrictions(restrictions, kNoShr))) { in VectorizeUse()
1955 } else if (HasVectorRestrictions(restrictions, kNoHiBits)) { in VectorizeUse()
1973 if (VectorizeUse(node, r, generate_code, type, restrictions) && in VectorizeUse()
1989 if (HasVectorRestrictions(restrictions, kNoAbs)) { in VectorizeUse()
1991 } else if (HasVectorRestrictions(restrictions, kNoHiBits) && in VectorizeUse()
2000 if (VectorizeUse(node, r, generate_code, type, restrictions)) { in VectorizeUse()
2017 bool HLoopOptimization::TrySetVectorType(DataType::Type type, uint64_t* restrictions) { in TrySetVectorType() argument
2024 *restrictions |= kNoIfCond; in TrySetVectorType()
2029 *restrictions |= kNoDiv | kNoReduction | kNoDotProd; in TrySetVectorType()
2033 *restrictions |= kNoDiv | kNoStringCharAt | kNoReduction | kNoDotProd; in TrySetVectorType()
2036 *restrictions |= kNoDiv | kNoWideSAD; in TrySetVectorType()
2050 *restrictions |= kNoDiv | in TrySetVectorType()
2059 *restrictions |= kNoDiv | in TrySetVectorType()
2067 *restrictions |= kNoDiv | in TrySetVectorType()
2076 *restrictions |= kNoDiv | kNoSAD; in TrySetVectorType()
2079 *restrictions |= kNoDiv | kNoSAD | kNoIfCond; in TrySetVectorType()
2082 *restrictions |= kNoReduction | kNoIfCond; in TrySetVectorType()
2085 *restrictions |= kNoReduction | kNoIfCond; in TrySetVectorType()
2094 *restrictions |= kNoIfCond; in TrySetVectorType()
2099 *restrictions |= kNoDiv; in TrySetVectorType()
2103 *restrictions |= kNoDiv; in TrySetVectorType()
2106 *restrictions |= kNoDiv; in TrySetVectorType()
2109 *restrictions |= kNoDiv | kNoMul; in TrySetVectorType()
2112 *restrictions |= kNoReduction; in TrySetVectorType()
2115 *restrictions |= kNoReduction; in TrySetVectorType()
2125 *restrictions |= kNoIfCond; in TrySetVectorType()
2131 *restrictions |= kNoMul | in TrySetVectorType()
2141 *restrictions |= kNoDiv | in TrySetVectorType()
2149 *restrictions |= kNoDiv | in TrySetVectorType()
2156 *restrictions |= kNoDiv | kNoSAD; in TrySetVectorType()
2159 *restrictions |= kNoMul | kNoDiv | kNoShr | kNoAbs | kNoSAD; in TrySetVectorType()
2162 *restrictions |= kNoReduction; in TrySetVectorType()
2165 *restrictions |= kNoReduction; in TrySetVectorType()
2498 uint64_t restrictions) { in VectorizeHalvingAddIdiom() argument
2525 if ((is_unsigned && HasVectorRestrictions(restrictions, kNoUnsignedHAdd)) || in VectorizeHalvingAddIdiom()
2526 (!is_unsigned && HasVectorRestrictions(restrictions, kNoSignedHAdd)) || in VectorizeHalvingAddIdiom()
2527 (!is_rounded && HasVectorRestrictions(restrictions, kNoUnroundedHAdd))) { in VectorizeHalvingAddIdiom()
2537 if (VectorizeUse(node, r, generate_code, type, restrictions) && in VectorizeHalvingAddIdiom()
2538 VectorizeUse(node, s, generate_code, type, restrictions)) { in VectorizeHalvingAddIdiom()
2571 uint64_t restrictions) { in VectorizeSADIdiom() argument
2601 if (!TrySetVectorType(sub_type, &restrictions) || in VectorizeSADIdiom()
2602 HasVectorRestrictions(restrictions, kNoSAD) || in VectorizeSADIdiom()
2603 (reduction_type != sub_type && HasVectorRestrictions(restrictions, kNoWideSAD))) { in VectorizeSADIdiom()
2612 if (VectorizeUse(node, acc, generate_code, sub_type, restrictions) && in VectorizeSADIdiom()
2613 VectorizeUse(node, r, generate_code, sub_type, restrictions) && in VectorizeSADIdiom()
2614 VectorizeUse(node, s, generate_code, sub_type, restrictions)) { in VectorizeSADIdiom()
2651 uint64_t restrictions) { in VectorizeDotProdIdiom() argument
2674 if (!TrySetVectorType(op_type, &restrictions) || in VectorizeDotProdIdiom()
2675 HasVectorRestrictions(restrictions, kNoDotProd)) { in VectorizeDotProdIdiom()
2686 if (VectorizeUse(node, acc, generate_code, op_type, restrictions) && in VectorizeDotProdIdiom()
2687 VectorizeUse(node, r, generate_code, op_type, restrictions) && in VectorizeDotProdIdiom()
2688 VectorizeUse(node, s, generate_code, op_type, restrictions)) { in VectorizeDotProdIdiom()
2720 uint64_t restrictions) { in VectorizeIfCondition() argument
2760 restrictions |= kNoHiBits; in VectorizeIfCondition()
2763 if (!TrySetVectorType(type, &restrictions) || in VectorizeIfCondition()
2764 HasVectorRestrictions(restrictions, kNoIfCond)) { in VectorizeIfCondition()
2773 if (VectorizeUse(node, opa_promoted, generate_code, type, restrictions) && in VectorizeIfCondition()
2774 VectorizeUse(node, opb_promoted, generate_code, type, restrictions)) { in VectorizeIfCondition()