Merge pull request #139 from AntelopeIO/man_pages
cdt-cpp man page added
This commit is contained in:
@@ -0,0 +1,850 @@
|
||||
.\" Automatically generated by Pandoc 2.5
|
||||
.\"
|
||||
.TH "CDT\-CPP" "1" "April 08, 2023" "AntelopeIO" "User Manual"
|
||||
.hy
|
||||
.SH NAME
|
||||
.PP
|
||||
cdt\-cpp \- Antelope smart contract C++ to WebAssembly compiler
|
||||
.SH SYNOPSIS
|
||||
.PP
|
||||
\f[C]cdt\-cpp [options] <input file>\f[R]
|
||||
.SH DESCRIPTION
|
||||
.PP
|
||||
\f[B]cdt\-cpp\f[R] Is a C++ compiler which converts C++ smart contract
|
||||
code to WebAssemply for execution in Antelope block chain virtual
|
||||
machines.
|
||||
.SH OPTIONS
|
||||
.PP
|
||||
\f[B]\f[CB]\-C\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Include comments in preprocessed output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-CC\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Include comments from within macros in preprocessed output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-D=<name definition>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Define <macro> to <value> (or 1 if <value> omitted)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-U=<name>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Undefine any previous definition of name, either built in or defined with a \-D option
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-E\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Only run the preprocessor
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-I=<dir>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Add directory to include search path
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-L=<dir>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Add directory to library search path
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-MF=<file>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Write depfile output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-MD\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Write depfile containing user and system headers
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-MMD\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Like \-MD except mention only user header files, not system header files.
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-MT=<target>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Specify name of main file output in depfile
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-O=<optimization_level>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Optimization level s, 0\-3
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-R=<dir>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Add the directory dir to the list of directories to be searched for resource files
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-S\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Only run preprocess and compilation steps
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-W=<warning_name>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable the specified warning.
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-abi\-version=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Which ABI version to generate
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-abigen\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Generate ABI
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-abigen_output=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
ABIGEN output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-allow\-names\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Allow creation of name section
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-allow\-sse\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Should not be used, except for building libc
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-as\-secure\-log\-file\-name=<value>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
As secure log file name (initialized from AS_SECURE_LOG_FILE env variable)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-asm\-macro\-max\-nesting\-depth=<uint>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
The maximum nesting depth allowed for assembly macros
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-c\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Only run preprocess, compile, and assemble steps
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-color\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use colors in output (default=autodetect)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-contract=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Contract name
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-dD\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Print macro definitions in \-E mode in addition to normal output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-dI\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Print include directives in \-E mode in addition to normal output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-dM\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Print macro definitions in \-E mode instead to normal output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-disable\-symbolication\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Disable symbolizing crash backtraces.
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-emit\-ast\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Emit Clang AST files for source inputs
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-emit\-ir\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Emit llvm ir
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-emit\-llvm\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use the LLVM representation for assembler and object files
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-eosio\-pp\-dir=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Set the directory for eosio\-pp
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fPIC\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Generate position independent code. This option is used for shared libraries
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-faligned\-allocation\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable C++17 aligned allocation functions
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fasm\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Assemble file for x86\-64
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fcolor\-diagnostics\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use colors in diagnostics
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fcoroutine\-ts\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable support for the C++ Coroutines TS
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-finline\-functions\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Inline suitable functions
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-finline\-hint\-functions\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Inline functions which are (explicitly or implicitly) marked inline
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fmerge\-all\-constants\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Allow merging of constants
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fnative\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Compile and link for x86\-64
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fno\-cfl\-aa\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Disable CFL Alias Analysis
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fno\-elide\-constructors\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Disable C++ copy constructor elision
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fno\-lto\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Disable LTO
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fno\-post\-pass\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Don\[aq]t run post processing pass
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fno\-stack\-first\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Don\[aq]t set the stack first in memory
|
||||
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fquery\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Produce binaries for wasmql
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fquery\-client\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Produce binaries for wasmql
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fquery\-server\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Produce binaries for wasmql
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fstack\-protector\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable stack protectors for functions potentially vulnerable to stack smashing
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fstack\-protector\-all\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Force the usage of stack protectors for all functions
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fstack\-protector\-strong\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use a strong heuristic to apply stack protectors to functions
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fstrict\-enums\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable optimizations based on the strict definition of an enum\[aq]s value range
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fstrict\-return\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Always treat control flow paths that fall off the end of a non\-void function as unreachable
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fstrict\-vtable\-pointers\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable optimizations based on the strict rules for overwriting polymorphic C++ objects
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-fuse\-main\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use main as entry
|
||||
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-h\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Alias for \-\-help
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-help\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Display available options (\-\-help\-hidden for more)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-help\-hidden\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Display all available options
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-help\-list\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Display list of available options (\-\-help\-list\-hidden for more)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-help\-list\-hidden\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Display list of all available options
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-imports=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Set the file for cdt.imports
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-include=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Include file before parsing
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-info\-output\-file=<filename>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
File to append \-stats and \-timer output to
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-isysroot=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Set the system root directory (usually /)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-isystem=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Add directory to SYSTEM include search path
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-l=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Root name of library to link
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-lto\-opt=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
LTO Optimization level (O0\-O3)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-mllvm=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Pass arguments to llvm
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-no\-abigen\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Disable ABI file generation
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-no\-missing\-ricardian\-clause\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Disable warnings for missing Ricardian clauses
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-non\-global\-value\-max\-name\-size=<uint>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Maximum size for the name of non\-global values
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-o=<file>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Write output to <file>
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-only\-export=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Export only this symbol
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-opt\-bisect\-limit=<int>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Maximum optimization to perform
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-pass\-remarks=<pattern>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable optimization remarks from passes whose name match the given regular expression
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-pass\-remarks\-analysis=<pattern>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable optimization analysis remarks from passes whose name match the given regular expression
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-pass\-remarks\-missed=<pattern>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable missed optimization remarks from passes whose name match the given regular expression
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-print\-all\-options\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Print all option values after command line parsing
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-print\-options\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Print non\-default options after command line parsing
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-remarks\-yaml\-string\-table\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable the usage of a string table with YAML remarks
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-rng\-seed=<seed>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Seed for the random number generator
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-shared\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Make shared object native library
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-stack\-canary\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Stack canary for non stack first layouts
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-stack\-size=<int>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Specifies the maximum stack size for the contract. Defaults to 8192 bytes
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-static\-func\-full\-module\-prefix\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use full module build paths in the profile counter names for static functions
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-static\-func\-strip\-dirname\-prefix=<uint>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Strip specified level of directory name from source path in the profile counter name for static functions
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-stats\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable statistics output from program (available with Asserts)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-stats\-json\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Display statistics as json data
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-std=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Language standard to compile for
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-switch\-inst\-prof\-update\-wrapper\-strict\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Assert that prof branch_weights metadata is valid when creating an instance of SwitchInstProfUpdateWrapper
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-sysroot=<string>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Set the system root directory
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-time\-trace\-granularity=<uint>\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Minimum time granularity (in microseconds) traced by time profiler
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-track\-memory\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Enable \-time\-passes memory tracking (this may be slow)
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-use\-dbg\-addr\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use llvm.dbg.addr for all local variables
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-use\-freeing\-malloc\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Set the malloc implementation to the old freeing malloc
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-use\-rt\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Use software compiler\-rt
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-v\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Show commands to run and use verbose output
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-version\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Display the version of this program
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-view\-background\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Execute graph viewer in the background. Creates tmp file litter
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-w\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Suppress all warnings
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
\f[B]\f[CB]\-\-warn\-action\-read\-only\f[B]\f[R]
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
Issue a warning if a read\-only action uses a write API and continue compilation
|
||||
\f[R]
|
||||
.fi
|
||||
.SH BUGS
|
||||
.PP
|
||||
Please submit bug reports online at
|
||||
https://github.com/AntelopeIO/cdt/issues
|
||||
.SH SEE ALSO
|
||||
.PP
|
||||
For more details consult the full documentation and sources
|
||||
https://github.com/AntelopeIO/cdt
|
||||
@@ -0,0 +1,443 @@
|
||||
---
|
||||
title: CDT-CPP
|
||||
section: 1
|
||||
header: User Manual
|
||||
footer: AntelopeIO
|
||||
date: April 08, 2023
|
||||
---
|
||||
# NAME
|
||||
cdt-cpp - Antelope smart contract C++ to WebAssembly compiler
|
||||
|
||||
# SYNOPSIS
|
||||
|
||||
`cdt-cpp [options] <input file>`
|
||||
|
||||
# DESCRIPTION
|
||||
|
||||
**cdt-cpp** Is a C++ compiler which converts C++ smart contract code to WebAssemply for
|
||||
execution in Antelope block chain virtual machines.
|
||||
|
||||
# OPTIONS
|
||||
|
||||
**`-C`**
|
||||
|
||||
Include comments in preprocessed output
|
||||
|
||||
**`--CC`**
|
||||
|
||||
Include comments from within macros in preprocessed output
|
||||
|
||||
**`-D=<name definition>`**
|
||||
|
||||
Define <macro> to <value> (or 1 if <value> omitted)
|
||||
|
||||
**`-U=<name>`**
|
||||
|
||||
Undefine any previous definition of name, either built in or defined with a -D option
|
||||
|
||||
**`-E`**
|
||||
|
||||
Only run the preprocessor
|
||||
|
||||
**`-I=<dir>`**
|
||||
|
||||
Add directory to include search path
|
||||
|
||||
**`-L=<dir>`**
|
||||
|
||||
Add directory to library search path
|
||||
|
||||
**`--MF=<file>`**
|
||||
|
||||
Write depfile output
|
||||
|
||||
**`--MD`**
|
||||
|
||||
Write depfile containing user and system headers
|
||||
|
||||
**`--MMD`**
|
||||
|
||||
Like -MD except mention only user header files, not system header files.
|
||||
|
||||
**`--MT=<target>`**
|
||||
|
||||
Specify name of main file output in depfile
|
||||
|
||||
**`-O=<optimization_level>`**
|
||||
|
||||
Optimization level s, 0-3
|
||||
|
||||
**`-R=<dir>`**
|
||||
|
||||
Add the directory dir to the list of directories to be searched for resource files
|
||||
|
||||
**`-S`**
|
||||
|
||||
Only run preprocess and compilation steps
|
||||
|
||||
**`-W=<warning_name>`**
|
||||
|
||||
Enable the specified warning.
|
||||
|
||||
**`--abi-version=<string>`**
|
||||
|
||||
Which ABI version to generate
|
||||
|
||||
**`--abigen`**
|
||||
|
||||
Generate ABI
|
||||
|
||||
**`--abigen_output=<string>`**
|
||||
|
||||
ABIGEN output
|
||||
|
||||
**`--allow-names`**
|
||||
|
||||
Allow creation of name section
|
||||
|
||||
**`--allow-sse`**
|
||||
|
||||
Should not be used, except for building libc
|
||||
|
||||
**`--as-secure-log-file-name=<value>`**
|
||||
|
||||
As secure log file name (initialized from AS_SECURE_LOG_FILE env variable)
|
||||
|
||||
**`--asm-macro-max-nesting-depth=<uint>`**
|
||||
|
||||
The maximum nesting depth allowed for assembly macros
|
||||
|
||||
**`-c`**
|
||||
|
||||
Only run preprocess, compile, and assemble steps
|
||||
|
||||
**`--color`**
|
||||
|
||||
Use colors in output (default=autodetect)
|
||||
|
||||
**`--contract=<string>`**
|
||||
|
||||
Contract name
|
||||
|
||||
**`--dD`**
|
||||
|
||||
Print macro definitions in -E mode in addition to normal output
|
||||
|
||||
**`--dI`**
|
||||
|
||||
Print include directives in -E mode in addition to normal output
|
||||
|
||||
**`--dM`**
|
||||
|
||||
Print macro definitions in -E mode instead to normal output
|
||||
|
||||
**`--disable-symbolication`**
|
||||
|
||||
Disable symbolizing crash backtraces.
|
||||
|
||||
**`--emit-ast`**
|
||||
|
||||
Emit Clang AST files for source inputs
|
||||
|
||||
**`--emit-ir`**
|
||||
|
||||
Emit llvm ir
|
||||
|
||||
**`--emit-llvm`**
|
||||
|
||||
Use the LLVM representation for assembler and object files
|
||||
|
||||
**`--eosio-pp-dir=<string>`**
|
||||
|
||||
Set the directory for eosio-pp
|
||||
|
||||
**`--fPIC`**
|
||||
|
||||
Generate position independent code. This option is used for shared libraries
|
||||
|
||||
**`--faligned-allocation`**
|
||||
|
||||
Enable C++17 aligned allocation functions
|
||||
|
||||
**`--fasm`**
|
||||
|
||||
Assemble file for x86-64
|
||||
|
||||
**`--fcolor-diagnostics`**
|
||||
|
||||
Use colors in diagnostics
|
||||
|
||||
**`--fcoroutine-ts`**
|
||||
|
||||
Enable support for the C++ Coroutines TS
|
||||
|
||||
**`--finline-functions`**
|
||||
|
||||
Inline suitable functions
|
||||
|
||||
**`--finline-hint-functions`**
|
||||
|
||||
Inline functions which are (explicitly or implicitly) marked inline
|
||||
|
||||
**`--fmerge-all-constants`**
|
||||
|
||||
Allow merging of constants
|
||||
|
||||
**`--fnative`**
|
||||
|
||||
Compile and link for x86-64
|
||||
|
||||
**`--fno-cfl-aa`**
|
||||
|
||||
Disable CFL Alias Analysis
|
||||
|
||||
**`--fno-elide-constructors`**
|
||||
|
||||
Disable C++ copy constructor elision
|
||||
|
||||
**`--fno-lto`**
|
||||
|
||||
Disable LTO
|
||||
|
||||
**`--fno-post-pass`**
|
||||
|
||||
Don't run post processing pass
|
||||
|
||||
**`--fno-stack-first`**
|
||||
|
||||
Don't set the stack first in memory
|
||||
|
||||
**`--fquery`**
|
||||
|
||||
Produce binaries for wasmql
|
||||
|
||||
**`--fquery-client`**
|
||||
|
||||
Produce binaries for wasmql
|
||||
|
||||
**`--fquery-server`**
|
||||
|
||||
Produce binaries for wasmql
|
||||
|
||||
**`--fstack-protector`**
|
||||
|
||||
Enable stack protectors for functions potentially vulnerable to stack smashing
|
||||
|
||||
**`--fstack-protector-all`**
|
||||
|
||||
Force the usage of stack protectors for all functions
|
||||
|
||||
**`--fstack-protector-strong`**
|
||||
|
||||
Use a strong heuristic to apply stack protectors to functions
|
||||
|
||||
**`--fstrict-enums`**
|
||||
|
||||
Enable optimizations based on the strict definition of an enum's value range
|
||||
|
||||
**`--fstrict-return`**
|
||||
|
||||
Always treat control flow paths that fall off the end of a non-void function as unreachable
|
||||
|
||||
**`--fstrict-vtable-pointers`**
|
||||
|
||||
Enable optimizations based on the strict rules for overwriting polymorphic C++ objects
|
||||
|
||||
**`--fuse-main`**
|
||||
|
||||
Use main as entry
|
||||
|
||||
**`-h`**
|
||||
|
||||
Alias for --help
|
||||
|
||||
**`--help`**
|
||||
|
||||
Display available options (--help-hidden for more)
|
||||
|
||||
**`--help-hidden`**
|
||||
|
||||
Display all available options
|
||||
|
||||
**`--help-list`**
|
||||
|
||||
Display list of available options (--help-list-hidden for more)
|
||||
|
||||
**`--help-list-hidden`**
|
||||
|
||||
Display list of all available options
|
||||
|
||||
**`--imports=<string>`**
|
||||
|
||||
Set the file for cdt.imports
|
||||
|
||||
**`--include=<string>`**
|
||||
|
||||
Include file before parsing
|
||||
|
||||
**`--info-output-file=<filename>`**
|
||||
|
||||
File to append -stats and -timer output to
|
||||
|
||||
**`--isysroot=<string>`**
|
||||
|
||||
Set the system root directory (usually /)
|
||||
|
||||
**`--isystem=<string>`**
|
||||
|
||||
Add directory to SYSTEM include search path
|
||||
|
||||
**`-l=<string>`**
|
||||
|
||||
Root name of library to link
|
||||
|
||||
**`--lto-opt=<string>`**
|
||||
|
||||
LTO Optimization level (O0-O3)
|
||||
|
||||
**`--mllvm=<string>`**
|
||||
|
||||
Pass arguments to llvm
|
||||
|
||||
**`--no-abigen`**
|
||||
|
||||
Disable ABI file generation
|
||||
|
||||
**`--no-missing-ricardian-clause`**
|
||||
|
||||
Disable warnings for missing Ricardian clauses
|
||||
|
||||
**`--non-global-value-max-name-size=<uint>`**
|
||||
|
||||
Maximum size for the name of non-global values
|
||||
|
||||
**`-o=<file>`**
|
||||
|
||||
Write output to <file>
|
||||
|
||||
**`--only-export=<string>`**
|
||||
|
||||
Export only this symbol
|
||||
|
||||
**`--opt-bisect-limit=<int>`**
|
||||
|
||||
Maximum optimization to perform
|
||||
|
||||
**`--pass-remarks=<pattern>`**
|
||||
|
||||
Enable optimization remarks from passes whose name match the given regular expression
|
||||
|
||||
**`--pass-remarks-analysis=<pattern>`**
|
||||
|
||||
Enable optimization analysis remarks from passes whose name match the given regular expression
|
||||
|
||||
**`--pass-remarks-missed=<pattern>`**
|
||||
|
||||
Enable missed optimization remarks from passes whose name match the given regular expression
|
||||
|
||||
**`--print-all-options`**
|
||||
|
||||
Print all option values after command line parsing
|
||||
|
||||
**`--print-options`**
|
||||
|
||||
Print non-default options after command line parsing
|
||||
|
||||
**`--remarks-yaml-string-table`**
|
||||
|
||||
Enable the usage of a string table with YAML remarks
|
||||
|
||||
**`--rng-seed=<seed>`**
|
||||
|
||||
Seed for the random number generator
|
||||
|
||||
**`--shared`**
|
||||
|
||||
Make shared object native library
|
||||
|
||||
**`--stack-canary`**
|
||||
|
||||
Stack canary for non stack first layouts
|
||||
|
||||
**`--stack-size=<int>`**
|
||||
|
||||
Specifies the maximum stack size for the contract. Defaults to 8192 bytes
|
||||
|
||||
**`--static-func-full-module-prefix`**
|
||||
|
||||
Use full module build paths in the profile counter names for static functions
|
||||
|
||||
**`--static-func-strip-dirname-prefix=<uint>`**
|
||||
|
||||
Strip specified level of directory name from source path in the profile counter name for static functions
|
||||
|
||||
**`--stats`**
|
||||
|
||||
Enable statistics output from program (available with Asserts)
|
||||
|
||||
**`--stats-json`**
|
||||
|
||||
Display statistics as json data
|
||||
|
||||
**`--std=<string>`**
|
||||
|
||||
Language standard to compile for
|
||||
|
||||
**`--switch-inst-prof-update-wrapper-strict`**
|
||||
|
||||
Assert that prof branch_weights metadata is valid when creating an instance of SwitchInstProfUpdateWrapper
|
||||
|
||||
**`--sysroot=<string>`**
|
||||
|
||||
Set the system root directory
|
||||
|
||||
**`--time-trace-granularity=<uint>`**
|
||||
|
||||
Minimum time granularity (in microseconds) traced by time profiler
|
||||
|
||||
**`--track-memory`**
|
||||
|
||||
Enable -time-passes memory tracking (this may be slow)
|
||||
|
||||
**`--use-dbg-addr`**
|
||||
|
||||
Use llvm.dbg.addr for all local variables
|
||||
|
||||
**`--use-freeing-malloc`**
|
||||
|
||||
Set the malloc implementation to the old freeing malloc
|
||||
|
||||
**`--use-rt`**
|
||||
|
||||
Use software compiler-rt
|
||||
|
||||
**`-v`**
|
||||
|
||||
Show commands to run and use verbose output
|
||||
|
||||
**`--version`**
|
||||
|
||||
Display the version of this program
|
||||
|
||||
**`--view-background`**
|
||||
|
||||
Execute graph viewer in the background. Creates tmp file litter
|
||||
|
||||
**`-w`**
|
||||
|
||||
Suppress all warnings
|
||||
|
||||
**`--warn-action-read-only`**
|
||||
|
||||
Issue a warning if a read-only action uses a write API and continue compilation
|
||||
|
||||
|
||||
# BUGS
|
||||
|
||||
Please submit bug reports online at https://github.com/AntelopeIO/cdt/issues
|
||||
|
||||
# SEE ALSO
|
||||
|
||||
For more details consult the full documentation and sources https://github.com/AntelopeIO/cdt
|
||||
|
||||
|
||||
Executable
+3
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
pandoc cdt-cpp.1.md -s -t man -o cdt-cpp.1
|
||||
Reference in New Issue
Block a user