Home
last modified time | relevance | path

Searched refs:CoercionCost (Results 1 – 6 of 6) sorted by relevance

/third_party/skia/src/sksl/ir/
DSkSLType.h26 struct CoercionCost { struct
27 static CoercionCost Free() { return { 0, 0, false }; } in Free() argument
28 static CoercionCost Normal(int cost) { return { cost, 0, false }; } in Normal() argument
29 static CoercionCost Narrowing(int cost) { return { 0, cost, false }; } in Narrowing() argument
30 static CoercionCost Impossible() { return { 0, 0, true }; } in Impossible() argument
37 CoercionCost operator+(CoercionCost rhs) const { argument
44 bool operator<(CoercionCost rhs) const {
333 CoercionCost coercionCost(const Type& other) const;
DSkSLType.cpp475 CoercionCost Type::coercionCost(const Type& other) const { in coercionCost()
477 return CoercionCost::Free(); in coercionCost()
483 return CoercionCost::Impossible(); in coercionCost()
486 return CoercionCost::Impossible(); in coercionCost()
492 return CoercionCost::Free(); in coercionCost()
494 return CoercionCost::Impossible(); in coercionCost()
496 return CoercionCost::Normal(other.priority() - this->priority()); in coercionCost()
498 return CoercionCost::Narrowing(this->priority() - other.priority()); in coercionCost()
505 return CoercionCost::Normal((int) i + 1); in coercionCost()
509 return CoercionCost::Impossible(); in coercionCost()
DSkSLFunctionCall.cpp815 CoercionCost FunctionCall::CallCost(const Context& context, const FunctionDeclaration& function, in CallCost()
819 return CoercionCost::Impossible(); in CallCost()
822 return CoercionCost::Impossible(); in CallCost()
827 return CoercionCost::Impossible(); in CallCost()
829 CoercionCost total = CoercionCost::Free(); in CallCost()
843 CoercionCost bestCost = CoercionCost::Impossible(); in FindBestFunctionForCall()
846 CoercionCost cost = CallCost(context, *f, arguments); in FindBestFunctionForCall()
DSkSLFunctionCall.h68 static CoercionCost CallCost(const Context& context,
DSkSLExpression.h176 virtual CoercionCost coercionCost(const Type& target) const { in coercionCost()
/third_party/skia/src/sksl/
DSkSLOperators.cpp263 CoercionCost rightToLeft = right.coercionCost(left), in determineBinaryType()
372 CoercionCost rightToLeftCost = right.coercionCost(left); in determineBinaryType()
373 CoercionCost leftToRightCost = isAssignment ? CoercionCost::Impossible() in determineBinaryType()