diff options
| author | bors <bors@rust-lang.org> | 2019-02-01 23:43:34 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2019-02-01 23:43:34 +0000 |
| commit | 2efa31b2d9bf171fecd294b8e0126d8ffdb453e3 (patch) | |
| tree | a7be085de514ca23d9b4737697eb4aec45092460 /src/libsyntax | |
| parent | 852701ad6df90f4e4cdb11d487373f026f38e5b3 (diff) | |
| parent | 49931fda56dc6268ba3c104b64768f551cfc4636 (diff) | |
| download | rust-2efa31b2d9bf171fecd294b8e0126d8ffdb453e3.tar.gz rust-2efa31b2d9bf171fecd294b8e0126d8ffdb453e3.zip | |
Auto merge of #57937 - denzp:nvptx, r=nagisa
NVPTX target specification This change adds a built-in `nvptx64-nvidia-cuda` GPGPU no-std target specification and a basic PTX assembly smoke tests. The approach is taken here and the target spec is based on `ptx-linker`, a project started about 1.5 years ago. Key feature: bitcode object files being linked with LTO into the final module on the linker's side. Prior to this change, the linker used a `ld` linker-flavor, but I think, having the special CLI convention is a more reliable way. Questions about further progress on reliable CUDA workflow with Rust: 1. Is it possible to create a test suite `codegen-asm` to verify end-to-end integration with LLVM backend? 1. How would it be better to organise no-std `compile-fail` tests: add `#![no_std]` where possible and mark others as `ignore-nvptx` directive, or alternatively, introduce `compile-fail-no-std` test suite? 1. Can we have the `ptx-linker` eventually be integrated as `rls` or `clippy`? Hopefully, this should allow to statically link against LLVM used in Rust and get rid of the [current hacky solution](https://github.com/denzp/rustc-llvm-proxy). 1. Am I missing some methods from `rustc_codegen_ssa::back::linker::Linker` that can be useful for bitcode-only linking? Currently, there are no major public CUDA projects written in Rust I'm aware of, but I'm expecting to have a built-in target will create a solid foundation for further experiments and awesome crates. Related to #38789 Fixes #38787 Fixes #38786
Diffstat (limited to 'src/libsyntax')
0 files changed, 0 insertions, 0 deletions
