[LLVMdev] Migrate Project Build system to LLVM BitCode

Hassan, Ahmad ahmad.hassan at sap.com
Thu Jan 17 05:56:24 PST 2013

Hi All,

I am migrating a build system of an existing project from 'Object files' based executable generation to 'LLVM Bitcode' files based exe generation and applying OPT pass to LLVM Bitcode. I found out the following 4 step procedure. Please let me know if this is the right procedure or is there any other easy way of doing it. I need to modify 'Makefile' accordingly. I read on some forums about GoldPlugin but I don't know exactly if it would be useful here:

Original Makefile- Object Files based Build/Link Steps:
clang -g -O2   -o  .libs/mergedexe  file1.o    file2.o   file3.o   -pthread -Wl,--export-dynamic   .libs/lib1.a   -lssl -ldl -pthread .libs/lib2.so

Proposed Makefile- LLVM Bitcode based Build/Link Steps:

1.       llvm-link -o .libs/mergedbc.bc   file1.bc    file2.bc   file3.bc

2.       opt  -o  optmerged.bc  -load /path/to/Mypass.so  -mypass <  mergedbc.bc

3.       llc  -o .libs/mergedbc.s    .libs/mergedbc.bc

4.       gcc -g -O2 -o .libs/mergedexe  .libs/mergedbc.s  -pthread -Wl,--export-dynamic   .libs/lib1.a   -lssl -lcrypto -ldl -pthread .libs/lib2.so


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130117/02479a97/attachment.html>

More information about the llvm-dev mailing list