This effectively renames the IsParsingMSInlineAsm member variable of
AsmLexer to LexMasmIntegers and moves it up to MCAsmLexer. This is the
only behavior controlled by that variable. I added a public setter, so
that it can be set from outside or from the command line.
Now, masm integers (0b1101 and 0ABCh) work in __asm blocks from clang,
but 0b label references work when using .intel_syntax in standalone .s
However, 0b label references will *not* work from __asm blocks in clang.
They will work from GCC inline asm blocks, which it sounds like is
important for Crypto++ as mentioned in PR36144.
Essentially, we only lex masm literals when the asm blob itself is
marked as using intel syntax. If the user emits .intel_syntax directly
in the asm string, masm literals will not be lexed, as is the case if we
did a standalone .s compilation.
Hopefully this addresses PR36144.