Anton Korobeynikov
2010-Jun-28 08:53 UTC
[LLVMdev] build errors while cross compiling llvm-gcc for ARM
> exactlyWell, in general, there is no connection between the performance on x86 and on ARM. You can try to profile your code and find what causes the speedup on x86 and figure out the slowdowns on ARM. -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
Hey guys, Is there a way to force the LLVM JIT compiler to omit the frame pointer in its generated i386/amd64 code? I've got a complex situation in which the stack can potentially be moved around so I'd prefer that the base pointer doesn't get pushed there. Félix
Take look at TargetOptions.h - http://llvm.org/doxygen/TargetOptions_8h_source.html I thought FPO is enabled by default (I explicitly disable it), but try setting: llvm::NoFramePointerElim = false; -----Original Message----- From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Félix Cloutier Sent: Monday, June 28, 2010 9:49 AM To: LLVM Developers Mailing List Subject: [LLVMdev] Tell LLVM JIT to omit the frame pointer? Hey guys, Is there a way to force the LLVM JIT compiler to omit the frame pointer in its generated i386/amd64 code? I've got a complex situation in which the stack can potentially be moved around so I'd prefer that the base pointer doesn't get pushed there. Félix _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Sanjeev chugh
2010-Jul-12 12:26 UTC
[LLVMdev] build errors while cross compiling llvm-gcc for ARM
Hello, Since, I cudn't get performance gain using llvm compiler, I've tried to use gold linker instead of going through these following steps. a) 'llvm-gcc -c -flo -O2' to generate the .bc files. b) 'llvm-ld' to combine them into a single .bc. No, not a .so nor a .a. c) 'llc' to turn your combined .bc into a .s d) 'as' to turn your .s into a .o I followed instructions from web page. http://llvm.org/docs/GoldPlugin.html I configured linker with these paramters. ../src/configure --host=i686-pc-linux-gpu --build=i686-pc-linux-gpu --target=armv7fl-montavista-linux-gnueabi --enable-gold --enable-plugins --enable-lto --with-cpu=cortex-a8 --with-interwork --with-arch=armv7-a --with-mode=arm --with-tune=cortex-a8 --with-fpu=vfp3 Did a make then. But the code generated with ld-new is intel binary and not a ARM binary :( I did arm_v7_vfp-le a.c ld-new libs a.o -o binary file ./binary ./binary: ELF 32-bit LSB executable, intel 80386 version 1(SYSV) dynamically linked (uses shared libs), for GNU/Linux 2.6.9 not stripped Any idea Why is it so ? Hoping for a quick reply -Sanjeev On Mon, Jun 28, 2010 at 2:23 PM, Anton Korobeynikov <anton at korobeynikov.info> wrote:> > exactly > Well, in general, there is no connection between the performance on > x86 and on ARM. > You can try to profile your code and find what causes the speedup on > x86 and figure out the slowdowns on ARM. > > -- > 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/20100712/4f7d09e3/attachment.html>
Anton Korobeynikov
2010-Jul-12 12:52 UTC
[LLVMdev] build errors while cross compiling llvm-gcc for ARM
Hello> a) 'llvm-gcc -c -flo -O2' to generate the .bc files.How llvm-gcc was configured & compiled? With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
Possibly Parallel Threads
- [LLVMdev] build errors while cross compiling llvm-gcc for ARM
- [LLVMdev] Processing functions in call graph SCC "order" with function-level analyses
- [LLVMdev] MemoryDependenceAnalysis reports dependencies between NoAlias pointers
- [LLVMdev] Debug just-in-time compiled code on Mac OS
- [LLVMdev] Can I use Clang to parse snippets of C++ code?