[cfe-dev] clang not emitting LLVM bit-code

Luis David Pedrosa luis.pedrosa at usc.edu
Thu Apr 17 16:28:57 PDT 2014


Hi everyone,

I'm a PhD Student at the University of Southern California and my  
thesis involves using program analysis techniques to automatically  
discover interoperability issues in protocol implementations.

My analysis is performed on LLVM-bitcode so the first step in  
analyzing an implementation is to get it to compile with clang while  
emitting LLVM.

I'm currently doing this with chromium, and I have come across a weird  
assembly file which seems to be a part of a third party unicode  
library that clang insists on compiling into a native ELF, despite me  
trying -emit-llvm and -flto. The file in question looks something like  
this:
http://www.filewatcher.com/p/chromium-12.0.742.91.tar.bz2.151259660/chromium-12.0.742.91/third_party/icu/linux/icudt46l_dat.S.html
I'm not sure if this is the same version I have, but I can share mine  
if necessary.

I'm using clang RELEASE_33/final compiled from source. There is no  
error message or any other indication of failure. It quietly succeeds  
in compiling the file, just in the wrong output format.

In my search for related problems, I have seen that this file has been  
a problem with clang before, although it looks like it didn't use to  
compile at all. A work around seemed to involve the -no-integrated-as  
flag, but that didn't help me.

Am I missing something? Is there something else I should try as a work around?

Thank you.

-- Luis D. Pedrosa





More information about the cfe-dev mailing list