Lines Matching refs:rValue
158 void accessChainStore(const glslang::TType& type, spv::Id rvalue);
159 void multiTypeStore(const glslang::TType&, spv::Id rValue);
1661 spv::Id rValue = accessChainLoad(node->getRight()->getType());
1672 rValue = createBinaryOperation(node->getOp(), decorations,
1673 convertGlslangToSpvType(node->getType()), leftRValue, rValue,
1677 assert(rValue != spv::NoResult);
1682 multiTypeStore(node->getLeft()->getType(), rValue);
1684 // assignments are expressions having an rValue after they are evaluated...
1686 builder.setAccessChainRValue(rValue);
3436 void TGlslangToSpvTraverser::accessChainStore(const glslang::TType& type, spv::Id rvalue)
3449 rvalue = builder.createTriOp(spv::OpSelect, nominalTypeId, rvalue, one, zero);
3450 } else if (builder.getTypeId(rvalue) != boolType)
3451 rvalue = builder.createBinOp(spv::OpINotEqual, boolType, rvalue, builder.makeUintConstant(0));
3460 rvalue = builder.createTriOp(spv::OpSelect, nominalTypeId, rvalue, one, zero);
3461 } else if (builder.getTypeId(rvalue) != bvecType)
3462 rvalue = builder.createBinOp(spv::OpINotEqual, bvecType, rvalue,
3473 builder.accessChainStore(rvalue,
3489 void TGlslangToSpvTraverser::multiTypeStore(const glslang::TType& type, spv::Id rValue)
3493 accessChainStore(type, rValue);
3498 spv::Id rType = builder.getTypeId(rValue);
3502 accessChainStore(type, rValue);
3516 spv::Id elementRValue = builder.createCompositeExtract(rValue, elementRType, index);
3536 spv::Id memberRValue = builder.createCompositeExtract(rValue, memberRType, m);