[ThinLTO] Always parse module level inline asm with At&t dialect (PR46503)
authorHans Wennborg <hans@chromium.org>
Tue, 30 Jun 2020 10:48:10 +0000 (12:48 +0200)
committerHans Wennborg <hans@chromium.org>
Wed, 1 Jul 2020 07:43:45 +0000 (09:43 +0200)
commita8e582c8307ba1d33c05d272b5c1b755fa809b51
tree4342a71d7f6efb840cddab7a38fdad4dc1434942
parent91823163955859abbdcad5901d765aeae860939e
[ThinLTO] Always parse module level inline asm with At&t dialect (PR46503)

clang-cl passes -x86-asm-syntax=intel to the cc1 invocation so that
assembly listings produced by the /FA flag are printed in Intel dialect.
That flag however should not affect the *parsing* of inline assembly in
the program. (See r322652)

When compiling normally, AsmPrinter::emitInlineAsm is used for
assembling and defaults to At&t dialect. However, when compiling for
ThinLTO, the code which parses module level inline asm to find symbols
for the symbol table was failing to set the dialect. This patch fixes
that. (See the bug for more details.)

Differential revision: https://reviews.llvm.org/D82862
clang/test/CodeGen/thinlto-inline-asm.c [new file with mode: 0644]
llvm/lib/Object/ModuleSymbolTable.cpp