Lines Matching +defs:symbol +defs:function

135 /// Verifies `symbol`'s use in `op` to ensure the symbol is a valid and
137 static LogicalResult verifySymbolAttrUse(FlatSymbolRefAttr symbol,
140 StringRef name = symbol.getValue();
142 symbolTable.lookupNearestSymbolFrom<LLVMFuncOp>(op, symbol.getAttr());
145 << name << "' does not reference a valid LLVM function";
464 // Extract the result type from the trailing function type.
470 "expected trailing function type with one argument and one result");
853 /// Driver function around `verifyStructIndices`.
1120 /// Verify that an inlinable callsite of a debug-info-bearing function in a
1121 /// debug-info-bearing function has a debug location attached to it. This
1140 << "inlinable function call in a function with a DISubprogram "
1153 // Verify the variadic callee type is a variadic function type.
1156 "expected var_callee_type to be a variadic function type");
1237 << "' does not reference a symbol in the current scope";
1241 << "' does not reference a valid LLVM function";
1278 return emitOpError() << "expected function call to produce a value";
1283 << "calling function with void result must not produce values";
1287 << "expected LLVM function call to produce 0 or 1 result";
1309 // Print the direct callee if present as a function attribute, or an indirect
1340 // Reconstruct the function MLIR function type from operand and result types.
1364 "expected trailing function type");
1367 "expected function with 0 or 1 result");
1375 // Append the function input types to resolve the call operation
1387 /// Parses an optional function pointer operand before the call argument list
1388 /// for indirect calls, or stops parsing at the function identifier otherwise.
1431 // <operation> ::= `llvm.call` (cconv)? (tailcallkind)? (function-id | ssa-use)
1435 // attribute-dict? `:` (type `,`)? function-type
1456 // Parse a function pointer for indirect calls.
1461 // Parse a function identifier for direct calls.
1466 // Parse the function arguments.
1613 // Either function name or pointer
1649 // <operation> ::= `llvm.invoke` (cconv)? (function-id | ssa-use)
1655 // attribute-dict? `:` (type `,`)? function-type
1673 // Parse a function pointer for indirect calls.
1678 // Parse a function identifier for direct calls.
1682 // Parse the function arguments.
1716 // Parse the trailing type list and resolve the function operands.
1756 "llvm.landingpad needs to be in a function with a personality");
1999 diag.attachNote(parent->getLoc()) << "when returning from function";
2006 diag.attachNote(parent->getLoc()) << "when returning from function";
2011 diag.attachNote(parent->getLoc()) << "when returning from function";
2041 Operation *symbol =
2044 auto global = dyn_cast_or_null<GlobalOp>(symbol);
2045 auto function = dyn_cast_or_null<LLVMFuncOp>(symbol);
2047 if (!global && !function)
2059 // AddressOfOp constant-folds to the global symbol name.
2186 return op->emitError() << "expected comdat symbol";
2194 // `(` attribute? `)` (`comdat(` symbol-ref-id `)`)?
2471 // Add the entry block to the function.
2473 assert(empty() && "function already has an entry block");
2518 // Builds an LLVM function type from the given lists of input and output types.
2527 parser.emitError(loc, "failed to construct function type: expected zero or "
2528 "one function result");
2536 parser.emitError(loc, "failed to construct function type: expected LLVM "
2537 "type for function arguments");
2547 parser.emitError(loc, "failed to construct function type: expected LLVM "
2548 "type for function results")
2556 // Parses an LLVM function.
2558 // operation ::= `llvm.func` linkage? cconv? function-signature
2559 // (`comdat(` symbol-ref-id `)`)?
2560 // function-attributes?
2561 // function-body
2699 // Print the body if this is not an external function.
2758 "inside a function";
2764 "function";
3677 /// Verify LLVMIR function argument attributes.
3699 // Check to see if this function has a void return with a result attribute
3732 if (auto symbol = dyn_cast<FlatSymbolRefAttr>(value))
3734 return builder.create<LLVM::AddressOfOp>(loc, type, symbol);