Skip to content
This repository has been archived by the owner on Nov 1, 2020. It is now read-only.

Move InterfaceDispatchMapTable to data section #686

Merged
merged 1 commit into from
Jan 21, 2016

Conversation

nattress
Copy link
Contributor

Linking on Mac generates a warning that InterfaceDispatchMapTable disables PIE (Unix's version of ASLR). Placing the table in the rdata section caused pointers across to the data section where the maps live.

@nattress
Copy link
Contributor Author

@jkotas PTAL

@nattress
Copy link
Contributor Author

Addresses issue #667

@jkotas
Copy link
Member

jkotas commented Jan 21, 2016

It is unnecessary inefficiency to put this into data section on Windows. We should make it go to "rdata" section on Windows, and "data" everywhere else. Could you please make the same change for all *EEType*Nodes?

Linking on Mac generates a warning that InterfaceDispatchMapTable disables PIE (Unix's version of ASLR).  Placing the table in the rdata section caused pointers across to the data section where the maps live.

Move EETypes and related nodes, plus read-only interface dispatch data structures in the rdata section on Windows.
@nattress
Copy link
Contributor Author

@jkotas Updated to move EETypeNode, EETypeOptionalFieldsNode, GCStaticEETypeNode, InterfaceDispatchMapNode, and InterfaceDispatchMapTableNode to rdata on Windows.

@jkotas
Copy link
Member

jkotas commented Jan 21, 2016

LGTM

jkotas added a commit that referenced this pull request Jan 21, 2016
Move InterfaceDispatchMapTable to data section
@jkotas jkotas merged commit 5462723 into dotnet:master Jan 21, 2016
@nattress nattress deleted the osx_pie branch January 21, 2016 22:18
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants