-
Notifications
You must be signed in to change notification settings - Fork 10.5k
swift-reflection-dump: Virtualize logical-to-physical address mapping. #27388
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
swift-reflection-dump: Virtualize logical-to-physical address mapping. #27388
Conversation
We now get the local/remote mapping from RemoteRef when we need it.
If `char` is signed, then `c >> 4` produces a signed negative number when `c` has the high bit set, and `Hexdigit[c >> 4]` reads junk out of the memory right before `Hexdigit`. Change the code here to use `unsigned char`.
@swift-ci Please test |
@swift-ci Please test Windows |
Instead of copying the entire object file and moving around its sections to make an approximate representation of its mapped state, use the memory-mapped buffer from `llvm::ObjectFile`, and deal with non-contiguous logical mappings entirely in readBytes.
0038437
to
11b2c29
Compare
@swift-ci Please test |
@swift-ci Please test Windows |
Build failed |
Build failed |
@swift-ci Please test Windows |
@swift-ci Please test Windows |
@alexshap This should be the last of the big changes in this area I need to make for the time being. |
@jckarter - maybe I can commit that PR first (when CI finishes successfully) ? |
@alexshap OK. |
@swift-ci Please test |
@swift-ci Please test Windows |
Build failed |
Build failed |
@swift-ci Please test Windows |
1 similar comment
@swift-ci Please test Windows |
@compnerd Hm, I'm getting this on the Windows bot:
|
@swift-ci Please test Linux |
@swift-ci Please test Windows |
Looks like I got past the CMake issue this time. Now I'm seeing the same Driver failures on Windows as before. |
Instead of copying the entire object file and moving around its sections to make an approximate
representation of its mapped state, use the memory-mapped buffer from
llvm::ObjectFile
, anddeal with non-contiguous logical mappings entirely in readBytes.