CIRCT  20.0.0git
Macros | Functions
OMOps.cpp File Reference
#include "circt/Dialect/OM/OMOps.h"
#include "circt/Dialect/HW/HWOps.h"
#include "circt/Dialect/OM/OMUtils.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/ImplicitLocOpBuilder.h"
#include "circt/Dialect/OM/OM.cpp.inc"
Include dependency graph for OMOps.cpp:

Go to the source code of this file.

Macros

#define GET_OP_CLASSES
 

Functions

static ParseResult parseBasePathString (OpAsmParser &parser, PathAttr &path)
 
static void printBasePathString (OpAsmPrinter &p, Operation *op, PathAttr path)
 
static ParseResult parsePathString (OpAsmParser &parser, PathAttr &path, StringAttr &module, StringAttr &ref, StringAttr &field)
 
static void printPathString (OpAsmPrinter &p, Operation *op, PathAttr path, StringAttr module, StringAttr ref, StringAttr field)
 
static ParseResult parseClassFieldsList (OpAsmParser &parser, SmallVectorImpl< Attribute > &fieldNames, SmallVectorImpl< Type > &fieldTypes)
 
static ParseResult parseClassLike (OpAsmParser &parser, OperationState &state)
 
static void printClassLike (ClassLike classLike, OpAsmPrinter &printer)
 
LogicalResult verifyClassLike (ClassLike classLike)
 
void getClassLikeAsmBlockArgumentNames (ClassLike classLike, Region &region, OpAsmSetValueNameFn setNameFn)
 
NamedAttribute makeFieldType (StringAttr name, Type type)
 
NamedAttribute makeFieldIdx (MLIRContext *ctx, mlir::StringAttr name, unsigned i)
 
std::optional< Type > getClassLikeFieldType (ClassLike classLike, StringAttr name)
 
void replaceClassLikeFieldTypes (ClassLike classLike, AttrTypeReplacer &replacer)
 

Macro Definition Documentation

◆ GET_OP_CLASSES

#define GET_OP_CLASSES

Definition at line 732 of file OMOps.cpp.

Function Documentation

◆ getClassLikeAsmBlockArgumentNames()

void getClassLikeAsmBlockArgumentNames ( ClassLike  classLike,
Region &  region,
OpAsmSetValueNameFn  setNameFn 
)

Definition at line 231 of file OMOps.cpp.

◆ getClassLikeFieldType()

std::optional<Type> getClassLikeFieldType ( ClassLike  classLike,
StringAttr  name 
)

Definition at line 253 of file OMOps.cpp.

◆ makeFieldIdx()

NamedAttribute makeFieldIdx ( MLIRContext *  ctx,
mlir::StringAttr  name,
unsigned  i 
)

Definition at line 247 of file OMOps.cpp.

References circt::calyx::direction::get().

◆ makeFieldType()

NamedAttribute makeFieldType ( StringAttr  name,
Type  type 
)

Definition at line 243 of file OMOps.cpp.

References circt::calyx::direction::get().

◆ parseBasePathString()

static ParseResult parseBasePathString ( OpAsmParser &  parser,
PathAttr &  path 
)
static

Definition at line 26 of file OMOps.cpp.

References circt::om::parseBasePath().

◆ parseClassFieldsList()

static ParseResult parseClassFieldsList ( OpAsmParser &  parser,
SmallVectorImpl< Attribute > &  fieldNames,
SmallVectorImpl< Type > &  fieldTypes 
)
static

Definition at line 80 of file OMOps.cpp.

Referenced by parseClassLike().

◆ parseClassLike()

static ParseResult parseClassLike ( OpAsmParser &  parser,
OperationState &  state 
)
static

Definition at line 112 of file OMOps.cpp.

References circt::calyx::direction::get(), and parseClassFieldsList().

◆ parsePathString()

static ParseResult parsePathString ( OpAsmParser &  parser,
PathAttr &  path,
StringAttr &  module,
StringAttr &  ref,
StringAttr &  field 
)
static

Definition at line 48 of file OMOps.cpp.

References circt::om::parsePath().

◆ printBasePathString()

static void printBasePathString ( OpAsmPrinter &  p,
Operation *  op,
PathAttr  path 
)
static

Definition at line 37 of file OMOps.cpp.

References circt::om::PathElement::instance, and circt::om::PathElement::module.

◆ printClassLike()

static void printClassLike ( ClassLike  classLike,
OpAsmPrinter &  printer 
)
static

Definition at line 166 of file OMOps.cpp.

◆ printPathString()

static void printPathString ( OpAsmPrinter &  p,
Operation *  op,
PathAttr  path,
StringAttr  module,
StringAttr  ref,
StringAttr  field 
)
static

Definition at line 62 of file OMOps.cpp.

◆ replaceClassLikeFieldTypes()

void replaceClassLikeFieldTypes ( ClassLike  classLike,
AttrTypeReplacer &  replacer 
)

Definition at line 263 of file OMOps.cpp.

◆ verifyClassLike()

LogicalResult verifyClassLike ( ClassLike  classLike)

Definition at line 214 of file OMOps.cpp.