Skip to content

Releases: thrustlang/thrustc

thrustc-x86_64-macos-v0.1.3

09 Jun 00:05

Choose a tag to compare

Thrust Compiler

Version: v0.1.3

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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 @cuda attributee, 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)) Adding stop-at flag to stop the compilation at specific phase, and also integrating git-cliff to 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 script deploy-version.X on 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-...
Read more

thrustc-x86_64-windows-msvc-v0.1.3

07 Jun 19:20

Choose a tag to compare

Thrust Compiler

Version: v0.1.3

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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 @cuda attributee, 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)) Adding stop-at flag to stop the compilation at specific phase, and also integrating git-cliff to 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 script deploy-version.X on 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 involucrate zstd on the MacOS action. (906809a)
  • project: fix(project) I fixed some issue regarding C++ headers on the MacOS action. (afc960b)...
Read more

thrustc-aarch64-macos-v0.1.3

07 Jun 15:06

Choose a tag to compare

Thrust Compiler

Version: v0.1.3

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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 @cuda attributee, 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)) Adding stop-at flag to stop the compilation at specific phase, and also integrating git-cliff to 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 script deploy-version.X on 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...
Read more

thrustc-x86_64-linux-ubuntu-v0.1.3

07 Jun 01:36

Choose a tag to compare

Thrust Compiler

Version: v0.1.3

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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 @cuda attributee, 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)) Adding stop-at flag to stop the compilation at specific phase, and also integrating git-cliff to 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 script deploy-version.X on 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 involucrate zstd on 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...
Read more

thrustc-x86_64-macos-v0.1.1

11 May 04:56

Choose a tag to compare

Thrust Compiler

Version: v0.1.1

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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

10 May 23:19

Choose a tag to compare

Thrust Compiler

Version: v0.1.1

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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

06 May 01:22

Choose a tag to compare

Thrust Compiler

Version: v0.1.0

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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

04 May 04:44

Choose a tag to compare

Thrust Compiler

Version: v0.1.0

Backends

LLVM

Architecture targets for which the compiler was compiled.

  • x86_64
  • AArch64
  • RISC-V
  • ARM
  • MIPS
  • PowerPC
  • SystemZ
  • AMDGPU
  • Hexagon
  • Lanai
  • LoongArch
  • MSP430
  • NVPTX
  • SPARC
  • XCore
  • BPF
  • SPIR-V
  • WebAssembly

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}'.