LLVM Development on ARM

Hi all,

I have an ARM virtual machine with ubuntu and want to port LLVM over that. In release documents, ARM is not in the list of supported platforms. I tried to compile LLVM on ARM platform and ran into an error.

Has anyone tried to port LLVM onto ARM before? Is it going to require lots of changes?

Thanks

–Kapil

The Compilation error I am getting:
"Error while compiling ARMJITInfo.cpp…
Selected processor does not support fstmfdd sp!,{d0,d1,d2,d3,d4,d5,d6,d7}…

It’s possible to build llvm to run on ARM platforms. That’s required for JIT.

It looks like you need to modify ARMJITInfo.cpp for your platform. Does it support VFP2? Patches welcome.

Evan

Hi Kapil!

LLVM both builds and runs fine on ARM Linux.
I am running a public buildbot for the llvm project that are compiling
and testing llvm on arm-linux daily and this machine are running Ubuntu
Jaunty.
http://google1.osuosl.org:8011/builders/llvm-arm-linux

I have successfully compiled LLVM on ARM using GCC 4.3.3 on a Ubuntu
Jaunty system and GCC 4.4 on a Ubuntu Karmic system.

Do you use cross compilation to build llvm for your ARM system or do you
compile natively on your ARM board?

Cheers
Xerxes

kapil anand skrev:

Hi,

I am trying to natively compile LLVM on a ARM virtual machine ( which I am running through QEMU) but getting the error as mentioned in previous mail. VM is running ARM926 which according to ARM architecture, has vfp support. Do some changes need to me made in LLVM distribution to make it run on ARM platforms

Thanks

–Kapil

The error looks like the assembler complaining, so it may be that you
are missing --with-fpu=vfp or whatever the LLVM equivalent of that is.
Certainly in GCC-land, --with-cpu is not enough; you also have to
specify the coprocessor explicitly

    M

I am trying to natively compile LLVM on a ARM virtual machine
( which I am running through QEMU) but getting the error as
mentioned in previous mail. VM is running ARM926 which according
to ARM architecture, has vfp support.

VFP is optional for ARM926. In fact ARM926 platforms with VFP are rare.

Rodolph.