Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Question on JIT optimizations"
2010 Nov 15
6
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
I'm using the gvn pass, not sure about basic-aa.
I've copied the code as-is from http://llvm.org/docs/tutorial/LangImpl4.html#code and added "F->addFnAttr( Attribute::ReadOnly )" after "Function *F = Function::Create(FT, Function::ExternalLinkage, Name, TheModule)".
The passes it sets up are:
// Set up the optimizer pipeline. Start with registering info about
2011 Nov 04
0
[LLVMdev] Question on JIT optimizations
Hi Brent,
> The code in this setup will be optimized according to the optimizer pipeline one
> sets up as in the code below. I find that if I only use the passes below the
> quality of the code is not that good
code quality will be dreadful if you don't promote memory accesses to registers
right at the start, using eg mem2reg or scalarrepl.
(for example inlining is not
2010 Nov 15
0
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
Hi Rob,
> I'm using the gvn pass, not sure about basic-aa.
if you are using LLVM from svn then you need to specify the basic-aa analysis,
otherwise gvn won't unify calls to readonly/readnone functions. This is new
behaviour introduced by Dan; probably the tutorial should be updated.
Ciao,
Duncan.
>
> I've copied the code as-is from
2010 Feb 17
2
[LLVMdev] Kaleidoscope toy4 failure seg fault on llvm::ExecutionEngine::getTargetData (this=0x0)
I am new to llvm so I might be missing a critical step. My system is
Fedora 12 but this also happens in Mac OS X 10.6.2. Here are the
steps I used to compile llvm:
export TARGETS=x86,x86_64,cpp
export INSTALLDIR=/home/rovitotv/llvm
../llvm-2.6/configure --prefix=$INSTALLDIR --enable-bindings=none
--enable-targets=$TARGETS --enable-optimized
--with-llvmgccdir=$INSTALLDIR
2012 Feb 20
1
[LLVMdev] ARM opcode format
Hello,
So the current JIT will be superseded by the MCJIT completely and no
further development should be expected for the current JIT? In any case, I
am definitely interested in submitting a patch if you could help me by
sending me in the right direction, since I really want this working.
I managed to reproduce this behavior in LLVM 3.0 by modifying llc to read
my .bc file and try to JIT the
2010 Feb 17
0
[LLVMdev] Kaleidoscope toy4 failure seg fault on llvm::ExecutionEngine::getTargetData (this=0x0)
First, you have to call llvm-g++ to use the llvm-gcc front end, but it
doesn't matter here.
I'd like to suggest that you use pastebin to put your code and the send us
the link, so that we can download it. The problem is that TheExecutionEngine
is set to NULL (maybe because of a previous error), but it will be really
better if you use pastebin.
On Wed, Feb 17, 2010 at 6:01 AM, Todd Rovito
2010 Nov 15
1
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
Still no luck after switching to:
theFPM->add( new llvm::TargetData( *theExecutionEngine->getTargetData() ) );
theFPM->add( llvm::createBasicAliasAnalysisPass() );
theFPM->add( llvm::createInstructionCombiningPass() );
theFPM->add( llvm::createReassociatePass() );
theFPM->add( llvm::createGVNPass() );
theFPM->add( llvm::createCFGSimplificationPass() );
Based on output
2012 Feb 20
0
[LLVMdev] ARM opcode format
Guillermo,
> I'm sorry I forgot to mention I am compiling the bitcode using the JIT. The
> actual error, I get when I'm trying to get the function to the pointer. I'm
> using a custom front end that translates Android's Dalvik bytecode into LLVM
> bitcode based on Android ICS's modified LLVM version.
ARM JIT is broken in many ways. So, what you're seeing is
2010 Nov 15
0
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
Hi Rob,
> Hmm ... I tried setting that right after Function::Create but I still get the same result (though flagged with "readonly")
did you run the gvn pass (preceded by basic-aa)?
Ciao,
Duncan.
2010 Nov 15
2
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
> You need to set attribute ReadOnly on the sin / cos functions, using
> Function::addFnAttr(Attribute) for example.
Hmm ... I tried setting that right after Function::Create but I still get the same result (though flagged with "readonly")
declare double @sin(double) readonly
declare double @cos(double) readonly
define double @foo(double %x) readonly {
entry:
%calltmp = call
2010 Feb 17
1
[LLVMdev] Kaleidoscope toy4 failure seg fault on llvm::ExecutionEngine::getTargetData (this=0x0)
On Wed, Feb 17, 2010 at 6:29 AM, Conrado Miranda
<miranda.conrado at gmail.com> wrote:
> First, you have to call llvm-g++ to use the llvm-gcc front end, but it
> doesn't matter here.
I got the compile command from the Kaleidoscope documentation.
> I'd like to suggest that you use pastebin to put your code and the send us
> the link, so that we can download it. The
2010 Nov 15
0
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
Rob,
I can reproduce the behaviour you observe using llvm top-of-tree.
I will try to look into it.
Best regards,
--
Arnaud de Grandmaison
-----Original Message-----
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Rob Pieke
Sent: Monday, November 15, 2010 4:27 PM
To: Duncan Sands; llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] Optimization of calls to
2008 Dec 02
1
[LLVMdev] Kaleidoscope tutorial failed at Chapter 4...
Hi everyone. I am using LLVM 2.4 release to practise the tutorial at
Kaleidoscope Chapter 4.
I built the LLVM library, and created my own project, and then paste the
code from the tutorial into my own project. Then after compiled and built
it, I passed the built stage. (I am using visual studio 2005 )
However, when I tried to input some code in the command line window, the
sample program crashed.
2012 Feb 20
3
[LLVMdev] ARM opcode format
Hi,
I'm sorry I forgot to mention I am compiling the bitcode using the JIT. The
actual error, I get when I'm trying to get the function to the pointer. I'm
using a custom front end that translates Android's Dalvik bytecode into
LLVM bitcode based on Android ICS's modified LLVM version.
Thanks,
On Mon, Feb 20, 2012 at 7:55 PM, James Molloy <James.Molloy at arm.com>
2010 Nov 15
1
[LLVMdev] Optimization of calls to functions without side effects (from Kaleidoscope example)
SUCCESS!
Sorry, I had removed the addFnAttr() call by accident. Using the basicAA pass and ReadOnly, as you suggested, works like a charm!
:)
> -----Original Message-----
> From: Rob Pieke
> Sent: Monday, November 15, 2010 4:40 PM
> To: 'Duncan Sands'
> Cc: 'llvmdev at cs.uiuc.edu'; 'Dan Gohman'
> Subject: RE: [LLVMdev] Optimization of calls to
2008 Apr 10
2
[LLVMdev] Newbie
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Tilmann Scheller wrote:
<blockquote
2008 Apr 07
0
[LLVMdev] Newbie
On Mon, Apr 7, 2008 at 5:56 AM, Vania Joloboff <vania.joloboff at inria.fr> wrote:
> We do dynamic binary translation. We are in a similar situation to qemu
> except we are SystemC / TLM compliant for hardware and bus models. Our
> current technology is somewhat like qemu, we translate the binary into
> "semantic ops", which are pre-compiled at build time, like qemu.
2012 Sep 10
2
[LLVMdev] Dead Store Elimination
Hi,
Here is the result of optimization using the following passes:
llvm::createBasicAliasAnalysisPass()
llvm::createInstructionCombiningPass()
llvm::createReassociatePass()
llvm::createGVNPass()
llvm::createCFGSimplificationPass()
The optimized IR seems to contain what look like dead stores on %8 and
%9 in basic blocks 7 and haveData. How can I get rid of them?
Thanks,
Vinayak
define
2012 Oct 17
2
[LLVMdev] a bug in Kaleidoscope code
hi,
with LLVM 3.1, i am trying to compile toy.cpp from
http://llvm.org/docs/tutorial/LangImpl7.html#code.
i got the following error:
$ clang++ -g toy.cpp `llvm-config --cppflags --ldflags --libs core jit
native` -O3 -o toy
toy.cpp:4:10: fatal error: 'llvm/IRBuilder.h' file not found
#include "llvm/IRBuilder.h"
i fixed this by modifying the broken line to:
#include
2012 Sep 10
0
[LLVMdev] Dead Store Elimination
Hi Vinayak,
> Here is the result of optimization using the following passes:
>
> llvm::createBasicAliasAnalysisPass()
> llvm::createInstructionCombiningPass()
> llvm::createReassociatePass()
> llvm::createGVNPass()
> llvm::createCFGSimplificationPass()
>
you should run the mem2reg pass too, and first.
> ; <label>:7 ; preds =