Releases: thrustlang/thrustc
thrustc-x86_64-macos-v0.1.3
Thrust Compiler
Version: v0.1.3
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Changelog
All notable changes to the Thrust Compiler (thrustc) are documented here.
[Unreleased]
Project
- project:
feat(project)Adding Neovim One Dark hightlighting support. (a282105)
[thrustc-x86_64-windows-msvc-v0.1.3] - 2026-06-07
Documentation
- project-visual:
feat(project-visual)Adding a more clear way to notice the existence of compiler compiled binaries on README.md (0df5012)
Project
- project:
feat(project)Adding git reporsitory synchronization on release-changelog scripts. (e513f9d)
[thrustc-aarch64-macos-v0.1.3] - 2026-06-07
Bug Fixes
- project-visual:
fix(project-visual)Fixing broken links on README.md (7f85246)
Documentation
- project-visual:
feat(project-visual)Adding visual examples of compiler diagnostics. (f2950fa)
[thrustc-x86_64-linux-ubuntu-v0.1.3] - 2026-06-06
Bug Fixes
fix(llvm_codegen)Adding LValue changes on the System-V call epilogue. (24eeffc)- frontend:
fix(frontend)I fixed the rare issue case when the source isn't a pointer without metadata and the provided it is, typechecking. (0c2dd24) - project-visual:
fix(project-visual)Fixing a type on README.md (c1ae1de) - frontend:
(fix(llvm_codegen), fix(frontend))Several fixes around type casting on the LLVM backend, and also, on the compiler frontend, a better understable naming on variables, types, etc. (d46543d) fix(llvm_codegen)I issues regarding integer and float literal generation on the LLVM backend. (ee7a3e3)fix(llvm_codegen)I fixed some several issues found regarding void type on ABI type generation. (3248b84)fix(llvm_codegen)Fixing a serious issue inside integer and float generation, and also, integrating partial return clasification to System-V. (f9ca954)fix(llvm_codegen)hot fix to x86 System-V ABI type classification and, also I fixed an issue on call lowering. (ddd5c17)- project-visual:
fix(project-visual)I fixed some typos on README.md (e559559) - project-visual:
fix(project-visual)Removing automatic cargo docs. (caa4d5e) - project:
fix(project)I fixed a possible bad utilization regarding boolean binary operations on expression compiling on the LLVM backend. (ebe0359)
Documentation
- project-visual:
feat(project-visual)Adding another explanation to utilize the compiler compiled. (9d02371) - project-visual:
feat(project-visual)Adding extra clarifications regarding AI usage. (de12e8f) - project-visual:
(feat(project), feat(project-visual))Adding LLVM_CODEGEN fuzzing target and, also, a guide regarding Cargo alias. (d200be5) - project-visual:
feat(project-visual)Adding rust-code documentation via cargo docs. (1e64ded)
Features
- frontend:
(feat(frontend), fix(llvm_codegen), fix(frontend))I fixed some issues found on the call lowering and standard an ABI mode. Also I implemented the CudaCaller on Thrust. (132535b) feat(llvm_codegen)Fixed issues regarding to integer and boolean types on code generation. (d787416)- frontend:
(feat(llvm_codegen), feat(frontend))Adding address_space cast on LLVM codegen phase and support to Nvidia Cuda. (3b2cf2e) - frontend:
(feat(frontend), feat(llvm_codegen))Preparing Cuda code generation support, also, integrating@cudaattributee, and pointer address_space specifier. (bf07e12) feat(llvm_codegen)Adding array values lowering for System V ABI (a56d2c1)- frontend:
feat(frontend)Adding syntax highlighting for LLVM IR print. (be40909) feat(llvm_codegen)Adding System-V ABI lowering to functions calls. (1e1ed8e)feat(llvm_codegen)Adding more support regarding System-V ABI on the compiler and LLVM code generation. (c2d6176)feat(llvm_codegen)Adding more support to x86 System V ABI. (f0259f0)- frontend:
(feat(project), feat(frontend))Addingstop-atflag to stop the compilation at specific phase, and also integratinggit-cliffto the project. (b0ef464)
Project
- project:
feat(project)Bumping Linux x86_64 Ubuntu v0.1.3 changelog. (a96d1d8) - project:
feat(project)Bumping v0.1.3 (ccdf70d) - project:
(feat(llvm_codegen), feat(project))Adding full System-V ABI implementation, and integrating control via compiler CLI. (d5dfaf2) - project:
feat(project)Adding automatic changelog generation and also, integrating as a all-in-one scriptdeploy-version.Xon each platform. (e7fb70e) - project:
feat(project)Adding automatic rust code docs. (e1f3a29) - project:
feat(project)Adding MacOS support on Rust Toolchain. (84f4939)
Generated by git-cliff
Command Line
The Thrust Compiler
Usage: thrustc [-flags|--flags] [files..]
General Commands:
• -h, --help optional[opt|emit|print|code-model|
reloc-model|sanitizer|symbol-linkage-strategy|
denormal-floating-point-behavior|
denormal-floating-point-32-bits-behavior] Show help message.
• -v, --version Show the version.
Linkage flags:
• -clang-link [path/to/clang] Specifies the path for use of an external Clang for linking purpose.
• -gcc-link [path/to/gcc] Specifies GNU Compiler Collection (GCC) for linking purpose.
• -start Marks the start of arguments to the active external or built-in linking compiler.
• -end Marks the end of arguments to the active external or built-in linker compiler.
Compiler flags:
• -build-dir Specify the compiler artifacts directory.
• -tools-dir Specify the compiler tools directory for search tools and expand compiler capatibilities.
• -target [x86_64] Set the target arquitecture.
• -target-triple [x86_64-pc-linux-gnu|x86_64-pc-windows-msvc] Set the target triple. For more information, see 'https://clang.llvm.org/docs/CrossCompilation.html'.
• -cpu [haswell|alderlake|ivybridge|pentium|pantherlake] It specify the CPU to optimize.
• -cpu-enable-features [sse2;cx16;sahf;tbm] It specify to enable certain CPU features to use.
• -cpu-disable-features [sse2;cx16;sahf;tbm] It specify to disable certain CPU features to use.
• -cpu-features [+sse2,+cx16,+sahf,-tbm] It overwrites the CPU features to use.
• -emit [llvm-bc|llvm-ir|asm|unopt-llvm-ir|unopt-llvm-bc|unopt-asm|obj|unchecked-pretty-ast|unchecked-ast|pretty-ast|ast|pretty-tokens|tokens] Compile the code into specified representation.
• -print [llvm-ir|unopt-llvm-...thrustc-x86_64-windows-msvc-v0.1.3
Thrust Compiler
Version: v0.1.3
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Changelog
All notable changes to the Thrust Compiler (thrustc) are documented here.
[thrustc-aarch64-macos-v0.1.3] - 2026-06-07
Bug Fixes
- project-visual:
fix(project-visual)Fixing broken links on README.md (7f85246)
Documentation
- project-visual:
feat(project-visual)Adding visual examples of compiler diagnostics. (f2950fa)
[thrustc-x86_64-linux-ubuntu-v0.1.3] - 2026-06-06
Bug Fixes
fix(llvm_codegen)Adding LValue changes on the System-V call epilogue. (24eeffc)- frontend:
fix(frontend)I fixed the rare issue case when the source isn't a pointer without metadata and the provided it is, typechecking. (0c2dd24) - project-visual:
fix(project-visual)Fixing a type on README.md (c1ae1de) - frontend:
(fix(llvm_codegen), fix(frontend))Several fixes around type casting on the LLVM backend, and also, on the compiler frontend, a better understable naming on variables, types, etc. (d46543d) fix(llvm_codegen)I issues regarding integer and float literal generation on the LLVM backend. (ee7a3e3)fix(llvm_codegen)I fixed some several issues found regarding void type on ABI type generation. (3248b84)fix(llvm_codegen)Fixing a serious issue inside integer and float generation, and also, integrating partial return clasification to System-V. (f9ca954)fix(llvm_codegen)hot fix to x86 System-V ABI type classification and, also I fixed an issue on call lowering. (ddd5c17)- project-visual:
fix(project-visual)I fixed some typos on README.md (e559559) - project-visual:
fix(project-visual)Removing automatic cargo docs. (caa4d5e) - project:
fix(project)I fixed a possible bad utilization regarding boolean binary operations on expression compiling on the LLVM backend. (ebe0359)
Documentation
- project-visual:
feat(project-visual)Adding another explanation to utilize the compiler compiled. (9d02371) - project-visual:
feat(project-visual)Adding extra clarifications regarding AI usage. (de12e8f) - project-visual:
(feat(project), feat(project-visual))Adding LLVM_CODEGEN fuzzing target and, also, a guide regarding Cargo alias. (d200be5) - project-visual:
feat(project-visual)Adding rust-code documentation via cargo docs. (1e64ded)
Features
- frontend:
(feat(frontend), fix(llvm_codegen), fix(frontend))I fixed some issues found on the call lowering and standard an ABI mode. Also I implemented the CudaCaller on Thrust. (132535b) feat(llvm_codegen)Fixed issues regarding to integer and boolean types on code generation. (d787416)- frontend:
(feat(llvm_codegen), feat(frontend))Adding address_space cast on LLVM codegen phase and support to Nvidia Cuda. (3b2cf2e) - frontend:
(feat(frontend), feat(llvm_codegen))Preparing Cuda code generation support, also, integrating@cudaattributee, and pointer address_space specifier. (bf07e12) feat(llvm_codegen)Adding array values lowering for System V ABI (a56d2c1)- frontend:
feat(frontend)Adding syntax highlighting for LLVM IR print. (be40909) feat(llvm_codegen)Adding System-V ABI lowering to functions calls. (1e1ed8e)feat(llvm_codegen)Adding more support regarding System-V ABI on the compiler and LLVM code generation. (c2d6176)feat(llvm_codegen)Adding more support to x86 System V ABI. (f0259f0)- frontend:
(feat(project), feat(frontend))Addingstop-atflag to stop the compilation at specific phase, and also integratinggit-cliffto the project. (b0ef464)
Project
- project:
feat(project)Bumping Linux x86_64 Ubuntu v0.1.3 changelog. (a96d1d8) - project:
feat(project)Bumping v0.1.3 (ccdf70d) - project:
(feat(llvm_codegen), feat(project))Adding full System-V ABI implementation, and integrating control via compiler CLI. (d5dfaf2) - project:
feat(project)Adding automatic changelog generation and also, integrating as a all-in-one scriptdeploy-version.Xon each platform. (e7fb70e) - project:
feat(project)Adding automatic rust code docs. (e1f3a29) - project:
feat(project)Adding MacOS support on Rust Toolchain. (84f4939)
[thrustc-x86_64-macos-v0.1.1] - 2026-05-11
Bug Fixes
- project:
fix(project)Adding thrustc-x86_64-macos-v0.1.1 Changelog. (743024f) - project:
fix(project)Migrating x86_64 macOS build to macos-15-intel (cade0d2) - project:
fix(project)I fixed an issue found on the Generating Unique ID name on the aarch64 MacOS action. (8a35452) - project-visual:
fix(project-visual)Reducing the amount of cross-compilation examples on README.md (a24c0e1) - project:
fix(project)I fixed some misunderstanding on the latest MacOS release. (d27f8bd)
Documentation
- project-visual:
feat(project-visual)Adding more example of cross-compilation. (08fbc44) - project-visual:
feat(project-visual)Adding more cross-compilation examples. (7b3190c)
[thrustc-aarch64-macos-v0.1.1] - 2026-05-11
Bug Fixes
- project-visual:
fix(project-visual)Removing unnecesary details on README.md (093b1fe) - project-visual:
fix(project-visual)Reshaping README.md (f09cbdd) - project-visual:
fix(project-visual)I fixed some typos found on README.md (de4c5db) - project:
fix(project)I fixed an issue that involucratezstdon the MacOS action. (906809a) - project:
fix(project)I fixed some issue regarding C++ headers on the MacOS action. (afc960b)...
thrustc-aarch64-macos-v0.1.3
Thrust Compiler
Version: v0.1.3
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Changelog
All notable changes to the Thrust Compiler (thrustc) are documented here.
[Unreleased]
Bug Fixes
- project-visual:
fix(project-visual)Fixing broken links on README.md (7f85246)
Documentation
- project-visual:
feat(project-visual)Adding visual examples of compiler diagnostics. (f2950fa)
[thrustc-x86_64-linux-ubuntu-v0.1.3] - 2026-06-06
Bug Fixes
fix(llvm_codegen)Adding LValue changes on the System-V call epilogue. (24eeffc)- frontend:
fix(frontend)I fixed the rare issue case when the source isn't a pointer without metadata and the provided it is, typechecking. (0c2dd24) - project-visual:
fix(project-visual)Fixing a type on README.md (c1ae1de) - frontend:
(fix(llvm_codegen), fix(frontend))Several fixes around type casting on the LLVM backend, and also, on the compiler frontend, a better understable naming on variables, types, etc. (d46543d) fix(llvm_codegen)I issues regarding integer and float literal generation on the LLVM backend. (ee7a3e3)fix(llvm_codegen)I fixed some several issues found regarding void type on ABI type generation. (3248b84)fix(llvm_codegen)Fixing a serious issue inside integer and float generation, and also, integrating partial return clasification to System-V. (f9ca954)fix(llvm_codegen)hot fix to x86 System-V ABI type classification and, also I fixed an issue on call lowering. (ddd5c17)- project-visual:
fix(project-visual)I fixed some typos on README.md (e559559) - project-visual:
fix(project-visual)Removing automatic cargo docs. (caa4d5e) - project:
fix(project)I fixed a possible bad utilization regarding boolean binary operations on expression compiling on the LLVM backend. (ebe0359)
Documentation
- project-visual:
feat(project-visual)Adding another explanation to utilize the compiler compiled. (9d02371) - project-visual:
feat(project-visual)Adding extra clarifications regarding AI usage. (de12e8f) - project-visual:
(feat(project), feat(project-visual))Adding LLVM_CODEGEN fuzzing target and, also, a guide regarding Cargo alias. (d200be5) - project-visual:
feat(project-visual)Adding rust-code documentation via cargo docs. (1e64ded)
Features
- frontend:
(feat(frontend), fix(llvm_codegen), fix(frontend))I fixed some issues found on the call lowering and standard an ABI mode. Also I implemented the CudaCaller on Thrust. (132535b) feat(llvm_codegen)Fixed issues regarding to integer and boolean types on code generation. (d787416)- frontend:
(feat(llvm_codegen), feat(frontend))Adding address_space cast on LLVM codegen phase and support to Nvidia Cuda. (3b2cf2e) - frontend:
(feat(frontend), feat(llvm_codegen))Preparing Cuda code generation support, also, integrating@cudaattributee, and pointer address_space specifier. (bf07e12) feat(llvm_codegen)Adding array values lowering for System V ABI (a56d2c1)- frontend:
feat(frontend)Adding syntax highlighting for LLVM IR print. (be40909) feat(llvm_codegen)Adding System-V ABI lowering to functions calls. (1e1ed8e)feat(llvm_codegen)Adding more support regarding System-V ABI on the compiler and LLVM code generation. (c2d6176)feat(llvm_codegen)Adding more support to x86 System V ABI. (f0259f0)- frontend:
(feat(project), feat(frontend))Addingstop-atflag to stop the compilation at specific phase, and also integratinggit-cliffto the project. (b0ef464)
Project
- project:
feat(project)Bumping Linux x86_64 Ubuntu v0.1.3 changelog. (a96d1d8) - project:
feat(project)Bumping v0.1.3 (ccdf70d) - project:
(feat(llvm_codegen), feat(project))Adding full System-V ABI implementation, and integrating control via compiler CLI. (d5dfaf2) - project:
feat(project)Adding automatic changelog generation and also, integrating as a all-in-one scriptdeploy-version.Xon each platform. (e7fb70e) - project:
feat(project)Adding automatic rust code docs. (e1f3a29) - project:
feat(project)Adding MacOS support on Rust Toolchain. (84f4939)
[thrustc-x86_64-macos-v0.1.1] - 2026-05-11
Bug Fixes
- project:
fix(project)Adding thrustc-x86_64-macos-v0.1.1 Changelog. (743024f) - project:
fix(project)Migrating x86_64 macOS build to macos-15-intel (cade0d2) - project:
fix(project)I fixed an issue found on the Generating Unique ID name on the aarch64 MacOS action. (8a35452) - project-visual:
fix(project-visual)Reducing the amount of cross-compilation examples on README.md (a24c0e1) - project:
fix(project)I fixed some misunderstanding on the latest MacOS release. (d27f8bd)
Documentation
- project-visual:
feat(project-visual)Adding more example of cross-compilation. (08fbc44) - project-visual:
feat(project-visual)Adding more cross-compilation examples. (7b3190c)
Generated by git-cliff
Command Line
The Thrust Compiler
Usage: thrustc [-flags|--flags] [files..]
General Commands:
• -h, --help optional[opt|emit|print|code-model|
reloc-model|sanitizer|symbol-linkage-strategy|
denormal-floating-point-behavior|
denormal-floating-point-32-bits-behavior] Show help message.
• -v, --version Show the version.
Linkage flags:
• -clang-link [path/to/clang] Specifies the path for use of an external Clang for linking purpose.
• -gcc-link [path/to/gcc] Specifies GNU Compiler Collection (GCC) for linking purpose.
• -start Marks the start of arguments to the active external or built-in linking compiler.
• -end Marks the end of arguments to the active external or built-in linker compiler.
Compiler flags:
• -build-dir Specify the compiler artifacts directory.
• -tools-dir Specify the compiler tools directory for search tools and expand compiler capatibilities.
• -target [x86_64] Set the target arquitecture.
• -target-triple [x86_64-pc-linux-gnu|x86_64-pc-windows-msvc] Set the target triple...thrustc-x86_64-linux-ubuntu-v0.1.3
Thrust Compiler
Version: v0.1.3
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Changelog
All notable changes to the Thrust Compiler (thrustc) are documented here.
[Unreleased]
Bug Fixes
fix(llvm_codegen)Adding LValue changes on the System-V call epilogue. (24eeffc)- frontend:
fix(frontend)I fixed the rare issue case when the source isn't a pointer without metadata and the provided it is, typechecking. (0c2dd24) - project-visual:
fix(project-visual)Fixing a type on README.md (c1ae1de) - frontend:
(fix(llvm_codegen), fix(frontend))Several fixes around type casting on the LLVM backend, and also, on the compiler frontend, a better understable naming on variables, types, etc. (d46543d) fix(llvm_codegen)I issues regarding integer and float literal generation on the LLVM backend. (ee7a3e3)fix(llvm_codegen)I fixed some several issues found regarding void type on ABI type generation. (3248b84)fix(llvm_codegen)Fixing a serious issue inside integer and float generation, and also, integrating partial return clasification to System-V. (f9ca954)fix(llvm_codegen)hot fix to x86 System-V ABI type classification and, also I fixed an issue on call lowering. (ddd5c17)- project-visual:
fix(project-visual)I fixed some typos on README.md (e559559) - project-visual:
fix(project-visual)Removing automatic cargo docs. (caa4d5e) - project:
fix(project)I fixed a possible bad utilization regarding boolean binary operations on expression compiling on the LLVM backend. (ebe0359)
Documentation
- project-visual:
feat(project-visual)Adding another explanation to utilize the compiler compiled. (9d02371) - project-visual:
feat(project-visual)Adding extra clarifications regarding AI usage. (de12e8f) - project-visual:
(feat(project), feat(project-visual))Adding LLVM_CODEGEN fuzzing target and, also, a guide regarding Cargo alias. (d200be5) - project-visual:
feat(project-visual)Adding rust-code documentation via cargo docs. (1e64ded)
Features
- frontend:
(feat(frontend), fix(llvm_codegen), fix(frontend))I fixed some issues found on the call lowering and standard an ABI mode. Also I implemented the CudaCaller on Thrust. (132535b) feat(llvm_codegen)Fixed issues regarding to integer and boolean types on code generation. (d787416)- frontend:
(feat(llvm_codegen), feat(frontend))Adding address_space cast on LLVM codegen phase and support to Nvidia Cuda. (3b2cf2e) - frontend:
(feat(frontend), feat(llvm_codegen))Preparing Cuda code generation support, also, integrating@cudaattributee, and pointer address_space specifier. (bf07e12) feat(llvm_codegen)Adding array values lowering for System V ABI (a56d2c1)- frontend:
feat(frontend)Adding syntax highlighting for LLVM IR print. (be40909) feat(llvm_codegen)Adding System-V ABI lowering to functions calls. (1e1ed8e)feat(llvm_codegen)Adding more support regarding System-V ABI on the compiler and LLVM code generation. (c2d6176)feat(llvm_codegen)Adding more support to x86 System V ABI. (f0259f0)- frontend:
(feat(project), feat(frontend))Addingstop-atflag to stop the compilation at specific phase, and also integratinggit-cliffto the project. (b0ef464)
Project
- project:
feat(project)Bumping v0.1.3 (ccdf70d) - project:
(feat(llvm_codegen), feat(project))Adding full System-V ABI implementation, and integrating control via compiler CLI. (d5dfaf2) - project:
feat(project)Adding automatic changelog generation and also, integrating as a all-in-one scriptdeploy-version.Xon each platform. (e7fb70e) - project:
feat(project)Adding automatic rust code docs. (e1f3a29) - project:
feat(project)Adding MacOS support on Rust Toolchain. (84f4939)
[thrustc-x86_64-macos-v0.1.1] - 2026-05-11
Bug Fixes
- project:
fix(project)Adding thrustc-x86_64-macos-v0.1.1 Changelog. (743024f) - project:
fix(project)Migrating x86_64 macOS build to macos-15-intel (cade0d2) - project:
fix(project)I fixed an issue found on the Generating Unique ID name on the aarch64 MacOS action. (8a35452) - project-visual:
fix(project-visual)Reducing the amount of cross-compilation examples on README.md (a24c0e1) - project:
fix(project)I fixed some misunderstanding on the latest MacOS release. (d27f8bd)
Documentation
- project-visual:
feat(project-visual)Adding more example of cross-compilation. (08fbc44) - project-visual:
feat(project-visual)Adding more cross-compilation examples. (7b3190c)
[thrustc-aarch64-macos-v0.1.1] - 2026-05-11
Bug Fixes
- project-visual:
fix(project-visual)Removing unnecesary details on README.md (093b1fe) - project-visual:
fix(project-visual)Reshaping README.md (f09cbdd) - project-visual:
fix(project-visual)I fixed some typos found on README.md (de4c5db) - project:
fix(project)I fixed an issue that involucratezstdon the MacOS action. (906809a) - project:
fix(project)I fixed some issue regarding C++ headers on the MacOS action. (afc960b) - project:
fix(project)I fixed some issue regarding C++ headers on the MacOS action. (d364d0c) - project:
fix(project)I fixed some issue found on the GCC C++ headers on the MacOS workflow. (c26117a) - project:
fix(project)I fixed an issue on MacOS action regarding C++ headers. (9db8e3c) - project:
fix(project)I fixed a build error on the MacOS workflow. ([a979488](a979488...
thrustc-x86_64-macos-v0.1.1
Thrust Compiler
Version: v0.1.1
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Changelog
Changelog
Command Line
The Thrust Compiler
Usage: thrustc [-flags|--flags] [files..]
General Commands:
• -h, --help optional[opt|emit|print|code-model|
reloc-model|sanitizer|symbol-linkage-strategy|
denormal-floating-point-behavior|
denormal-floating-point-32-bits-behavior] Show help message.
• -v, --version Show the version.
Linkage flags:
• -clang-link [path/to/clang] Specifies the path for use of an external Clang for linking purpose.
• -gcc-link [path/to/gcc] Specifies GNU Compiler Collection (GCC) for linking purpose.
• -start Marks the start of arguments to the active external or built-in linking compiler.
• -end Marks the end of arguments to the active external or built-in linker compiler.
Compiler flags:
• -build-dir Specify the compiler artifacts directory.
• -tools-dir Specify the compiler tools directory for search tools and expand compiler capatibilities.
• -target [x86_64] Set the target arquitecture.
• -target-triple [x86_64-pc-linux-gnu|x86_64-pc-windows-msvc] Set the target triple. For more information, see 'https://clang.llvm.org/docs/CrossCompilation.html'.
• -cpu [haswell|alderlake|ivybridge|pentium|pantherlake] It specify the CPU to optimize.
• -cpu-enable-features [sse2;cx16;sahf;tbm] It specify to enable certain CPU features to use.
• -cpu-disable-features [sse2;cx16;sahf;tbm] It specify to disable certain CPU features to use.
• -cpu-features [+sse2,+cx16,+sahf,-tbm] It overwrites the CPU features to use.
• -emit [llvm-bc|llvm-ir|asm|unopt-llvm-ir|unopt-llvm-bc|unopt-asm|obj|unchecked-pretty-ast|unchecked-ast|pretty-ast|ast|pretty-tokens|tokens] Compile the code into specified representation.
• -print [llvm-ir|unopt-llvm-ir|asm|unopt-asm|unchecked-pretty-ast|unchecked-ast|pretty-ast|ast|pretty-tokens|tokens] Displays the final compilation on standard output.
• -opt [O0|O1|O2|O3|Os|Oz] Optimization level.
• -jit Enable the use of the JIT compiler for code execution.
• -jit-libc [path/to/libc.so] Specify the C runtime to link for code execution via the JIT compiler.
• -jit-link [path/to/raylib.so] Specify, add, and link an external dynamic library for code execution via the JIT compiler.
• -jit-entry [main] Specify the entry point name for the JIT compiler.
• -dbg Enable generation of debug information (DWARF).
• -dbg-for-inlining Enable debug information specifically optimized for inlined functions.
• -dbg-for-profiling Emit extra debug info to support source-level profiling tools.
• -dbg-dwarf-version [v4|v5] Configure the Dwarf version for debugging purposes.
• --denormal-floating-point-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal floating-point values are handled during calculations.
• --denormal-floating-point-32-bits-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal 32-bit floating-point values are handled during calculations.
• --symbol-linkage-strategy [any|exact|large|samesize|noduplicates] Configure the symbol linkage merge strategy.
• --stack-protector It built a stack state guard that battles memory hacks and prevents memory corruptions.
• --sanitizer [address|hwaddress|memory|thread|memtag] Enable the specified sanitizer. Adds runtime checks for bugs like memory errors, data races and others, with potential performance overhead.
• --no-sanitize [bounds;coverage] Modifies certain code emissions for the selected sanitizer.
• --opt-passes [-p{passname,passname}] Pass a list of custom optimization passes. For more information, see: 'https://releases.llvm.org/17.0.1/docs/CommandGuide/opt.html#cmdoption-opt-passname'.
• --modificator-passes [loopvectorization;loopunroll;loopinterleaving;loopsimplifyvectorization;mergefunctions;callgraphprofile;forgetallscevinloopunroll;licmmssaaccpromcap=0;licmmssaoptcap=0;] Pass a list of custom modificator optimization passes.
• --reloc-model [static|pic|dynamic] Indicate how references to memory addresses and linkage symbols are handled.
• --code-model [small|medium|large|kernel] Define how code is organized and accessed at machine code level.
• --target-triple-darwin-variant [arm64-apple-ios15.0-macabi] Specify the darwin target variant triple.
• --macos-version [15.0.0] Specify the MacOS SDK version.
• --ios-version [17.4.0] Specify the iOS SDK version.
• --enable-ansi-color It allows ANSI color formatting in compiler diagnostics.
Disable compiler flags:
• --disable-frame-pointer Regardless of the optimization level, it omits the emission of the frame pointer.
• --disable-uwtable It omits the unwind table required for exception handling and stack tracing.
• --disable-direct-access-external-data It omits direct access to external data references, forcing all external data loads to be performed indirectly via the Global Offset Table (GOT).
• --disable-rtlib-got It omits the runtime library dependency on the Global Offset Table (GOT), essential when generating non-Position Independent Code (PIC) with ARM.
• --disable-safe-trapping-math It allow trapping math operations that can cause exceptions. Useful for floating-point operations.
• --disable-safe-math Disable safe math for integer operations (allows overflow and undefined behavior).
• --disable-default-optimization It omits default optimization that occurs even without specified optimization.
• --disable-all-sanitizers Disable all sanitizers.
• --disable-all-cpu-features Disable the all CPU features.
Warning compiler flags:
• --disable-all-warnings Disable all the general and specific warnings.
Other compiler flags:
• --copy-output-to-clipboard Copy the total printable output of the compiler into the operating system clipboard. It only works using '-print' compiler flag.
• --debug-clang-command Displays the generated command for Clang in the phase of linking.
• --debug-gcc-command Displays the generated command for GCC in the phase of linking.
• --export-compiler-errors Export compiler error diagnostics to files.
• --export-compiler-warnings Export compiler warning diagnostics to files.
• --export-diagnostics-path [diagnostics/] Specify the path where diagnostic files will be exported.
• --clean-exported-diagnostics Clean the exported diagnostics directory.
• --clean-build Clean the compiler build folder that holds everything.
• --clean-tokens Clean the compiler folder that holds the lexical analysis tokens.
• --clean-assembler Clean the compiler folder containing emitted assembler.
• --clean-llvm-ir Clean the compiler folder containing the emitted LLVM IR.
• --clean-llvm-bitcode Clean the compiler folder containing emitted LLVM bitcode.
• --clean-objects Clean the compiler folder containing emitted object files.
• --no-obfuscate-archive-names Stop generating name obfuscation for each file; this does not apply to the final build.
• --no-obfuscate-ir Stop generating name obfuscation in the emitted IR code.
• --print-targets Show the current target supported.
• --print-supported-cpus Show the current supported CPUs for the current target.
• --print-host-target-triple Show the host target triple.
• --print-opt-passes Show all available optimization passes through '--opt-passes=p{passname, passname}'.Dynamic Dependencies
thrustc/target/release/thrustc:
/usr/lib/libffi.dylib (compatibility version 1.0.0, current version 40.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1351.0.0)
/usr/local/opt/zstd/lib/libzstd.1.dylib (compatibility version 1.0.0, current version 1.5.7)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 1900.180.0)
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
thrustc-aarch64-macos-v0.1.1
Thrust Compiler
Version: v0.1.1
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Changelog
Changelog
Command Line
The Thrust Compiler
Usage: thrustc [-flags|--flags] [files..]
General Commands:
• -h, --help optional[opt|emit|print|code-model|
reloc-model|sanitizer|symbol-linkage-strategy|
denormal-floating-point-behavior|
denormal-floating-point-32-bits-behavior] Show help message.
• -v, --version Show the version.
Linkage flags:
• -clang-link [path/to/clang] Specifies the path for use of an external Clang for linking purpose.
• -gcc-link [path/to/gcc] Specifies GNU Compiler Collection (GCC) for linking purpose.
• -start Marks the start of arguments to the active external or built-in linking compiler.
• -end Marks the end of arguments to the active external or built-in linker compiler.
Compiler flags:
• -build-dir Specify the compiler artifacts directory.
• -tools-dir Specify the compiler tools directory for search tools and expand compiler capatibilities.
• -target [x86_64] Set the target arquitecture.
• -target-triple [x86_64-pc-linux-gnu|x86_64-pc-windows-msvc] Set the target triple. For more information, see 'https://clang.llvm.org/docs/CrossCompilation.html'.
• -cpu [haswell|alderlake|ivybridge|pentium|pantherlake] It specify the CPU to optimize.
• -cpu-enable-features [sse2;cx16;sahf;tbm] It specify to enable certain CPU features to use.
• -cpu-disable-features [sse2;cx16;sahf;tbm] It specify to disable certain CPU features to use.
• -cpu-features [+sse2,+cx16,+sahf,-tbm] It overwrites the CPU features to use.
• -emit [llvm-bc|llvm-ir|asm|unopt-llvm-ir|unopt-llvm-bc|unopt-asm|obj|unchecked-pretty-ast|unchecked-ast|pretty-ast|ast|pretty-tokens|tokens] Compile the code into specified representation.
• -print [llvm-ir|unopt-llvm-ir|asm|unopt-asm|unchecked-pretty-ast|unchecked-ast|pretty-ast|ast|pretty-tokens|tokens] Displays the final compilation on standard output.
• -opt [O0|O1|O2|O3|Os|Oz] Optimization level.
• -jit Enable the use of the JIT compiler for code execution.
• -jit-libc [path/to/libc.so] Specify the C runtime to link for code execution via the JIT compiler.
• -jit-link [path/to/raylib.so] Specify, add, and link an external dynamic library for code execution via the JIT compiler.
• -jit-entry [main] Specify the entry point name for the JIT compiler.
• -dbg Enable generation of debug information (DWARF).
• -dbg-for-inlining Enable debug information specifically optimized for inlined functions.
• -dbg-for-profiling Emit extra debug info to support source-level profiling tools.
• -dbg-dwarf-version [v4|v5] Configure the Dwarf version for debugging purposes.
• --denormal-floating-point-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal floating-point values are handled during calculations.
• --denormal-floating-point-32-bits-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal 32-bit floating-point values are handled during calculations.
• --symbol-linkage-strategy [any|exact|large|samesize|noduplicates] Configure the symbol linkage merge strategy.
• --stack-protector It built a stack state guard that battles memory hacks and prevents memory corruptions.
• --sanitizer [address|hwaddress|memory|thread|memtag] Enable the specified sanitizer. Adds runtime checks for bugs like memory errors, data races and others, with potential performance overhead.
• --no-sanitize [bounds;coverage] Modifies certain code emissions for the selected sanitizer.
• --opt-passes [-p{passname,passname}] Pass a list of custom optimization passes. For more information, see: 'https://releases.llvm.org/17.0.1/docs/CommandGuide/opt.html#cmdoption-opt-passname'.
• --modificator-passes [loopvectorization;loopunroll;loopinterleaving;loopsimplifyvectorization;mergefunctions;callgraphprofile;forgetallscevinloopunroll;licmmssaaccpromcap=0;licmmssaoptcap=0;] Pass a list of custom modificator optimization passes.
• --reloc-model [static|pic|dynamic] Indicate how references to memory addresses and linkage symbols are handled.
• --code-model [small|medium|large|kernel] Define how code is organized and accessed at machine code level.
• --target-triple-darwin-variant [arm64-apple-ios15.0-macabi] Specify the darwin target variant triple.
• --macos-version [15.0.0] Specify the MacOS SDK version.
• --ios-version [17.4.0] Specify the iOS SDK version.
• --enable-ansi-color It allows ANSI color formatting in compiler diagnostics.
Disable compiler flags:
• --disable-frame-pointer Regardless of the optimization level, it omits the emission of the frame pointer.
• --disable-uwtable It omits the unwind table required for exception handling and stack tracing.
• --disable-direct-access-external-data It omits direct access to external data references, forcing all external data loads to be performed indirectly via the Global Offset Table (GOT).
• --disable-rtlib-got It omits the runtime library dependency on the Global Offset Table (GOT), essential when generating non-Position Independent Code (PIC) with ARM.
• --disable-safe-trapping-math It allow trapping math operations that can cause exceptions. Useful for floating-point operations.
• --disable-safe-math Disable safe math for integer operations (allows overflow and undefined behavior).
• --disable-default-optimization It omits default optimization that occurs even without specified optimization.
• --disable-all-sanitizers Disable all sanitizers.
• --disable-all-cpu-features Disable the all CPU features.
Warning compiler flags:
• --disable-all-warnings Disable all the general and specific warnings.
Other compiler flags:
• --copy-output-to-clipboard Copy the total printable output of the compiler into the operating system clipboard. It only works using '-print' compiler flag.
• --debug-clang-command Displays the generated command for Clang in the phase of linking.
• --debug-gcc-command Displays the generated command for GCC in the phase of linking.
• --export-compiler-errors Export compiler error diagnostics to files.
• --export-compiler-warnings Export compiler warning diagnostics to files.
• --export-diagnostics-path [diagnostics/] Specify the path where diagnostic files will be exported.
• --clean-exported-diagnostics Clean the exported diagnostics directory.
• --clean-build Clean the compiler build folder that holds everything.
• --clean-tokens Clean the compiler folder that holds the lexical analysis tokens.
• --clean-assembler Clean the compiler folder containing emitted assembler.
• --clean-llvm-ir Clean the compiler folder containing the emitted LLVM IR.
• --clean-llvm-bitcode Clean the compiler folder containing emitted LLVM bitcode.
• --clean-objects Clean the compiler folder containing emitted object files.
• --no-obfuscate-archive-names Stop generating name obfuscation for each file; this does not apply to the final build.
• --no-obfuscate-ir Stop generating name obfuscation in the emitted IR code.
• --print-targets Show the current target supported.
• --print-supported-cpus Show the current supported CPUs for the current target.
• --print-host-target-triple Show the host target triple.
• --print-opt-passes Show all available optimization passes through '--opt-passes=p{passname, passname}'.Dynamic Dependencies
thrustc/target/release/thrustc:
/usr/lib/libffi.dylib (compatibility version 1.0.0, current version 40.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1351.0.0)
/opt/homebrew/opt/zstd/lib/libzstd.1.dylib (compatibility version 1.0.0, current version 1.5.7)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 1900.180.0)
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
thrustc-x86_64-windows-msvc-v0.1.0
Thrust Compiler
Version: v0.1.0
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Command Line
The Thrust Compiler
Usage: thrustc [-flags|--flags] [files..]
General Commands:
• -h, --help optional[opt|emit|print|code-model|
reloc-model|sanitizer|symbol-linkage-strategy|denormal-floating-point-behavior|
denormal-floating-point-32-bits-behavior] Show help message.
• -v, --version Show the version.
Linkage flags:
• -clang-link [path/to/clang] Specifies the path for use of an external Clang for linking purpose.
• -gcc-link [path/to/gcc] Specifies GNU Compiler Collection (GCC) for linking purpose.
• -start Marks the start of arguments to the active external or built-in linking compiler.
• -end Marks the end of arguments to the active external or built-in linker compiler.
Compiler flags:
• -build-dir Specify the compiler artifacts directory.
• -tools-dir Specify the compiler tools directory for search tools and expand compiler capatibilities.
• -target [x86_64] Set the target arquitecture.
• -target-triple [x86_64-pc-linux-gnu|x86_64-pc-windows-msvc] Set the target triple. For more information, see 'https://clang.llvm.org/docs/CrossCompilation.html'.
• -cpu [haswell|alderlake|ivybridge|pentium|pantherlake] It specify the CPU to optimize.
• -cpu-enable-features [sse2;cx16;sahf;tbm] It specify to enable certain CPU features to use.
• -cpu-disable-features [sse2;cx16;sahf;tbm] It specify to disable certain CPU features to use.
• -cpu-features [+sse2,+cx16,+sahf,-tbm] It overwrites the CPU features to use.
• -emit [llvm-bc|llvm-ir|asm|unopt-llvm-ir|unopt-llvm-bc|unopt-asm|obj|unchecked-ast|ast|tokens] Compile the code into specified representation.
• -print [llvm-ir|unopt-llvm-ir|asm|unopt-asm|unchecked-ast|ast|tokens] Displays the final compilation on standard output.
• -opt [O0|O1|O2|O3|Os|Oz] Optimization level.
• -jit Enable the use of the JIT compiler for code execution.
• -jit-libc [path/to/libc.so] Specify the C runtime to link for code execution via the JIT compiler.
• -jit-link [path/to/raylib.so] Specify, add, and link an external dynamic library for code execution via the JIT compiler.
• -jit-entry [main] Specify the entry point name for the JIT compiler.
• -dbg Enable generation of debug information (DWARF).
• -dbg-for-inlining Enable debug information specifically optimized for inlined functions.
• -dbg-for-profiling Emit extra debug info to support source-level profiling tools.
• -dbg-dwarf-version [v4|v5] Configure the Dwarf version for debugging purposes.
• --denormal-floating-point-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal floating-point values are handled during calculations.
• --denormal-floating-point-32-bits-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal 32-bit floating-point values are handled during calculations.
• --symbol-linkage-strategy [any|exact|large|samesize|noduplicates] Configure the symbol linkage merge strategy.
• --stack-protector It built a stack state guard that battles memory hacks and prevents memory corruptions.
• --sanitizer [address|hwaddress|memory|thread|memtag] Enable the specified sanitizer. Adds runtime checks for bugs like memory errors, data races and others, with potential performance overhead.
• --no-sanitize [bounds;coverage] Modifies certain code emissions for the selected sanitizer.
• --opt-passes [-p{passname,passname}] Pass a list of custom optimization passes. For more information, see: 'https://releases.llvm.org/17.0.1/docs/CommandGuide/opt.html#cmdoption-opt-passname'.
• --modificator-passes [loopvectorization;loopunroll;loopinterleaving;loopsimplifyvectorization;mergefunctions;callgraphprofile;forgetallscevinloopunroll;licmmssaaccpromcap=0;licmmssaoptcap=0;] Pass a list of custom modificator optimization passes.
• --reloc-model [static|pic|dynamic] Indicate how references to memory addresses and linkage symbols are handled.
• --code-model [small|medium|large|kernel] Define how code is organized and accessed at machine code level.
• --target-triple-darwin-variant [arm64-apple-ios15.0-macabi] Specify the darwin target variant triple.
• --macos-version [15.0.0] Specify the MacOS SDK version.
• --ios-version [17.4.0] Specify the iOS SDK version.
• --enable-ansi-color It allows ANSI color formatting in compiler diagnostics.
Disable compiler flags:
• --disable-frame-pointer Regardless of the optimization level, it omits the emission of the frame pointer.
• --disable-uwtable It omits the unwind table required for exception handling and stack tracing.
• --disable-direct-access-external-data It omits direct access to external data references, forcing all external data loads to be performed indirectly via the Global Offset Table (GOT).
• --disable-rtlib-got It omits the runtime library dependency on the Global Offset Table (GOT), essential when generating non-Position Independent Code (PIC) with ARM.
• --disable-safe-trapping-math It allow trapping math operations that can cause exceptions. Useful for floating-point operations.
• --disable-safe-math Disable safe math for integer operations (allows overflow and undefined behavior).
• --disable-default-optimization It omits default optimization that occurs even without specified optimization.
• --disable-all-sanitizers Disable all sanitizers that may be enabled.
• --disable-all-cpu-features Disable the all CPU features. that may be enabled.
Other compiler flags:
• --copy-output-to-clipboard Copy the total printable output of the compiler into the operating system clipboard. It only works using '-print' compiler flag.
• --debug-clang-command Displays the generated command for Clang in the phase of linking.
• --debug-gcc-command Displays the generated command for GCC in the phase of linking.
• --export-compiler-errors Export compiler error diagnostics to files.
• --export-compiler-warnings Export compiler warning diagnostics to files.
• --export-diagnostics-path [diagnostics/] Specify the path where diagnostic files will be exported.
• --clean-exported-diagnostics Clean the exported diagnostics directory.
• --clean-build Clean the compiler build folder that holds everything.
• --clean-tokens Clean the compiler folder that holds the lexical analysis tokens.
• --clean-assembler Clean the compiler folder containing emitted assembler.
• --clean-llvm-ir Clean the compiler folder containing the emitted LLVM IR.
• --clean-llvm-bitcode Clean the compiler folder containing emitted LLVM bitcode.
• --clean-objects Clean the compiler folder containing emitted object files.
• --no-obfuscate-archive-names Stop generating name obfuscation for each file; this does not apply to the final build.
• --no-obfuscate-ir Stop generating name obfuscation in the emitted IR code.
• --print-targets Show the current target supported.
• --print-supported-cpus Show the current supported CPUs for the current target.
• --print-host-target-triple Show the host target triple.
• --print-opt-passes Show all available optimization passes through '--opt-passes=p{passname, passname}'.thrustc-x86_64-linux-ubuntu-v0.1.0
Thrust Compiler
Version: v0.1.0
Backends
LLVM
Architecture targets for which the compiler was compiled.
x86_64AArch64RISC-VARMMIPSPowerPCSystemZAMDGPUHexagonLanaiLoongArchMSP430NVPTXSPARCXCoreBPFSPIR-VWebAssembly
Dynamic Dependencies
linux-vdso.so.1 (0x00007ff7a7f10000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007ff7a7ea9000)
libffi.so.8 => /usr/lib/libffi.so.8 (0x00007ff7a7e9c000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007ff7a7da9000)
libzstd.so.1 => /usr/lib/libzstd.so.1 (0x00007ff7a1ae6000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007ff7a1800000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007ff7a7d74000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007ff7a1400000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007ff7a7f12000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00007ff7a7d6d000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007ff7a7d65000)
Command Line
The Thrust Compiler
Usage: thrustc [-flags|--flags] [files..]
General Commands:
• -h, --help optional[opt|emit|print|code-model|
reloc-model|sanitizer|symbol-linkage-strategy|denormal-floating-point-behavior|
denormal-floating-point-32-bits-behavior] Show help message.
• -v, --version Show the version.
Linkage flags:
• -clang-link [path/to/clang] Specifies the path for use of an external Clang for linking purpose.
• -gcc-link [path/to/gcc] Specifies GNU Compiler Collection (GCC) for linking purpose.
• -start Marks the start of arguments to the active external or built-in linking compiler.
• -end Marks the end of arguments to the active external or built-in linker compiler.
Compiler flags:
• -build-dir Specify the compiler artifacts directory.
• -tools-dir Specify the compiler tools directory for search tools and expand compiler capatibilities.
• -target [x86_64] Set the target arquitecture.
• -target-triple [x86_64-pc-linux-gnu|x86_64-pc-windows-msvc] Set the target triple. For more information, see 'https://clang.llvm.org/docs/CrossCompilation.html'.
• -cpu [haswell|alderlake|ivybridge|pentium|pantherlake] It specify the CPU to optimize.
• -cpu-enable-features [sse2;cx16;sahf;tbm] It specify to enable certain CPU features to use.
• -cpu-disable-features [sse2;cx16;sahf;tbm] It specify to disable certain CPU features to use.
• -cpu-features [+sse2,+cx16,+sahf,-tbm] It overwrites the CPU features to use.
• -emit [llvm-bc|llvm-ir|asm|unopt-llvm-ir|unopt-llvm-bc|unopt-asm|obj|unchecked-ast|ast|tokens] Compile the code into specified representation.
• -print [llvm-ir|unopt-llvm-ir|asm|unopt-asm|unchecked-ast|ast|tokens] Displays the final compilation on standard output.
• -opt [O0|O1|O2|O3|Os|Oz] Optimization level.
• -jit Enable the use of the JIT compiler for code execution.
• -jit-libc [path/to/libc.so] Specify the C runtime to link for code execution via the JIT compiler.
• -jit-link [path/to/raylib.so] Specify, add, and link an external dynamic library for code execution via the JIT compiler.
• -jit-entry [main] Specify the entry point name for the JIT compiler.
• -dbg Enable generation of debug information (DWARF).
• -dbg-for-inlining Enable debug information specifically optimized for inlined functions.
• -dbg-for-profiling Emit extra debug info to support source-level profiling tools.
• -dbg-dwarf-version [v4|v5] Configure the Dwarf version for debugging purposes.
• --denormal-floating-point-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal floating-point values are handled during calculations.
• --denormal-floating-point-32-bits-behavior ["IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic,IEEE|preserve-sign-signature|transform-to-positive-zero|dynamic"] Configure how denormal 32-bit floating-point values are handled during calculations.
• --symbol-linkage-strategy [any|exact|large|samesize|noduplicates] Configure the symbol linkage merge strategy.
• --stack-protector It built a stack state guard that battles memory hacks and prevents memory corruptions.
• --sanitizer [address|hwaddress|memory|thread|memtag] Enable the specified sanitizer. Adds runtime checks for bugs like memory errors, data races and others, with potential performance overhead.
• --no-sanitize [bounds;coverage] Modifies certain code emissions for the selected sanitizer.
• --opt-passes [-p{passname,passname}] Pass a list of custom optimization passes. For more information, see: 'https://releases.llvm.org/17.0.1/docs/CommandGuide/opt.html#cmdoption-opt-passname'.
• --modificator-passes [loopvectorization;loopunroll;loopinterleaving;loopsimplifyvectorization;mergefunctions;callgraphprofile;forgetallscevinloopunroll;licmmssaaccpromcap=0;licmmssaoptcap=0;] Pass a list of custom modificator optimization passes.
• --reloc-model [static|pic|dynamic] Indicate how references to memory addresses and linkage symbols are handled.
• --code-model [small|medium|large|kernel] Define how code is organized and accessed at machine code level.
• --target-triple-darwin-variant [arm64-apple-ios15.0-macabi] Specify the darwin target variant triple.
• --macos-version [15.0.0] Specify the MacOS SDK version.
• --ios-version [17.4.0] Specify the iOS SDK version.
• --enable-ansi-color It allows ANSI color formatting in compiler diagnostics.
Disable compiler flags:
• --disable-frame-pointer Regardless of the optimization level, it omits the emission of the frame pointer.
• --disable-uwtable It omits the unwind table required for exception handling and stack tracing.
• --disable-direct-access-external-data It omits direct access to external data references, forcing all external data loads to be performed indirectly via the Global Offset Table (GOT).
• --disable-rtlib-got It omits the runtime library dependency on the Global Offset Table (GOT), essential when generating non-Position Independent Code (PIC) with ARM.
• --disable-safe-trapping-math It allow trapping math operations that can cause exceptions. Useful for floating-point operations.
• --disable-safe-math Disable safe math for integer operations (allows overflow and undefined behavior).
• --disable-default-optimization It omits default optimization that occurs even without specified optimization.
• --disable-all-sanitizers Disable all sanitizers that may be enabled.
• --disable-all-cpu-features Disable the all CPU features. that may be enabled.
Other compiler flags:
• --copy-output-to-clipboard Copy the total printable output of the compiler into the operating system clipboard. It only works using '-print' compiler flag.
• --debug-clang-command Displays the generated command for Clang in the phase of linking.
• --debug-gcc-command Displays the generated command for GCC in the phase of linking.
• --export-compiler-errors Export compiler error diagnostics to files.
• --export-compiler-warnings Export compiler warning diagnostics to files.
• --export-diagnostics-path [diagnostics/] Specify the path where diagnostic files will be exported.
• --clean-exported-diagnostics Clean the exported diagnostics directory.
• --clean-build Clean the compiler build folder that holds everything.
• --clean-tokens Clean the compiler folder that holds the lexical analysis tokens.
• --clean-assembler Clean the compiler folder containing emitted assembler.
• --clean-llvm-ir Clean the compiler folder containing the emitted LLVM IR.
• --clean-llvm-bitcode Clean the compiler folder containing emitted LLVM bitcode.
• --clean-objects Clean the compiler folder containing emitted object files.
• --no-obfuscate-archive-names Stop generating name obfuscation for each file; this does not apply to the final build.
• --no-obfuscate-ir Stop generating name obfuscation in the emitted IR code.
• --print-targets Show the current target supported.
• --print-supported-cpus Show the current supported CPUs for the current target.
• --print-host-target-triple Show the host target triple.
• --print-opt-passes Show all available optimization passes through '--opt-passes=p{passname, passname}'.