alacritty: Dev profile segmentation fault on MacOS M1
System
OS: macOS Version: alacritty 0.11.0-dev (67371048) (master at the time of writing)
Logs
$ target/debug/alacritty -v
Created log file at "/tmp/Alacritty-35354.log"
[0.000061416s] [INFO ] [alacritty] Welcome to Alacritty
[0.000327875s] [INFO ] [alacritty] Version 0.11.0-dev (67371048)
[0.001401958s] [INFO ] [alacritty] Configuration files loaded from:
"/Users/nils/.config/alacritty/alacritty.yml"
[0.077961291s] [INFO ] [alacritty] Running on Apple M1
[0.078008333s] [INFO ] [alacritty] Using OpenGL 3.3 renderer
[0.080505291s] [INFO ] [alacritty] Display scale factor: 2
Segmentation fault: 11
There are no issues when alacritty is built using the --release
flag.
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 18 (10 by maintainers)
If someone is interested in looking into it deeper, feel free to check out issues/commits in the compiler to identify what actually caused/fixed this or ask upstream directly.
But I don’t think there’s anything actionable for Alacritty, considering that it does seem fixed.
Seems like a rustc/llvm bug that got fixed to me? Could probably bring it to them or so, but it looks like a compiler bug due to assembly you’ve posted?
I’d also assume that when you’ve moved
glBindTexture
call to another unsafe block it started to work again?Also, 🚫 is for crashing, right?
I have been able to reproduce either the same or a similar issue. I don’t have
gdb
, butlldb
reports the following:The generated code up to this point is as follows:
Looking into the generated code, it seems that the value of
self
inx0
is being clobbered before the call togl::BindTexture
, although I don’t entirely follow what’s going on. Certainlyx0
no longer containsself
:If I move to
gl::BindTexture
out of the unsafe block and into it’s own block before the variables are declared, the clobbering goes away.Try running attaching debug to
target/debug/alacritty
.