Sanjeev chugh
2010-Jun-17 13:33 UTC
[LLVMdev] build errors while cross compiling llvm-gcc for ARM
Hello, Thanks for the reply. We have an product whose one part has lot of algorithms doing some graphics work. Our intention was to figure out if there can be any performance gain if we use llvm instead of native ARM. This is for ARM target. Earlier, I have built this component using llvm and tested it on x86. Performance was 4x as compared to native gcc. Then I built llvm for ARM and tested this component on ARM with llvm compiler and performance of llvm+arm against native ARM was almost equal or less :( However, I have run a simple sorting algorithms who run for 100K times and sort 10K elements on llvm+arm and this time it's performance was 3x better than native ARM. Can you guys please suggest what could be there in this graphics component which is not allowing the performance to improve for ARM+llvm. cross-compiler has been built with these flags Using built-in specs. Target: armv7fl-montavista-linux-gnueabi Configured with: ./configure --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --target=armv7fl-montavista-linux-gnueabi --enable-cross --with-sysroot=/home/arm_v7_vfp_le/target/ --with-build-sysroot=/home/arm_v7_vfp_le/target/ --enable-shared --enable-languages=c,c++ --with-as=/home/arm_v7_vfp_le/bin/arm_v7_vfp_le-as --with-ld=/home/arm_v7_vfp_le/bin/arm_v7_vfp_le-ld --enable-checking=release --disable-multilib --enable-llvm=/home/Desktop/Sanjeev/LLVM/llvm-2.7 --enable-clocale=gnu --with-cpu=cortex-a8 --with-interwork --with-arch=armv7-a --with-mode=arm --with-tune=cortex-a8 --with-fpu=vfp3 --disable-bootstrap --disable-libmudflap --disable-libssp Thread model: posix gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build) These are the steps how I'm building library on ARM+llvm. generated .a is linked with other targets built with native arm compiler. g++-cross -flto -O2 -Wall -function-sections -fdata-sections ; for all .cpps llvm-ld -link-as-library *.bc target.bc // Consolidate all .bcs into one llc target.bc -o target.s cross-as target.s -o target.o ar q target.a target.o On Mon, Jun 7, 2010 at 10:18 PM, Anton Korobeynikov <anton at korobeynikov.info> wrote:> Hello > > > /tmp/cczBL31y.s:409: rdhi, rdlo and rm must all be different > This is binutils bug fixed ~2 years ago: > http://sourceware.org/ml/binutils/2007-11/msg00046.html > > Make sure you're using the latest binutils for ARM (from binutils CVS) > > -- > With best regards, Anton Korobeynikov > Faculty of Mathematics and Mechanics, Saint Petersburg State University >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100617/0062dafb/attachment.html>
Sanjeev chugh
2010-Jun-25 05:03 UTC
[LLVMdev] build errors while cross compiling llvm-gcc for ARM
Hi, Any help would b appreicated. This is one of my critical assignment. Thanks Sanjeev On Thu, Jun 17, 2010 at 7:03 PM, Sanjeev chugh <sanjuchugh at gmail.com> wrote:> Hello, > > Thanks for the reply. We have an product whose one part has lot of > algorithms doing some graphics work. Our intention was to figure out if > there can be any performance gain if we use llvm instead of native ARM. This > is for ARM target. Earlier, I have built this component using llvm and > tested it on x86. Performance was 4x as compared to native gcc. Then I > built llvm for ARM and tested this component on ARM with llvm compiler and > performance of llvm+arm against native ARM was almost equal or less :( > However, I have run a simple sorting algorithms who run for 100K times and > sort 10K elements on llvm+arm and this time it's performance was 3x better > than native ARM. Can you guys please suggest what could be there in this > graphics component which is not allowing the performance to improve for > ARM+llvm. > > cross-compiler has been built with these flags > > Using built-in specs. > Target: armv7fl-montavista-linux-gnueabi > Configured with: ./configure --host=i686-pc-linux-gnu > --build=i686-pc-linux-gnu --target=armv7fl-montavista-linux-gnueabi > --enable-cross --with-sysroot=/home/arm_v7_vfp_le/target/ > --with-build-sysroot=/home/arm_v7_vfp_le/target/ --enable-shared > --enable-languages=c,c++ --with-as=/home/arm_v7_vfp_le/bin/arm_v7_vfp_le-as > --with-ld=/home/arm_v7_vfp_le/bin/arm_v7_vfp_le-ld --enable-checking=release > --disable-multilib --enable-llvm=/home/Desktop/Sanjeev/LLVM/llvm-2.7 > --enable-clocale=gnu --with-cpu=cortex-a8 --with-interwork > --with-arch=armv7-a --with-mode=arm --with-tune=cortex-a8 --with-fpu=vfp3 > --disable-bootstrap --disable-libmudflap --disable-libssp > Thread model: posix > gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build) > > > > > > These are the steps how I'm building library on ARM+llvm. generated .a is > linked with other targets built with native arm compiler. > > g++-cross -flto -O2 -Wall -function-sections -fdata-sections ; for all > .cpps > llvm-ld -link-as-library *.bc target.bc // Consolidate all .bcs into one > llc target.bc -o target.s > cross-as target.s -o target.o > ar q target.a target.o > > > On Mon, Jun 7, 2010 at 10:18 PM, Anton Korobeynikov < > anton at korobeynikov.info> wrote: > >> Hello >> >> > /tmp/cczBL31y.s:409: rdhi, rdlo and rm must all be different >> This is binutils bug fixed ~2 years ago: >> http://sourceware.org/ml/binutils/2007-11/msg00046.html >> >> Make sure you're using the latest binutils for ARM (from binutils CVS) >> >> -- >> With best regards, Anton Korobeynikov >> Faculty of Mathematics and Mechanics, Saint Petersburg State University >> > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100625/86b6d9e8/attachment.html>
Anton Korobeynikov
2010-Jun-28 07:44 UTC
[LLVMdev] build errors while cross compiling llvm-gcc for ARM
> Any help would b appreicated. This is one of my critical assignment.Well, as was already indicated - make sure that you're using the latest binutils (2.20 is not fresh enough, btw). -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
Apparently Analagous Threads
- [LLVMdev] build errors while cross compiling llvm-gcc for ARM
- [LLVMdev] build errors while cross compiling llvm-gcc for ARM
- [LLVMdev] build errors while cross compiling llvm-gcc for ARM
- [LLVMdev] build errors while cross compiling llvm-gcc for ARM
- [LLVMdev] build errors while cross compiling llvm-gcc for ARM