-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Revise alltypes.h
update process. NFC
#24773
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
Open
kleisauke
wants to merge
12
commits into
emscripten-core:main
Choose a base branch
from
kleisauke:revise-musl-alltypes-h
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+193
−112
Open
Changes from 8 commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
4ba2500
Revise `alltypes.h` update process. NFC
kleisauke 4bb13ba
Deduplicate arch/emscripten/bits/alltypes.h{,in} with include/libc/al…
kleisauke 4a3bcba
Incorporate feedback
kleisauke ecefbbd
Reinstate `__cplusplus` conditional
kleisauke f496d34
Merge branch 'main' into revise-musl-alltypes-h
kleisauke 82662c0
Update after af67939
kleisauke bce77c4
Merge branch 'main' into revise-musl-alltypes-h
kleisauke 6809780
Ensure byte-for-byte identical `libc-mt.a`
kleisauke 4eba06a
Incorporate feedback
kleisauke 83844be
Merge branch 'main' into revise-musl-alltypes-h
kleisauke 01404ac
Merge branch 'main' into revise-musl-alltypes-h
kleisauke de8d801
Merge branch 'main' into revise-musl-alltypes-h
kleisauke File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some of these look like real ABI changes. Perhaps we should try to make this changes actually NFC and do any ABI changes as followups? (or land them first).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a bit tricky to review, but
blkcnt_t
should still be 32-bit, see:emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h
Lines 25 to 29 in 82662c0
These 32-bit type overrides originate from
alltypes.h.in
:emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h.in
Lines 17 to 23 in 82662c0
(and
alltypes.h
is generated from this file)The musl default definitions starts at line 95:
emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h
Line 95 in 82662c0
Also,
other.test_gen_struct_info
still passes on this branch, any ABI break would likely have caused it to fail.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With commit 6809780 and the following local change:
I now see:
So, when built without debug information, the libc static libraries are byte-for-byte identical to those built from the main branch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh that is rather annoying/strange. It makes things like
git grep typedef.*blkcnt_t
a little annoying.Can you add a comment to the end of the emscripen-specific file saying something like this:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good idea! I added a comment via 4eba06a. We could perhaps consider marking this file with
linguist-generated=true
in.gitattributes
to ensure the diff is hidden by default, though I don't feel strongly about it.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nah, I don't think this file should change often, and when it does I really want to see the details since this is ABI-defining stuff.