| 16 May 2025 |
emily | would make sense to bump Rust at the same time since Firefox also tests LLVM on Linux quite a lot through that | 22:06:51 |
Tristan Ross | Alright, I might add a section to pkgs/development/compilers/llvm/README.md to document what's needed when bumping LLVM treewide since it seems there's quite a bit of stuff. | 22:11:57 |
emily | FWIW, rustc.passthru.tests covers all the Linux stuff | 22:12:52 |
emily | so Darwin stdenv + that + pkgsLLVM.hello should be sufficient if Rust is bumped | 22:13:11 |
emily | I forget if we're expecting any major breaking changes from 20 | 22:13:31 |
emily | for 19 we did quite a lot of prep because a ton of things broke https://github.com/NixOS/nixpkgs/pull/354107 | 22:13:41 |
Tristan Ross | Yeah, I'm thinking we could do a NixOS test in pkgsLLVM once we have it more workable | 22:13:45 |
emily | though that was in part just because it was pre-branchoff | 22:13:54 |
Tristan Ross | Oh, yeah I forgot about that PR lol | 22:14:18 |
Randy Eckenrode | I have run into some other failures, but I don’t know if they’re related. catch2 (transitive dependency of mpv) fails to build. Another one did as well, but I don}t recall what it was off hand. | 22:58:51 |
Tristan Ross | I think it's generally okay if there's some failures, it's just critical things. And we can fix it when we see it. | 23:18:46 |
emily | triage bandwidth is an issue, if it holds up security fixes in the -next cycle because a ton of stuff is broken on Darwin | 23:25:04 |
emily | I assume we're not looking at LLVM 19 levels of breakage though | 23:25:12 |
emily | GCC 15 bump should be about due too… | 23:25:19 |
Tristan Ross | Yeah, this is one of the reason why I think these sorts of things should be done early after branch off since it gives us the maximum amount of time to fix issues. | 23:45:50 |
emily | well, for -next that doesn't help so much, since we can only merge if at least all channel blockers are working, and there's always security fixes in the pipeline | 23:46:27 |
Tristan Ross | Maybe in the next staging cycle or this one we could do it? | 23:46:33 |
emily | beyond -next timing earlier in the cycle is best of course | 23:46:35 |
emily | but the less testing that's done up-front the more likely a big bump is to block the cycle and the more triage bandwidth during the cycle is required ultimately | 23:46:57 |
Tristan Ross | Yeah, find and fix what we can mostly in the pre-commit rather than merging. | 23:47:34 |
| 17 May 2025 |
Tristan Ross | Cool, rust builds with LLVM 20 just fine | 00:48:36 |
emily | that's what they build with upstream | 01:10:05 |
emily | I think we should do as Alyssa suggested and just have Rust use the standard LLVM version now | 01:10:18 |
emily | since it will simplify this going forward | 01:10:26 |
Randy Eckenrode | I need to finish up the SDK bump, so the Darwin cycle can be extra exciting. | 02:25:50 |
Randy Eckenrode | * I need to finish up the SDK bump, so the next cycle can be extra exciting for Darwin. | 02:26:02 |
Tristan Ross | Reading the release notes for LLVM 20, something nice caught my eye for RISC-V:
- The Sha extension is now supported.
| 03:17:21 |
Tristan Ross | WASM had a change in default target behavior:
The default target CPU, “generic”, now enables the -mnontrapping-fptoint and -mbulk-memory flags, which correspond to the Bulk Memory Operations and Non-trapping float-to-int Conversions language features, which are widely implemented in engines.
| 03:18:04 |
Tristan Ross | Cool so rust has that change emily raised and Alyssa had. rust builds, mesa builds, libclc has a patch rebased, spirv-llvm-translator works, now testing Firefox. | 03:25:24 |
Tristan Ross | Does the current GHC in use use LLVM 20? | 03:27:03 |