Home
last modified time | relevance | path

Searched full:symboltable (Results 1 – 25 of 371) sorted by relevance

12345678910>>...15

/llvm-project/mlir/lib/IR/
H A DSymbolTable.cpp1 //===- SymbolTable.cpp - MLIR Symbol Table Class --------------------------===//
9 #include "mlir/IR/SymbolTable.h"
29 return op->getAttrOfType<StringAttr>(SymbolTable::getSymbolAttrName()); in getNameIfSymbol()
57 StringAttr::get(ctx, SymbolTable::getSymbolAttrName()); in collectValidReferencesFor()
60 if (!symbolTableOp->hasTrait<OpTrait::SymbolTable>()) in collectValidReferencesFor()
92 if (!op.hasTrait<OpTrait::SymbolTable>()) { in walkSymbolTable()
108 if (result != WalkResult::advance() || op->hasTrait<OpTrait::SymbolTable>()) in walkSymbolTable()
114 // SymbolTable
118 SymbolTable::SymbolTable(Operatio function in SymbolTable
512 SymbolTableCollection symbolTable; verifySymbolTable() local
1041 auto symbolTable = std::make_unique<SymbolTable>(symbolTableOp); getSymbolTable() local
1053 SymbolUserMap(SymbolTableCollection & symbolTable,Operation * symbolTableOp) SymbolUserMap() argument
[all...]
/llvm-project/mlir/include/mlir/IR/
H A DSymbolInterfaces.td26 operation resides immediately within a region that defines a `SymbolTable`.
37 return mlir::SymbolTable::getSymbolName($_op);
39 return mlir::SymbolTable::getSymbolName(this->getOperation());
46 mlir::SymbolTable::getSymbolAttrName(), name);
50 "mlir::SymbolTable::Visibility", "getVisibility", (ins), [{}],
52 return mlir::SymbolTable::getSymbolVisibility(this->getOperation());
58 return getVisibility() == mlir::SymbolTable::Visibility::Nested;
64 return getVisibility() == mlir::SymbolTable::Visibility::Private;
70 return getVisibility() == mlir::SymbolTable::Visibility::Public;
74 "void", "setVisibility", (ins "mlir::SymbolTable::Visibility":$vis), [{}],
[all …]
H A DSymbolTable.h1 //===- SymbolTable.h - MLIR Symbol Table Class ------------------*- C++ -*-===//
21 /// operations with the 'SymbolTable' trait. Inserting into and erasing from
22 /// this SymbolTable will also insert and erase from the Operation given to it
24 class SymbolTable {
27 SymbolTable(Operation *symbolTableOp);
71 ArrayRef<SymbolTable *> others);
73 ArrayRef<SymbolTable *> others);
154 /// with the 'OpTrait::SymbolTable' trait.
168 /// 'OpTrait::SymbolTable' trait. Returns nullptr if no valid symbol was
267 DenseMap<Attribute, Operation *> symbolTable; variable
[all …]
/llvm-project/mlir/unittests/IR/
H A DSymbolTableTest.cpp1 //===- SymbolTableTest.cpp - SymbolTable unit tests -----------------------===//
8 #include "mlir/IR/SymbolTable.h"
26 SymbolTable, ModuleOp, Operation *, Operation *)>;
37 SymbolTable symbolTable(module.get()); in testReplaceAllSymbolUses() local
45 LogicalResult res = replaceFn(symbolTable, module.get(), fooOp, barOp); in testReplaceAllSymbolUses()
81 testReplaceAllSymbolUses([&](auto symbolTable, auto module, auto fooOp, in TEST_F()
83 return symbolTable.replaceAllSymbolUses( in TEST_F()
90 testReplaceAllSymbolUses([&](auto symbolTable, auto module, auto fooOp, in TEST_F() argument
92 return symbolTable.replaceAllSymbolUses( in TEST_F()
100 testReplaceAllSymbolUses([&](auto symbolTable, auto module, auto fooOp, in TEST_F() argument
[all …]
/llvm-project/flang/lib/Optimizer/Transforms/
H A DAssumedRankOpConversion.cpp62 mlir::SymbolTable *symbolTable, fir::KindMapping kindMap) in ReboxAssumedRankConv() argument
64 symbolTable{symbolTable}, kindMap{kindMap} {}; in ReboxAssumedRankConv()
69 fir::FirOpBuilder builder{rewriter, kindMap, symbolTable}; in matchAndRewrite()
113 mlir::SymbolTable *symbolTable = nullptr; member in __anon8dc19e030111::ReboxAssumedRankConv
121 IsAssumedSizeConv(mlir::MLIRContext *context, mlir::SymbolTable *symbolTable, in IsAssumedSizeConv() argument
124 symbolTable{symbolTabl in IsAssumedSizeConv()
138 mlir::SymbolTable *symbolTable = nullptr; global() member in __anon8dc19e030111::IsAssumedSizeConv
149 mlir::SymbolTable symbolTable(mod); runOnOperation() local
[all...]
/llvm-project/mlir/test/lib/IR/
H A DTestSymbolUses.cpp28 // Test computing uses on a non symboltable op. in operateOnSymbol()
29 std::optional<SymbolTable::UseRange> symbolUses = in operateOnSymbol()
30 SymbolTable::getSymbolUses(symbol); in operateOnSymbol()
44 if (SymbolTable::symbolKnownUseEmpty(symbol, &module.getBodyRegion())) { in operateOnSymbol()
54 symbolUses = SymbolTable::getSymbolUses(symbol, &module.getBodyRegion()); in operateOnSymbol()
56 for (SymbolTable::SymbolUse symbolUse : *symbolUses) { in operateOnSymbol()
58 if (SymbolTable::lookupNearestSymbolFrom( in operateOnSymbol()
62 << *symbol->getInherentAttr(SymbolTable::getSymbolAttrName()); in operateOnSymbol()
80 SymbolTable table(module); in runOnOperation()
82 // In order to test the SymbolTable::erase method, also erase completely in runOnOperation()
[all …]
/llvm-project/mlir/lib/Dialect/LLVMIR/Transforms/
H A DAddComdats.cpp23 SymbolTable &symbolTable, ModuleOp &module) { in addComdat() argument
26 symbolTable.lookup<mlir::LLVM::ComdatOp>(comdatName); in addComdat()
32 symbolTable.insert(comdatOp); in addComdat()
50 std::unique_ptr<SymbolTable> symbolTable; in runOnOperation() local
51 auto getSymTab = [&]() -> SymbolTable & { in runOnOperation()
52 if (!symbolTable) in runOnOperation()
53 symbolTable = std::make_unique<SymbolTable>(mod); in runOnOperation()
54 return *symbolTable; in runOnOperation()
/llvm-project/mlir/test/python/ir/
H A Dsymbol_table.py34 symbol_table = SymbolTable(m1.operation)
111 SymbolTable.set_symbol_name(bar, "bam")
112 SymbolTable.replace_all_symbol_uses("bar", "bam", foo)
118 print(f"Foo symbol: {repr(SymbolTable.get_symbol_name(foo))}")
119 print(f"Bar symbol: {repr(SymbolTable.get_symbol_name(bar))}")
122 SymbolTable.set_symbol_name(bar, "baz")
123 SymbolTable.replace_all_symbol_uses("bam", "baz", m.operation)
129 print(f"Foo symbol: {repr(SymbolTable.get_symbol_name(foo))}")
130 print(f"Bar symbol: {repr(SymbolTable.get_symbol_name(bar))}")
146 print(f"Existing visibility: {repr(SymbolTable
[all...]
/llvm-project/flang/lib/Optimizer/Support/
H A DUtils.cpp20 const mlir::SymbolTable *symbolTable) { in lookupTypeInfoOp() argument
28 return fir::lookupTypeInfoOp(originalMangledTypeName, module, symbolTable); in lookupTypeInfoOp()
33 const mlir::SymbolTable *symbolTable) { in lookupTypeInfoOp() argument
34 if (symbolTable) in lookupTypeInfoOp()
35 if (auto typeInfo = symbolTable->lookup<fir::TypeInfoOp>(name)) in lookupTypeInfoOp()
42 mlir::ModuleOp module, const mlir::SymbolTable *symbolTable) { in getComponentLowerBoundsIfNonDefault() argument
44 fir::lookupTypeInfoOp(recordType, module, symbolTable); in getComponentLowerBoundsIfNonDefault()
/llvm-project/mlir/lib/Transforms/
H A DSymbolDCE.cpp16 #include "mlir/IR/SymbolTable.h"
33 SymbolTableCollection &symbolTable,
43 if (!symbolTableOp->hasTrait<OpTrait::SymbolTable>()) { in runOnOperation()
59 SymbolTableCollection symbolTable; in runOnOperation() local
60 if (failed(computeLiveness(symbolTableOp, symbolTable, symbolTableIsHidden, in runOnOperation()
67 if (!nestedSymbolTable->hasTrait<OpTrait::SymbolTable>()) in runOnOperation()
84 SymbolTableCollection &symbolTable, in computeLiveness() argument
113 if (op->hasTrait<OpTrait::SymbolTable>()) { in computeLiveness()
118 if (failed(computeLiveness(op, symbolTable, symIsHidden, liveSymbols))) in computeLiveness()
123 std::optional<SymbolTable::UseRange> uses = SymbolTable::getSymbolUses(op); in computeLiveness()
[all …]
/llvm-project/mlir/lib/Dialect/Transform/IR/
H A DUtils.cpp81 assert(target->hasTrait<OpTrait::SymbolTable>() && in mergeSymbolsInto()
82 "requires target to implement the 'SymbolTable' trait"); in mergeSymbolsInto()
83 assert(other->hasTrait<OpTrait::SymbolTable>() && in mergeSymbolsInto()
84 "requires target to implement the 'SymbolTable' trait"); in mergeSymbolsInto()
86 SymbolTable targetSymbolTable(target); in mergeSymbolsInto()
87 SymbolTable otherSymbolTable(*other); in mergeSymbolsInto()
95 for (auto &&[symbolTable, otherSymbolTable] : llvm::zip( in mergeSymbolsInto()
96 SmallVector<SymbolTable *, 2>{&targetSymbolTable, &otherSymbolTable}, in mergeSymbolsInto()
97 SmallVector<SymbolTable *, 2>{&otherSymbolTable, in mergeSymbolsInto()
99 Operation *symbolTableOp = symbolTable->getOp(); in mergeSymbolsInto()
[all …]
/llvm-project/mlir/docs/
H A DSymbolsAndSymbolTables.md30 defines a [`SymbolTable`](#symbol-table). The name of a symbol *must* be unique
31 within the parent `SymbolTable`. This name is semantically similar to an SSA
46 'SymbolTable::getSymbolAttrName()'(`sym_name`).
49 'SymbolTable::getVisibilityAttrName()'(`sym_visibility`)
62 defining a `SymbolTable`. A `SymbolTable` operation provides the container for
65 Operations defining a `SymbolTable` must use the `OpTrait::SymbolTable` trait.
157 The following are a few of the utilities provided by the `SymbolTable`:
159 * `SymbolTable
[all...]
/llvm-project/lld/wasm/
H A DSymbolTable.cpp1 //===- SymbolTable.cpp ----------------------------------------------------===//
9 #include "SymbolTable.h"
24 SymbolTable *symtab;
26 void SymbolTable::addFile(InputFile *file, StringRef symName) { in addFile()
81 void SymbolTable::compileBitcodeFiles() { in compileBitcodeFiles()
97 Symbol *SymbolTable::find(StringRef name) { in find()
104 void SymbolTable::replace(StringRef name, Symbol* sym) { in replace()
109 std::pair<Symbol *, bool> SymbolTable::insertName(StringRef name) { in insertName()
133 std::pair<Symbol *, bool> SymbolTable::insert(StringRef name, in insert()
221 DefinedFunction *SymbolTable in addSyntheticFunction()
[all...]
H A DSymbolTable.h1 //===- SymbolTable.h --------------------------------------------*- C++ -*-===//
25 // SymbolTable is a bucket of all known symbols, including defined,
29 // We put all symbols of all files to a SymbolTable, and the
30 // SymbolTable selects the "best" symbols if there are name
37 class SymbolTable {
140 extern SymbolTable *symtab;
/llvm-project/mlir/lib/Dialect/MLProgram/IR/
H A DMLProgramOps.cpp180 GlobalOp GlobalLoadOp::getGlobalOp(SymbolTableCollection &symbolTable) { in getGlobalOp() argument
183 if (auto nearest = symbolTable.lookupNearestSymbolFrom<GlobalOp>( in getGlobalOp()
192 GlobalLoadOp::verifySymbolUses(SymbolTableCollection &symbolTable) { in verifySymbolUses() argument
193 GlobalOp referrent = getGlobalOp(symbolTable); in verifySymbolUses()
210 GlobalOp GlobalLoadConstOp::getGlobalOp(SymbolTableCollection &symbolTable) { in getGlobalOp() argument
211 return symbolTable.lookupNearestSymbolFrom<GlobalOp>( in getGlobalOp()
216 GlobalLoadConstOp::verifySymbolUses(SymbolTableCollection &symbolTable) { in verifySymbolUses() argument
217 GlobalOp referrent = getGlobalOp(symbolTable); in verifySymbolUses()
237 GlobalOp GlobalLoadGraphOp::getGlobalOp(SymbolTableCollection &symbolTable) { in getGlobalOp() argument
238 return symbolTable.lookupNearestSymbolFrom<GlobalOp>( in getGlobalOp()
[all …]
/llvm-project/lld/COFF/
H A DSymbolTable.cpp1 //===- SymbolTable.cpp ----------------------------------------------------===//
9 #include "SymbolTable.h"
237 void SymbolTable::loadMinGWSymbols() { in getSymbolLocations()
297 Defined *SymbolTable::impSymbol(StringRef name) { in loadMinGWSymbols()
303 bool SymbolTable::handleMinGWAutomaticImport(Symbol *sym, StringRef name) { in loadMinGWSymbols()
356 void SymbolTable::reportProblemSymbols( in handleMinGWAutomaticImport()
408 void SymbolTable::reportUnresolvable() { in reportProblemSymbols()
435 bool SymbolTable::resolveRemainingUndefines() { in reportProblemSymbols()
519 std::pair<Symbol *, bool> SymbolTable::insert(StringRef name) { in resolveRemainingUndefines()
535 std::pair<Symbol *, bool> SymbolTable in resolveRemainingUndefines()
[all...]
/llvm-project/lld/ELF/
H A DSymbolTable.cpp1 //===- SymbolTable.cpp ----------------------------------------------------===//
16 #include "SymbolTable.h"
32 void SymbolTable::wrap(Symbol *sym, Symbol *real, Symbol *wrap) {
64 Symbol *SymbolTable::insert(StringRef name) {
101 Symbol *SymbolTable::addAndCheckDuplicate(Ctx &ctx, const Defined &newSym) {
110 Symbol *SymbolTable::find(StringRef name) { in addAndCheckDuplicate()
137 StringMap<SmallVector<Symbol *, 0>> &SymbolTable::getDemangledSyms() {
161 SmallVector<Symbol *, 0> SymbolTable::findByVersion(SymbolVersion ver) { in getDemangledSyms()
170 SmallVector<Symbol *, 0> SymbolTable::findAllByVersion(SymbolVersion ver, in findByVersion()
197 void SymbolTable in findAllByVersion()
[all...]
H A DSymbolTable.h1 //===- SymbolTable.h --------------------------------------------*- C++ -*-===//
27 // SymbolTable is a bucket of all known symbols, including defined,
31 // We put all symbols of all files to a SymbolTable, and the
32 // SymbolTable selects the "best" symbols if there are name
39 class SymbolTable {
41 SymbolTable(Ctx &ctx) : ctx(ctx) {} in getSymbols()
/llvm-project/mlir/lib/Dialect/GPU/Transforms/
H A DKernelOutlining.cpp27 #include "mlir/IR/SymbolTable.h"
360 SymbolTable symbolTable(getOperation()); in runOnOperation() local
383 auto kernelModule = createKernelModule(op, outlinedFunc, symbolTable); in runOnOperation()
384 symbolTable.insert(kernelModule, insertPt); in runOnOperation()
406 const SymbolTable &parentSymbolTable) { in createKernelModule()
408 // a SymbolTable by the caller. SymbolTable needs to be refactored to in createKernelModule()
436 SymbolTable symbolTable(kernelModul in createKernelModule()
414 SymbolTable symbolTable(kernelModule); createKernelModule() local
[all...]
/llvm-project/mlir/lib/Transforms/Utils/
H A DInliner.cpp40 Operation *op, CallGraph &cg, SymbolTableCollection &symbolTable, in walkReferencedSymbolNodes() argument
43 auto symbolUses = SymbolTable::getSymbolUses(op); in walkReferencedSymbolNodes()
47 for (const SymbolTable::SymbolUse &use : *symbolUses) { in walkReferencedSymbolNodes()
54 auto *symbolOp = symbolTable.lookupNearestSymbolFrom(symbolTableOp, in walkReferencedSymbolNodes()
87 CGUseList(Operation *op, CallGraph &cg, SymbolTableCollection &symbolTable);
123 SymbolTableCollection &symbolTable; member
128 SymbolTableCollection &symbolTable) in CGUseList() argument
129 : symbolTable(symbolTable) { in CGUseList()
148 walkReferencedSymbolNodes(&op, cg, symbolTable, alwaysLiveNode in CGUseList()
306 collectCallOps(iterator_range<Region::iterator> blocks,CallGraphNode * sourceNode,CallGraph & cg,SymbolTableCollection & symbolTable,SmallVectorImpl<ResolvedCall> & calls,bool traverseNestedCGNodes) collectCallOps() argument
419 SymbolTableCollection &symbolTable; global() member
755 SymbolTableCollection symbolTable; doInlining() local
[all...]
/llvm-project/mlir/lib/Dialect/Mesh/IR/
H A DMeshOps.cpp129 SymbolTableCollection &symbolTable) { in verifyMeshAxes()
130 mesh::MeshOp mesh = getMeshOrNull(op, meshSymbol, symbolTable); in verifyMeshAxes()
179 getMeshAndVerifyAxes(Op op, SymbolTableCollection &symbolTable) { in shardType()
181 ::getMeshAndVerify(op.getOperation(), op.getMeshAttr(), symbolTable);
381 MeshShapeOp::verifySymbolUses(SymbolTableCollection &symbolTable) { in operator ==()
382 auto mesh = ::getMeshAndVerify(getOperation(), getMeshAttr(), symbolTable); in operator ==()
538 LogicalResult ShardingOp::verifySymbolUses(SymbolTableCollection &symbolTable) { in getMeshAndVerifyAxes()
539 auto mesh = ::getMeshAndVerify(getOperation(), getMeshAttr(), symbolTable); in getMeshAndVerifyAxes()
779 ProcessMultiIndexOp::verifySymbolUses(SymbolTableCollection &symbolTable) { in build()
780 auto mesh = ::getMeshAndVerify(getOperation(), getMeshAttr(), symbolTable);
102 getMeshAndVerify(Operation * op,FlatSymbolRefAttr meshSymbol,SymbolTableCollection & symbolTable) getMeshAndVerify() argument
288 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
419 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
462 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
535 getMeshAndVerifyAxes(Op op,SymbolTableCollection & symbolTable) getMeshAndVerifyAxes() argument
707 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
733 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
758 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
797 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
823 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
851 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
882 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
909 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
938 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
963 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
994 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
1020 verifySymbolUses(SymbolTableCollection & symbolTable) verifySymbolUses() argument
[all...]
/llvm-project/mlir/lib/Interfaces/
H A DCallInterfaces.cpp19 SymbolTableCollection *symbolTable) {
26 if (symbolTable) in resolveCallable()
27 return symbolTable->lookupNearestSymbolFrom(call.getOperation(), symbolRef); in resolveCallable()
28 return SymbolTable::lookupNearestSymbolFrom(call.getOperation(), symbolRef); in resolveCallable()
22 resolveCallable(SymbolTableCollection * symbolTable) resolveCallable() argument
/llvm-project/mlir/lib/Conversion/SCFToOpenMP/
H A DSCFToOpenMP.cpp24 #include "mlir/IR/SymbolTable.h"
187 createDecl(PatternRewriter &builder, SymbolTable &symbolTable, in createDecl() argument
193 symbolTable.insert(decl); in createDecl()
247 Operation *container = SymbolTable::getNearestSymbolTable(reduce); in declareReduction()
248 SymbolTable symbolTable(container); in declareReduction() local
266 createDecl(builder, symbolTable, reduce, reductionIndex, in declareReduction()
273 createDecl(builder, symbolTable, reduce, reductionIndex, in declareReduction()
280 createDecl(builder, symbolTable, reduc in declareReduction()
[all...]
/llvm-project/mlir/lib/Analysis/
H A DCallGraph.cpp15 #include "mlir/IR/SymbolTable.h"
75 SymbolTableCollection &symbolTable, in computeCallGraph() argument
82 parentNode->addCallEdge(cg.resolveCallable(call, symbolTable)); in computeCallGraph()
96 computeCallGraph(&nested, cg, symbolTable, parentNode, resolveCalls); in computeCallGraph()
105 SymbolTableCollection symbolTable; in CallGraph() local
106 computeCallGraph(op, *this, symbolTable, /*parentNode=*/nullptr, in CallGraph()
108 computeCallGraph(op, *this, symbolTable, /*parentNode=*/nullptr, in CallGraph()
148 SymbolTableCollection &symbolTable) const { in resolveCallable()
149 Operation *callable = call.resolveCallableInTable(&symbolTable); in resolveCallable()
/llvm-project/flang/include/flang/Optimizer/Builder/
H A DFIRBuilder.h33 class SymbolTable;
58 mlir::SymbolTable *symbolTable = nullptr)
60 symbolTable{symbolTable} {} in FirOpBuilder()
62 mlir::SymbolTable *symbolTable = nullptr)
64 symbolTable{symbolTable} { in FirOpBuilder()
90 symbolTable{othe
32 class SymbolTable; global() variable
536 mlir::SymbolTable *symbolTable = nullptr; global() variable
[all...]

12345678910>>...15