Lines Matching refs:baseExpression
2477 TIntermTyped *TParseContext::addIndexExpression(TIntermTyped *baseExpression, const TSourceLoc &loc… in addIndexExpression() argument
2481 if(!baseExpression->isArray() && !baseExpression->isMatrix() && !baseExpression->isVector()) in addIndexExpression()
2483 if(baseExpression->getAsSymbolNode()) in addIndexExpression()
2486 baseExpression->getAsSymbolNode()->getSymbol().c_str()); in addIndexExpression()
2509 …if(baseExpression->getType().getQualifier() == EvqConstExpr && baseExpression->getAsConstantUnion(… in addIndexExpression()
2511 if(baseExpression->isArray()) in addIndexExpression()
2514 indexedExpression = addConstArrayNode(index, baseExpression, location); in addIndexExpression()
2516 else if(baseExpression->isVector()) in addIndexExpression()
2522 indexedExpression = addConstVectorNode(fields, baseExpression, location); in addIndexExpression()
2524 else if(baseExpression->isMatrix()) in addIndexExpression()
2527 indexedExpression = addConstMatrixNode(index, baseExpression, location); in addIndexExpression()
2534 if(baseExpression->isArray()) in addIndexExpression()
2536 if(index >= baseExpression->getType().getArraySize()) in addIndexExpression()
2543 safeIndex = baseExpression->getType().getArraySize() - 1; in addIndexExpression()
2546 else if((baseExpression->isVector() || baseExpression->isMatrix()) && in addIndexExpression()
2547 baseExpression->getType().getNominalSize() <= index) in addIndexExpression()
2554 safeIndex = baseExpression->getType().getNominalSize() - 1; in addIndexExpression()
2566 …indexedExpression = intermediate.addIndex(EOpIndexDirect, baseExpression, indexExpression, locatio… in addIndexExpression()
2571 if(baseExpression->isInterfaceBlock()) in addIndexExpression()
2577 else if(baseExpression->getQualifier() == EvqFragmentOut) in addIndexExpression()
2583 …indexedExpression = intermediate.addIndex(EOpIndexIndirect, baseExpression, indexExpression, locat… in addIndexExpression()
2592 else if(baseExpression->isArray()) in addIndexExpression()
2594 const TType &baseType = baseExpression->getType(); in addIndexExpression()
2607 indexedExpression->setType(TType(baseExpression->getBasicType(), baseExpression->getPrecision(), in addIndexExpression()
2608 EvqTemporary, static_cast<unsigned char>(baseExpression->getNominalSize()), in addIndexExpression()
2609 static_cast<unsigned char>(baseExpression->getSecondarySize()))); in addIndexExpression()
2612 if(baseExpression->getType().getQualifier() == EvqConstExpr) in addIndexExpression()
2617 else if(baseExpression->isMatrix()) in addIndexExpression()
2619 …TQualifier qualifier = baseExpression->getType().getQualifier() == EvqConstExpr ? EvqConstExpr : E… in addIndexExpression()
2620 indexedExpression->setType(TType(baseExpression->getBasicType(), baseExpression->getPrecision(), in addIndexExpression()
2621 qualifier, static_cast<unsigned char>(baseExpression->getSecondarySize()))); in addIndexExpression()
2623 else if(baseExpression->isVector()) in addIndexExpression()
2625 …TQualifier qualifier = baseExpression->getType().getQualifier() == EvqConstExpr ? EvqConstExpr : E… in addIndexExpression()
2626 …indexedExpression->setType(TType(baseExpression->getBasicType(), baseExpression->getPrecision(), q… in addIndexExpression()
2630 indexedExpression->setType(baseExpression->getType()); in addIndexExpression()
2636 TIntermTyped *TParseContext::addFieldSelectionExpression(TIntermTyped *baseExpression, const TSourc… in addFieldSelectionExpression() argument
2641 if(baseExpression->isArray()) in addFieldSelectionExpression()
2647 if(baseExpression->isVector()) in addFieldSelectionExpression()
2650 if(!parseVectorFields(fieldString, baseExpression->getNominalSize(), fields, fieldLocation)) in addFieldSelectionExpression()
2657 if(baseExpression->getAsConstantUnion()) in addFieldSelectionExpression()
2660 indexedExpression = addConstVectorNode(fields, baseExpression, fieldLocation); in addFieldSelectionExpression()
2664 indexedExpression = baseExpression; in addFieldSelectionExpression()
2671 indexedExpression = intermediate.addIndex(EOpVectorSwizzle, baseExpression, index, dotLocation); in addFieldSelectionExpression()
2672 indexedExpression->setType(TType(baseExpression->getBasicType(), baseExpression->getPrecision(), in addFieldSelectionExpression()
2673 …baseExpression->getQualifier() == EvqConstExpr ? EvqConstExpr : EvqTemporary, (unsigned char)vecto… in addFieldSelectionExpression()
2676 else if(baseExpression->getBasicType() == EbtStruct) in addFieldSelectionExpression()
2679 const TFieldList &fields = baseExpression->getType().getStruct()->fields(); in addFieldSelectionExpression()
2684 indexedExpression = baseExpression; in addFieldSelectionExpression()
2699 if(baseExpression->getType().getQualifier() == EvqConstExpr) in addFieldSelectionExpression()
2701 indexedExpression = addConstStruct(fieldString, baseExpression, dotLocation); in addFieldSelectionExpression()
2705 indexedExpression = baseExpression; in addFieldSelectionExpression()
2719 …indexedExpression = intermediate.addIndex(EOpIndexDirectStruct, baseExpression, index, dotLocation… in addFieldSelectionExpression()
2727 indexedExpression = baseExpression; in addFieldSelectionExpression()
2731 else if(baseExpression->isInterfaceBlock()) in addFieldSelectionExpression()
2734 const TFieldList &fields = baseExpression->getType().getInterfaceBlock()->fields(); in addFieldSelectionExpression()
2739 indexedExpression = baseExpression; in addFieldSelectionExpression()
2757 indexedExpression = intermediate.addIndex(EOpIndexDirectInterfaceBlock, baseExpression, index, in addFieldSelectionExpression()
2765 indexedExpression = baseExpression; in addFieldSelectionExpression()
2783 indexedExpression = baseExpression; in addFieldSelectionExpression()