This is an archive of the discontinued LLVM Phabricator instance.

[X86][MS-InlineAsm] Use exact conditions to recognize MS global variables
ClosedPublic

Authored by pengfei on Dec 20 2021, 11:31 PM.

Details

Summary

D115225 tried to roll back the effects on symbols of MS inline asm
introduced by D113096. But the combination of the conditions cannot
match all the changes. As a result, there are still fails after the
patch.

This patch fixes the problem by checking the exact conditions for MS
global variables, i.e., variable (by FrontendSize != 0) + non rip/eip
(by DefaultBaseReg == 0), so that we can fully roll back for D113096.

Diff Detail

Event Timeline

pengfei created this revision.Dec 20 2021, 11:31 PM
pengfei requested review of this revision.Dec 20 2021, 11:31 PM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptDec 20 2021, 11:31 PM
skan accepted this revision.Dec 21 2021, 5:50 PM

Thank you for the fix! LGTM

This revision is now accepted and ready to land.Dec 21 2021, 5:50 PM

Thank you for the fix! LGTM

Thanks for the review!

This revision was landed with ongoing or failed builds.Dec 22 2021, 7:46 PM
This revision was automatically updated to reflect the committed changes.
pengfei reopened this revision.Dec 22 2021, 8:48 PM

There are several buildbot fail. Need to investigate it.

This revision is now accepted and ready to land.Dec 22 2021, 8:48 PM