Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DONOTMERGE] Debug x86 darwin issue #57821

Draft
wants to merge 20 commits into
base: master
Choose a base branch
from

Conversation

Zentrik
Copy link
Member

@Zentrik Zentrik commented Mar 18, 2025

Try to debug issue at #57658 (comment)

Zentrik added 6 commits March 15, 2025 12:30
I missed some deprecations in the previous pr and if we're using jitlink another header file needs to be included.
@Zentrik Zentrik added the DO NOT MERGE Do not merge this PR! label Mar 18, 2025
@gbaraldi
Copy link
Member

I would try doing ar -x sys-o.a and then
nm text\#0.o | grep ___extendhfsf2
and
nm text\#1.o | grep ___extendhfsf2
.
Currently these are internal symbols

❯ nm text#0.o | grep ___extendhfsf2
0000000000291284 t ___extendhfsf2
usr/lib/julia on  gb/const-return-param [$?]
❯ nm text#1.o | grep ___extendhfsf2
000000000029b638 t ___extendhfsf2
usr/lib/julia on  gb/const-return-param [$?]
❯ nm text#2.o | grep ___extendhfsf2
000000000028f8e8 t ___extendhfsf2
but maybe something changed in LLVM 20

@Zentrik
Copy link
Member Author

Zentrik commented Mar 18, 2025

Wait is there a difference between two leading underscores and three, because the error references symbols with 3 but my sys-o.a on linux and the references in jitlayers.cpp use 2.

I'm mostly hoping this just works with the yggy build as I don't have access to a mac nor have I ever done dev work on one.

@giordano
Copy link
Contributor

Wait is there a difference between two leading underscores and three, because the #57658 (comment) references symbols with 3 but my sys-o.a on linux and the references in jitlayers.cpp use 2.

macOS compilers mangle all symbols by adding an extra leading underscore. So you should always expect one extra underscore when comparing symbols between macOS and rest of the world. This is also why c++filt has an option for stripping a leading underscore.

@Zentrik
Copy link
Member Author

Zentrik commented Mar 19, 2025

The hang is probably just #55844, so looks like it works with the yggy build.
Nvm it's failing now that I cherry picked the fix for that.

@ViralBShah
Copy link
Member

These machines are increasingly harder to come by. I am sure we will start seeing projects starting to drop Darwin x86 at some point - perhaps we are still 2-3 years away from that.

@gbaraldi
Copy link
Member

More importantly this might be an issue that shows up in different ways

@Zentrik
Copy link
Member Author

Zentrik commented Mar 19, 2025

Upstream issue at llvm/llvm-project#132055.

Not that it was useful here for me but for future reference, github actions has x86 macs and https://github.com/MatthewCroughan/NixThePlanet provides a easy way to get a x86 mac vm running on linux.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DO NOT MERGE Do not merge this PR!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants