This is an archive of the discontinued LLVM Phabricator instance.

[ORC][ORC_RT][COFF] Support dynamic VC runtime.
ClosedPublic

Authored by sunho on Aug 23 2022, 8:08 PM.

Details

Summary

Supports dynamic VC runtime. It implements atexits handling which is required to load msvcrt.lib successfully. (the object file containing atexit symbol somehow resolves to static vc runtim symbols) It also default to dynamic vc runtime which tends to be more robust.

Diff Detail

Event Timeline

sunho created this revision.Aug 23 2022, 8:08 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 23 2022, 8:08 PM
sunho requested review of this revision.Aug 23 2022, 8:08 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 23 2022, 8:08 PM
sunho updated this revision to Diff 455056.Aug 23 2022, 8:14 PM
sunho updated this revision to Diff 455058.Aug 23 2022, 8:33 PM

Very cool!

Would it be possible to test this in the ORC runtime? (e.g. with an atexit registration?

sunho updated this revision to Diff 455120.Aug 24 2022, 2:52 AM

Add & fix tests.

lhames accepted this revision.Aug 24 2022, 11:29 AM

Thanks for adding the tests. This is great stuff!

LGTM.

This revision is now accepted and ready to land.Aug 24 2022, 11:29 AM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptSep 9 2022, 11:27 PM
Herald added a subscriber: Restricted Project. · View Herald Transcript