This is an archive of the discontinued LLVM Phabricator instance.

[AIX][XCOFF] make integrated-as as default on AIX.
ClosedPublic

Authored by brad on Jul 6 2023, 11:16 PM.

Details

Summary

IAS was enabled on AIX in Clang. Also make sure to follow up with the part of the diff (https://reviews.llvm.org/D150758) that was removed to enable support in the backend as well.

Diff Detail

Event Timeline

brad created this revision.Jul 6 2023, 11:16 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 6 2023, 11:16 PM
Herald added a subscriber: hiraditya. · View Herald Transcript
brad requested review of this revision.Jul 6 2023, 11:16 PM
brad edited the summary of this revision. (Show Details)
shchenz added inline comments.Jul 7 2023, 12:06 AM
llvm/lib/MC/MCAsmInfoXCOFF.cpp
55

Can we add a case to test that now llc on AIX by default will generate object directly? Like:

llc t.ll -filetype=obj -o t1.o
llc t.ll -o t2.o
diff t1.o t2.o
nemanjai added inline comments.
llvm/lib/MC/MCAsmInfoXCOFF.cpp
55

Is this actually what is expected? We use the integrated assembler on Linux and llc doesn't produce object files by default (nor would I want it to).

shchenz added inline comments.Jul 7 2023, 9:45 PM
llvm/lib/MC/MCAsmInfoXCOFF.cpp
55

You are right, Nemanja. This change will not impact the type of the output.

Seems it is hard(maybe impossible?) to construct a case reflecting this code change.
The only place that cause functionality change on AIX seems be in AsmPrinter::emitInlineAsm(). But MCAI->parseInlineAsmUsingAsmParser() is always true on AIX and there is no llc option can control it. So the change of MCAI->useIntegratedAssembler() will not cause difference on AIX.

brad added inline comments.Jul 9 2023, 2:13 PM
llvm/lib/MC/MCAsmInfoXCOFF.cpp
55

Seems it is hard(maybe impossible?) to construct a case reflecting this code change.

When I prodded a handful of backends like MSP430, VE, Hexagon to flip this option there were no cases adjusted or added. Just in some cases some issues with parsing some ASM tests

shchenz accepted this revision as: shchenz.Jul 9 2023, 5:26 PM

LGTM

This revision is now accepted and ready to land.Jul 9 2023, 5:26 PM
This revision was landed with ongoing or failed builds.Jul 9 2023, 5:37 PM
This revision was automatically updated to reflect the committed changes.