llvm-project/mlir/test/lib/TestDialect
River Riddle 9b9c647cef Add support for nested symbol references.
This change allows for adding additional nested references to a SymbolRefAttr to allow for further resolving a symbol if that symbol also defines a SymbolTable. If a referenced symbol also defines a symbol table, a nested reference can be used to refer to a symbol within that table. Nested references are printed after the main reference in the following form:

  symbol-ref-attribute ::= symbol-ref-id (`::` symbol-ref-id)*

Example:

  module @reference {
    func @nested_reference()
  }

  my_reference_op @reference::@nested_reference

Given that SymbolRefAttr is now more general, the existing functionality centered around a single reference is moved to a derived class FlatSymbolRefAttr. Followup commits will add support to lookups, rauw, etc. for scoped references.

PiperOrigin-RevId: 279860501
2019-11-11 18:18:31 -08:00
..
CMakeLists.txt Add missing dependency on the TypeInferOpInterface from the Test dialect 2019-10-04 18:40:47 -07:00
TestDialect.cpp Add compatible query method to infer type interface 2019-11-07 07:51:45 -08:00
TestDialect.h Add a test.symbol_scope operation that has the SymbolTable Traits to the Test dialect 2019-10-31 09:49:42 -07:00
TestOps.td Add support for nested symbol references. 2019-11-11 18:18:31 -08:00
TestPatterns.cpp Add compatible query method to infer type interface 2019-11-07 07:51:45 -08:00
lit.local.cfg Split test-specific passes out of mlir-opt 2019-06-24 17:47:12 -07:00