[LLVMdev] llvm-gfortran problems

Dmitry N. Mikushin maemarcus at gmail.com
Mon Sep 12 13:00:01 PDT 2011


Ashay,

If I understand correctly, in hw.o you would have llvm bytecode, while
linker expects regular object binary. Probably first you need to emit
asm out of bytecode using llc?

- D.

2011/9/12 Ashay Rane <ashay.rane at tacc.utexas.edu>:
> Hello,
> Sorry for the late reply. Using dragonegg worked well, thanks all!
> Just as a note... I had to use llvm-ld during the link step because gfortran
> could not link bitcode. Here's an example of the error shown when using
> gfortran instead of llvm-ld:
> $ ${GCC_4_5_0}/bin/gfortran hw.f -c
> -fplugin=${DRAGONEGG_PLUGIN}/dragonegg.so -o hw.o -flto -emit-llvm -S
> $ ${LLVM_2_9}/bin/opt -mem2reg hw.o -o hw.o
> $ ${GCC_4_5_0}/bin/gfortran
> -fplugin=${DRAGONEGG_PLUGIN}/dragonegg.so ${GCC_4_5_0}/lib64/libgfortran.a
> hw.o -o hw
> hw.o: file not recognized: File format not recognized
> collect2: ld returned 1 exit status
> $ file hw.o
> hw.o: data
> Instead, using llvm-ld:
> $ ${LLVM_2_9}/bin/llvm-ld -native hw.o -o hw
> ${GCC_4_5_0}/lib64/libgfortran.a -lm
> llvm-gcc had the gold plugin. I wonder if there is any equivalent of that
> for dragonegg to be able to compile bitcode and native object code in a
> transparent manner.
> Thanks again!
> Ashay
>
> On Wed, Aug 31, 2011 at 4:29 PM, Anton Korobeynikov
> <anton at korobeynikov.info> wrote:
>>
>> Hello
>>
>> > I am not very familiar with Fortran programs. I saw a few programs that
>> > had
>> > a "MAIN" subroutine defined, some others that did not. Am I missing
>> > something while compiling the code? Is there a different way to compile
>> > bitcode (from Fortran programs) to a native binary?
>> For Fortran MAIN is indeed something similar to C main, but not
>> exactly the same.
>> You have to link the runtime library (libgfortran.a) in order to get
>> "proper" main, mak sure all stuff is initialized properly, etc.
>>
>> --
>> With best regards, Anton Korobeynikov
>> Faculty of Mathematics and Mechanics, Saint Petersburg State University
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>




More information about the llvm-dev mailing list