mirror of
https://github.com/compiler-explorer/compiler-explorer.git
synced 2026-07-16 15:09:25 -04:00
Hi ! This PR adds the [scale nvcc compiler](https://docs.scale-lang.com/stable/) to the CE live site for both AMD and Nvidia backends It works locally and shows host asm, device LLVMIR and: - PTX ans SASS for Nvidia backend, - AMDGPU code for AMD backend. There is a bug in scale 1.7.1 that prevents the compilation with both `-S, -o` flags. As a result I had to make some temp workarounds. For Nvidia backend, PTX is written in the device `.s` file. I run it through `ptax` and `nvidasm` to get the SASS. To get the LLVMIR, I decode the device `.bc` file with `llvm-dis`. For AMD backend, the `.s` file is the AMDGPU code, and the LLVMIR is obtained the same way. I plan to make the `.ts` script closer to say `nvcc.ts` once the flag bugs are fixed in scale. Let me know if there is anything I missed for the live site integration. infra PR: https://github.com/compiler-explorer/infra/pull/2191 Issue: https://github.com/compiler-explorer/compiler-explorer/issues/8865 I acknowledge the use of generative AI to help drafting the code of this PR. --------- Co-authored-by: mattgodbolt-molty <mattgodbolt-molty@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>