Files
gps/tools/local/circt/include/circt/Dialect/FIRRTL/FIRRTLAnnotationDetails.h.inc
T
2026-07-12 11:01:51 +03:00

141 lines
11 KiB
C++

//===- FIRRTLAnnotationDetails.h.inc - Annotation Details ---------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// Auto-generated annotation class name constants.
//
// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT!
// Generated from FIRRTLAnnotations.td using circt-tblgen.
//
//===----------------------------------------------------------------------===//
/// Adds a prefix to the module name during compilation.
constexpr const char *modulePrefixAnnoClass = "chisel3.ModulePrefixAnnotation";
/// Marks a signal for tracing with its Chisel type information.
constexpr const char *traceAnnoClass = "chisel3.experimental.Trace$TraceAnnotation";
/// Specifies a trace name for the annotated signal.
constexpr const char *traceNameAnnoClass = "chisel3.experimental.Trace$TraceNameAnnotation";
/// Forces a specific name for the annotated component, preventing name changes
constexpr const char *forceNameAnnoClass = "chisel3.util.experimental.ForceNameAnnotation";
/// Annotation for decode table specifications in Chisel.
constexpr const char *decodeTableAnnoClass = "chisel3.util.experimental.decode.DecodeTableAnnotation";
/// Specify the type lowering option for module internal signals. This is similar
constexpr const char *bodyTypeLoweringAnnoClass = "circt.BodyTypeLoweringAnnotation";
/// Specify the port convention for a module. The port convention controls how a
constexpr const char *conventionAnnoClass = "circt.ConventionAnnotation";
/// This annotation indicates that the target module should be excluded from the
constexpr const char *excludeFromFullResetAnnoClass = "circt.ExcludeFromFullResetAnnotation";
/// The target must be a signal that is a reset. The type of the signal must be
constexpr const char *fullResetAnnoClass = "circt.FullResetAnnotation";
/// Specify the output directory for a module. The target must be a public
constexpr const char *outputDirAnnoClass = "circt.OutputDirAnnotation";
/// Specifies verbatim black box source code with one or more files. Each file
constexpr const char *verbatimBlackBoxAnnoClass = "circt.VerbatimBlackBoxAnno";
/// Attaches SV attributes to a specified target. A reference target must be a
constexpr const char *attributeAnnoClass = "firrtl.AttributeAnnotation";
/// Attaches a comment to a specified target. A reference target must be a wire,
constexpr const char *docStringAnnoClass = "firrtl.DocStringAnnotation";
/// Specifies a file to load memory contents from during simulation.
constexpr const char *loadMemoryAnnoClass = "firrtl.annotations.LoadMemoryAnnotation";
/// Specifies inline memory file loading for simulation.
constexpr const char *memoryFileInlineAnnoClass = "firrtl.annotations.MemoryFileInlineAnnotation";
/// This is used to represent an index in to an aggregate type, such as an index
constexpr const char *fieldAnnoClass = "firrtl.annotations.TargetToken$Field";
/// Indicates that the target should be inlined.
constexpr const char *inlineAnnoClass = "firrtl.passes.InlineAnnotation";
/// Marks a component as a wiring sink for the WiringTransform.
constexpr const char *sinkAnnoClass = "firrtl.passes.wiring.SinkAnnotation";
/// Marks a component as a wiring source for the WiringTransform.
constexpr const char *sourceAnnoClass = "firrtl.passes.wiring.SourceAnnotation";
/// Specifies a FIRRTL transform to run during compilation. This annotation
constexpr const char *runFirrtlTransformAnnoClass = "firrtl.stage.RunFirrtlTransformAnnotation";
/// Attached to any external module created from any of the other blackbox
constexpr const char *blackBoxAnnoClass = "firrtl.transforms.BlackBox";
/// Specifies the black box source code (`text`) inline. Generates a file with
constexpr const char *blackBoxInlineAnnoClass = "firrtl.transforms.BlackBoxInlineAnno";
/// Specifies the file `path` as source code for the module. Copies the file to
constexpr const char *blackBoxPathAnnoClass = "firrtl.transforms.BlackBoxPathAnno";
/// Overrides the target directory into which black box source files are emitted.
constexpr const char *blackBoxTargetDirAnnoClass = "firrtl.transforms.BlackBoxTargetDirAnno";
/// This annotation assigns the targeted module to a dedup group. Modules that
constexpr const char *dedupGroupAnnoClass = "firrtl.transforms.DedupGroupAnnotation";
/// Prevents the removal of elements through optimization.
constexpr const char *dontTouchAnnoClass = "firrtl.transforms.DontTouchAnnotation";
/// Indicates that the target should be flattened, which means that child
constexpr const char *flattenAnnoClass = "firrtl.transforms.FlattenAnnotation";
/// This annotation causes the deduplication pass to check that the listed
constexpr const char *mustDeduplicateAnnoClass = "firrtl.transforms.MustDeduplicateAnnotation";
/// Prevents deduplication of the annotated module. Both regular modules and
constexpr const char *noDedupAnnoClass = "firrtl.transforms.NoDedupAnnotation";
/// Marks an external module as an internal verification black box for RocketChip.
constexpr const char *internalVerifBlackBoxAnnoClass = "freechips.rocketchip.annotations.InternalVerifBlackBoxAnnotation";
/// This annotation is used to mark modules which should be retimed, and is
constexpr const char *retimeModuleAnnoClass = "freechips.rocketchip.util.RetimeModuleAnnotation";
/// This annotation causes an extra port to be added to all SRAM modules in the
constexpr const char *addSeqMemPortAnnoClass = "sifive.enterprise.firrtl.AddSeqMemPortAnnotation";
/// This annotation is used to emit metadata about the extra ports created by
constexpr const char *addSeqMemPortsFileAnnoClass = "sifive.enterprise.firrtl.AddSeqMemPortsFileAnnotation";
/// Circuit-level annotation that converts all memories in the design to register vectors.
constexpr const char *convertMemToRegOfVecAnnoClass = "sifive.enterprise.firrtl.ConvertMemToRegOfVecAnnotation$";
/// Triggers extraction of assertions to a separate file.
constexpr const char *extractAssertionsAnnoClass = "sifive.enterprise.firrtl.ExtractAssertionsAnnotation";
/// Triggers extraction of assumptions to a separate file.
constexpr const char *extractAssumptionsAnnoClass = "sifive.enterprise.firrtl.ExtractAssumptionsAnnotation";
/// This annotation causes the `ExtractInstances` pass to move the annotated
constexpr const char *extractBlackBoxAnnoClass = "sifive.enterprise.firrtl.ExtractBlackBoxAnnotation";
/// This annotation causes the `ExtractInstances` pass to move instances of
constexpr const char *extractClockGatesFileAnnoClass = "sifive.enterprise.firrtl.ExtractClockGatesFileAnnotation";
/// Triggers extraction of coverage statements to a separate file.
constexpr const char *extractCoverageAnnoClass = "sifive.enterprise.firrtl.ExtractCoverageAnnotation";
/// This annotation causes the `ExtractInstances` pass to move memory instances
constexpr const char *extractSeqMemsFileAnnoClass = "sifive.enterprise.firrtl.ExtractSeqMemsFileAnnotation";
/// The target must be a signal that is or is inferred to be an asynchronous reset.
constexpr const char *fullAsyncResetAnnoClass = "sifive.enterprise.firrtl.FullAsyncResetAnnotation";
/// This annotation indicates that the target should be excluded from the
constexpr const char *ignoreFullAsyncResetAnnoClass = "sifive.enterprise.firrtl.IgnoreFullAsyncResetAnnotation";
/// This annotation can be used to add an extra level of hierarchy in the design
constexpr const char *injectDUTHierarchyAnnoClass = "sifive.enterprise.firrtl.InjectDUTHierarchyAnnotation";
/// This annotation is used to mark the top module of the device under test. This
constexpr const char *markDUTAnnoClass = "sifive.enterprise.firrtl.MarkDUTAnnotation";
/// This annotation is used to define the directory where metadata should be
constexpr const char *metadataDirAnnoClass = "sifive.enterprise.firrtl.MetadataDirAnnotation";
/// This annotation indicates that a module hierarchy JSON file should be emitted
constexpr const char *moduleHierarchyAnnoClass = "sifive.enterprise.firrtl.ModuleHierarchyAnnotation";
/// This annotation triggers the creation of a file containing a JSON array
constexpr const char *retimeModulesAnnoClass = "sifive.enterprise.firrtl.RetimeModulesAnnotation";
/// This annotation triggers the creation of a file containing a JSON array of
constexpr const char *sitestBlackBoxAnnoClass = "sifive.enterprise.firrtl.SitestBlackBoxAnnotation";
/// This annotation is used to specify additional library names that should be
constexpr const char *sitestBlackBoxLibrariesAnnoClass = "sifive.enterprise.firrtl.SitestBlackBoxLibrariesAnnotation";
/// This annotation triggers the creation of a file containing a JSON array of
constexpr const char *sitestTestHarnessBlackBoxAnnoClass = "sifive.enterprise.firrtl.SitestTestHarnessBlackBoxAnnotation";
/// This annotation is used to indicate where to emit the test bench modules
constexpr const char *testBenchDirAnnoClass = "sifive.enterprise.firrtl.TestBenchDirAnnotation";
/// This annotation indicates that a module hierarchy JSON file should be emitted
constexpr const char *testHarnessHierarchyAnnoClass = "sifive.enterprise.firrtl.TestHarnessHierarchyAnnotation";
/// Specifies the path to the test harness module.
constexpr const char *testHarnessPathAnnoClass = "sifive.enterprise.firrtl.TestHarnessPathAnnotation";
/// Creates a SystemVerilog interface for each bundle type in Grand Central views.
constexpr const char *augmentedBundleTypeAnnoClass = "sifive.enterprise.grandcentral.AugmentedBundleType";
/// Creates a SystemVerilog logic type for Grand Central views.
constexpr const char *augmentedGroundTypeAnnoClass = "sifive.enterprise.grandcentral.AugmentedGroundType";
/// Creates a SystemVerilog unpacked array for Grand Central views.
constexpr const char *augmentedVectorTypeAnnoClass = "sifive.enterprise.grandcentral.AugmentedVectorType";
/// This annotation controls where to "extract" Grand Central collateral from
constexpr const char *extractGrandCentralAnnoClass = "sifive.enterprise.grandcentral.ExtractGrandCentralAnnotation";
/// This annotation, if present, will emit a YAML representation of all
constexpr const char *grandCentralHierarchyFileAnnoClass = "sifive.enterprise.grandcentral.GrandCentralHierarchyFileAnnotation";
/// These annotations are used to represent a SystemVerilog interface, a location
constexpr const char *serializedViewAnnoClass = "sifive.enterprise.grandcentral.GrandCentralView$SerializedViewAnnotation";
/// Annotation for memory taps in Grand Central. This annotation has custom
constexpr const char *memTapAnnoClass = "sifive.enterprise.grandcentral.MemTapAnnotation";
/// Annotation for Grand Central views. Similar to SerializedViewAnnotation but
constexpr const char *viewAnnoClass = "sifive.enterprise.grandcentral.ViewAnnotation";
/// Companion annotation for Grand Central views. Not in SFC (Scala FIRRTL Compiler).
constexpr const char *companionAnnoClass = "sifive.enterprise.grandcentral.ViewAnnotation.companion";