Linking/archiving bitcodes with module asm

Hello,

I'm archiving a number of bitcode files via gold plugin based on LLVM 3.4. When I find a thumbv7 bitcode with a couple of module asms, I get a segfault in ARMAsmParser::parseDirectiveFnStart because getTargetStreamer returns NULL. Frankly, I don't see how this is supposed to work because as far as I understood LTOModule::addAsmGlobalSymbols only creates a RecordStreamer which is then attached to the MCTargetAsmParser, and no TargetStreamer is ever created.

The places that explicitly call createAsmStreamer are only writing assembly as llvm-mc or cc1as. I've tried to follow that scheme in addAsmGlobalSymbols but failed. Any ideas?

Andrey

I think this has been fixed on trunk, can you confirm?

Hi Rafael,

I think this has been fixed on trunk, can you confirm?

I only have 3.4-based toolchain, so could you point me to the patches that fixed this? I could try backporting them and then checking. It's been some time ago, so I would need to dig up this example back.

Yours,
Andrey

I think r211358 is the one that fixed it, but it probably has some
dependency on previous patches.