![]() |
P4C
The P4 Compiler
|
Additional Inherited Members | |
Public Types inherited from ParserOptions | |
| enum class | FrontendVersion { P4_14 , P4_16 } |
| using | PreprocessorResult = std::unique_ptr<FILE, decltype(&closeFile)> |
| Records the result of the preprocessor. | |
Public Types inherited from Util::Options | |
| enum | OptionFlags { Default = 0 , Hide = 1 << 0 , OptionalArgument = 1 << 1 } |
| using | OptionProcessor = std::function<bool(const char *)> |
Public Member Functions inherited from CompilerOptions | |
| CompilerOptions (std::string_view defaultMessage="Compile a P4 program") | |
| virtual bool | enable_intrinsic_metadata_fix () |
Public Member Functions inherited from ParserOptions | |
| ParserOptions (std::string_view defaultMessage="Parse a P4 program") | |
| DebugHook | getDebugHook () const |
| const char * | getIncludePath () const override |
| Return target specific include path. | |
| bool | isAnnotationDisabled (const IR::Annotation *a) const |
| Check whether this particular annotation was disabled. | |
| bool | isv1 () const |
| True if we are compiling a P4 v1.0 or v1.1 program. | |
| std::optional< ParserOptions::PreprocessorResult > | preprocess () const |
| Returns the output of the preprocessor. | |
| std::vector< const char * > * | process (int argc, char *const argv[]) override |
| bool | searchForIncludePath (const char *&includePathOut, std::vector< cstring > relativePaths, const char *) |
| void | setInputFile () |
| Expect that the only remaining argument is the input file. | |
Public Member Functions inherited from Util::Options | |
| cstring | getBinaryName () |
| cstring | getBuildDate () |
| cstring | getCompileCommand () |
| virtual void | usage () |
Static Public Member Functions inherited from ParserOptions | |
| static void | closeFile (FILE *file) |
| Tries to close the input stream associated with the result. | |
Public Attributes inherited from BMV2::BMV2Options | |
| bool | emitExterns = false |
| Generate externs. | |
| bool | loadIRFromJson = false |
| Read from json. | |
| std::filesystem::path | outputFile |
| File to output to. | |
Public Attributes inherited from CompilerOptions | |
| cstring | arch = nullptr |
| bool | debugJson = false |
| std::filesystem::path | dumpJsonFile |
| bool | excludeBackendPasses = false |
| bool | excludeFrontendPasses = false |
| bool | excludeMidendPasses = false |
| bool | listFrontendPasses = false |
| bool | listMidendPasses = false |
| bool | loopsUnrolling = false |
| bool | ndebug = false |
| int | optimizationLevel = 1 |
| bool | optimizeDebug = false |
| bool | optimizeSize = false |
| cstring | p4RuntimeEntriesFile = nullptr |
| cstring | p4RuntimeEntriesFiles = nullptr |
| cstring | p4RuntimeFile = nullptr |
| cstring | p4RuntimeFiles = nullptr |
| P4::P4RuntimeFormat | p4RuntimeFormat = P4::P4RuntimeFormat::BINARY |
| std::vector< cstring > | passesToExcludeBackend |
| std::vector< cstring > | passesToExcludeFrontend |
| std::vector< cstring > | passesToExcludeMidend |
| std::filesystem::path | prettyPrintFile |
| cstring | target = nullptr |
Public Attributes inherited from ParserOptions | |
| cstring | compilerVersion |
| Compiler version. | |
| bool | doNotCompile = false |
| if true preprocess only | |
| bool | doNotPreprocess = false |
| if true skip preprocess | |
| std::filesystem::path | dumpFolder = "." |
| debugging dumps of programs written in this folder | |
| cstring | exe_name |
| Name of executable that is being run. | |
| std::filesystem::path | file |
| file to compile (- for stdin) | |
| FrontendVersion | langVersion = FrontendVersion::P4_16 |
| Which language to compile. | |
| bool | noIncludes = false |
| bool | optimizeParserInlining = false |
| If false, optimization of callee parsers (subparsers) inlining is disabled. | |
| cstring | preprocessor_options = cstring::empty |
| options to pass to preprocessor | |
| std::vector< cstring > | top4 |
| substrings matched against pass names | |
Protected Member Functions inherited from CompilerOptions | |
| bool | validateOptions () const override |
Protected Member Functions inherited from ParserOptions | |
| void | dumpPass (const char *manager, unsigned seq, const char *pass, const IR::Node *node) const |
| Function that is returned by getDebugHook. | |
Protected Member Functions inherited from Util::Options | |
| Options (std::string_view message) | |
| void | registerOption (const char *option, const char *argName, OptionProcessor processor, const char *description, OptionFlags flags=OptionFlags::Default) |
| void | registerUsage (const char *msg) |
| void | setOutStream (std::ostream *out) |
Protected Attributes inherited from Util::Options | |
| std::vector< const char * > | additionalUsage |
| const char * | binaryName |
| cstring | buildDate |
| bool | collectUnknownOptions = false |
| cstring | compileCommand |
| cstring | message |
| std::vector< cstring > | optionOrder |
| std::map< cstring, const Option * > | options |
| std::ostream * | outStream = &std::cerr |
| std::vector< const char * > | remainingOptions |