| 1 Nov 2025 |
Ihar Hrachyshka | oh if I were to know the cause... | 17:07:38 |
Ihar Hrachyshka | for now I'm just waiting for mozilla folks who are now looking into it to come back with a fix. then we will probably know if we have a path with llvm21. | 17:08:20 |
emily | have you tried bisecting? shouldn't take too long | 17:08:47 |
Ihar Hrachyshka | bisecting whom? llvm? | 17:08:57 |
emily | yeah | 17:09:38 |
emily | we have a known good and known bad version | 17:09:45 |
Ihar Hrachyshka | I am not sure about "shouldn't take too long" :D but maybe I'm missing something. AFAIU it means rebuilding the world a bunch of times. | 17:10:25 |
emily | not the world. just LLVM, Rust, Firefox | 17:10:33 |
emily | which sure, take a long time, but bisect is O(log n). | 17:10:41 |
emily | so if you've built a handful of Firefoxes already you're well on the way to the total time it'd take to just find the problematic commit. | 17:10:54 |
emily | which is going to be required for any long-term solution | 17:11:00 |
Ihar Hrachyshka | :) I wasn't planning to spend a week babysitting a bisect but yeah sure :D | 17:12:01 |
emily | I'd expect more like a couple days, but who knows | 17:13:51 |
emily | Git will at least tell you immediately how many steps it anticipates | 17:14:02 |
Ihar Hrachyshka | I mean... I hear you, just not what I was planning to spend time on in the next few weeks, but if mozilla folks don't come back with some solution, we'll of course have to do it ourselves. | 17:14:58 |
emily | the immediate ergonomic solution would be to just get rid of the llvmSharedForBuild stuff in Rust | 17:15:52 |
emily | but in general | 17:16:35 |
emily | we will not be able to support what you are doing for too long | 17:16:40 |
emily | since IIRC Rust only supports the last couple LLVM versions | 17:16:48 |
emily | of course this will also be a problem for Mozilla… | 17:16:54 |
Ihar Hrachyshka | they are still on llvm19 | 17:18:14 |
Ihar Hrachyshka | looking at adopting 20 I think | 17:18:19 |
Ihar Hrachyshka | fun fact - mozilla dude had to compile 21 himself because they apparently don't release builds of 21 for macos yet? | 17:18:53 |
emily | I thought they switched to 20 already. | 17:20:39 |
emily | but are they on an old Rust then? because I'd be surprised if latest Rust supports LLVM 19 | 17:20:51 |
Ihar Hrachyshka | https://bugzilla.mozilla.org/show_bug.cgi?id=1923255 | 17:23:02 |
emily | fyi, this is the function: https://searchfox.org/firefox-main/source/image/encoders/png/nsPNGEncoder.cpp#718. I am wondering if something dodgy is going on with alignment here. (perhaps → #mozilla:nixos.org) | 17:23:39 |
Ihar Hrachyshka | their rust policy: https://github.com/mozilla-firefox/firefox/blob/main/docs/writing-rust-code/update-policy.md | 17:26:08 |
Ihar Hrachyshka | Firefox 143 Rust 1.86.0 1.82.0
Firefox 144 Rust 1.89.0 ? | 17:27:08 |
Ihar Hrachyshka | bisect for llvm would be 15 steps if all goes well (I don't know how often I'd need to skip in the process) | 17:35:44 |