Lines Matching defs:parser

579       SPIRVKernelParser *parser = reinterpret_cast<SPIRVKernelParser *>(data);
583 parser->parseName(ins);
586 parser->parseEntryPoint(ins);
589 parser->parseFunction(ins);
592 parser->parseFunctionParam(ins);
596 parser->curKernel = NULL;
599 parser->parseTypePointer(ins);
602 parser->parseOpTypeImage(ins);
605 parser->parseOpString(ins);
608 parser->parseOpDecorate(ins);
611 parser->parseOpGroupDecorate(ins);
614 parser->parseExecutionMode(ins);
619 parser->parseLiteralType(ins);
624 parser->parseSpecConstant(ins);
675 SPIRVKernelParser parser;
677 if (!parser.parseBinary(*spvbin, logger))
680 *num_kernels = parser.kernels.size();
681 *num_spec_constants = parser.specConstants.size();
688 for (unsigned i = 0; i < parser.kernels.size(); i++) {
689 kernels[i].name = strdup(parser.kernels[i].name.c_str());
690 kernels[i].num_args = parser.kernels[i].args.size();
691 kernels[i].vec_hint_size = parser.kernels[i].vecHint >> 16;
692 kernels[i].vec_hint_type = (enum clc_vec_hint_type)(parser.kernels[i].vecHint & 0xFFFF);
693 memcpy(kernels[i].local_size, parser.kernels[i].localSize, sizeof(kernels[i].local_size));
694 memcpy(kernels[i].local_size_hint, parser.kernels[i].localSizeHint, sizeof(kernels[i].local_size_hint));
705 if (!parser.kernels[i].args[j].name.empty())
706 args[j].name = strdup(parser.kernels[i].args[j].name.c_str());
707 args[j].type_name = strdup(parser.kernels[i].args[j].typeName.c_str());
708 args[j].address_qualifier = parser.kernels[i].args[j].addrQualifier;
709 args[j].type_qualifier = parser.kernels[i].args[j].typeQualifier;
710 args[j].access_qualifier = parser.kernels[i].args[j].accessQualifier;
719 for (unsigned i = 0; i < parser.specConstants.size(); ++i) {
720 spec_constants[i] = parser.specConstants[i].second;
971 /* The SPIR-V parser doesn't handle all extensions */