Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

[x86/Linux] Disables FrameHandlerExRecordWithBarrier for non-Windows platforms#8374

Closed
parjong wants to merge 1 commit into
dotnet:masterfrom
parjong:fix/hide_FrameHandlerExRecordWithBarrier_for_non_windows
Closed

[x86/Linux] Disables FrameHandlerExRecordWithBarrier for non-Windows platforms#8374
parjong wants to merge 1 commit into
dotnet:masterfrom
parjong:fix/hide_FrameHandlerExRecordWithBarrier_for_non_windows

Conversation

@parjong
Copy link
Copy Markdown

@parjong parjong commented Nov 30, 2016

Currently, FrameHandlerExRecord is available only for Windows platform.

This commit disables FrameHandlerExRecordWithBarrier (which depends on FrameHandlerExRecord) for non-Windows platforms.

@parjong
Copy link
Copy Markdown
Author

parjong commented Nov 30, 2016

\CC @seanshpark

@janvorli
Copy link
Copy Markdown
Member

@parjong I think that after we've decided to stop attempts to enable Unix AMD64 / ARM style exception handling (WIN64EXCEPTIONS symbol related stuff) at the moment, we should do this differently.
Revert the change that @seanshpark made to the excep.h some time ago that made portions of it, including the FrameHandlerExRecord, Windows only.

@parjong
Copy link
Copy Markdown
Author

parjong commented Nov 30, 2016

@janvorli Thanks you for comment. Then, should we port EXCEPTION_REGISTRATION_RECORD to PAL layer? While porting, I found many code that accesses the internals of this structure, but this structure currently has no definition.

@janvorli
Copy link
Copy Markdown
Member

janvorli commented Dec 1, 2016

@parjong Yes, it seems like that would be a way of the least resistance. The structure is very simple:

typedef struct _EXCEPTION_REGISTRATION_RECORD {
    struct _EXCEPTION_REGISTRATION_RECORD *Next;
    PEXCEPTION_ROUTINE Handler;
} EXCEPTION_REGISTRATION_RECORD;

@janvorli
Copy link
Copy Markdown
Member

janvorli commented Dec 1, 2016

We should put it to palrt.h close to the _DISPATCHER_CONTEXT - the PEXCEPTION_ROUTINE is defined there too.

@parjong
Copy link
Copy Markdown
Author

parjong commented Dec 1, 2016

@janvorli I submitted #8408, and it seems that adding EXCEPTION_REGISTRATION_RECORD makes it much easier to bring up x86/Linux build. Thank you!

@parjong
Copy link
Copy Markdown
Author

parjong commented Dec 1, 2016

I'll close this PR as #8409 also resolves this issue.

@parjong parjong closed this Dec 1, 2016
@parjong parjong deleted the fix/hide_FrameHandlerExRecordWithBarrier_for_non_windows branch December 1, 2016 02:22
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants