-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Inline TLS field access for linux/osx x64/arm64 #87082
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
Merged
Merged
Changes from all commits
Commits
Show all changes
88 commits
Select commit
Hold shift + click to select a range
9387a59
wip
kunalspathak 4b27a2d
add __tls_get_addr() code in jitinterface
kunalspathak 909b8e6
working model
kunalspathak 773eb84
linux rely on __tls_get_addr() value
kunalspathak 05aaa68
Add fields for both max/threadSTaticBlocks, have separate for GC/non-gc
kunalspathak 03d9c2c
code cleanup
kunalspathak a98c2cf
code cleanup
kunalspathak 04b3cbc
add comments
kunalspathak 46d8fc3
jit format
kunalspathak f44d745
update guid
kunalspathak 67d33a9
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak 7fb2f16
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak fcbebaa
review feedback
kunalspathak 7364faa
fix the offset
kunalspathak f257987
arm64: wip
kunalspathak f85614b
linux arm64 model
kunalspathak 5bdf881
arm64: offsetOfThreadStaticBlock adjustment
kunalspathak b6d2ef0
Add mrs and tpid0 register
kunalspathak 75ec05a
arm64: use the new mrs/tpidr0
kunalspathak fd200b5
fix arm64 build and offset calculation:
kunalspathak 4523864
arm64: working
kunalspathak 4bef20a
arm64: move to struct model
kunalspathak 1f437f6
arm64: fixed the struct model
kunalspathak b5394d7
x64: move to struct model
kunalspathak dce8d91
code refactoring
kunalspathak e96530a
#define for field access
kunalspathak c4db025
change mrs -> mrs_tpid0
kunalspathak ddc931f
fix a bug
kunalspathak a716411
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak 1e14591
remove unwanted method
kunalspathak 1632086
another fix
kunalspathak 529c7f7
Add entries in CorInfoType.cs
kunalspathak 90e091d
Update the #ifdef
kunalspathak 694c9cc
fix the windows scenario:
kunalspathak e6044a8
review feedback
kunalspathak ae76829
fix the data-type
kunalspathak 76db418
add osx-arm64 support
kunalspathak 63ae9e8
fix osx-arm64 issues
kunalspathak e376109
fix build error
kunalspathak e74fcd2
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak 0d255d2
fix build error after merge
kunalspathak ac982cb
add osx/x64 support
kunalspathak 130bc14
fix errors
kunalspathak eeb1a7a
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak d3cdf77
fix the macos/x64
kunalspathak ec40932
disable for alpine linux
kunalspathak 368e8c5
Disable for R2R
kunalspathak c35938c
review feedback
kunalspathak 8a222d2
fix r2r check
kunalspathak 5235d37
move windows to struct model
kunalspathak a273623
review feedback
kunalspathak 6ef9e8d
fix the register clobbering in release bits
kunalspathak 6d31ec6
Move the linux/x64 logic to .S file
kunalspathak ce44ced
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak 9292e2a
Use TargetOS::IsMacOS
kunalspathak de5ada2
disable optimization for single file
kunalspathak 3fcec56
working for linux/x64
kunalspathak c39cf0e
fix some errors for osx/x64
kunalspathak 9906f4e
fix for osx x64/arm64
kunalspathak cf3b8c0
fix for arm64 linux/osx
kunalspathak ed0c6a7
try disable for musl/arm64
kunalspathak 5801bbf
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak 7dca821
rename variable
kunalspathak 99dec18
Rename variable to tlsIndexObject
kunalspathak bdca9fe
Make offset variables as uint32_t
kunalspathak f1e5459
change the type of indexObj/ftnAddr to void*
kunalspathak cb409f5
replace ifdef(msc_ver) with ifdef(windows)
kunalspathak e3b7dc6
Revert to JIT_TO_EE_TRANSITION_LEAF
kunalspathak ab284c7
Move code to asmHelpers.S and rename method
kunalspathak bcc0a55
rename the methods per the platform
kunalspathak f475b6d
fix osx builds
kunalspathak 4e0c211
fix build break
kunalspathak 47e087d
fix some errors around osx
kunalspathak 04420db
rename some more methods
kunalspathak 94f4d43
review feedback
kunalspathak 71d27eb
review feedback
kunalspathak 09ec151
delete the comment
kunalspathak e28401c
make methods static
kunalspathak b89a55f
remove macos/x64 check
kunalspathak c6ae3e4
fix the check for linux/x64
kunalspathak d237f0b
detect early for single-file linux/x64
kunalspathak 71b99dd
move the assert
kunalspathak de5b3b7
review feedback
kunalspathak c7864df
misc fixup
kunalspathak 2429d75
use fgMorphArgs()
kunalspathak 8fa1e6f
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak d645f2e
remove commented code
kunalspathak d42fdce
Merge remote-tracking branch 'origin/main' into tls_linux
kunalspathak 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
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
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
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
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
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
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
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
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
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.
Uh oh!
There was an error while loading. Please reload this page.