Displaying 20 results from an estimated 4000 matches similar to: "[LLVMdev] Instcombine increases the number of instructions?"
2012 Jun 27
0
[LLVMdev] Instcombine increases the number of instructions?
Hi Rafael,
> Can the Instcombine pass increase the number of instructions of a block?
while it usually doesn't, in theory it can increase the number of LLVM IR
instructions. I don't recall an example off the top of my head, but the
usual situation is that replacing some instruction I with a pair J, K
results in better code generation. There are a small number of cases like
this.
2012 Jun 27
1
[LLVMdev] Instcombine increases the number of instructions?
I perform the Instcombine pass over Rijndael benchmark from Mibench ( suite
of benchmarks). For compile, I use "-Instcount" for counting the
instructions. Comparing the bench without transformation with the
bench transformed
by instcombine, I perceived a 10% of increase in the number of
instructions. This is possible?
On Wed, Jun 27, 2012 at 4:57 AM, Duncan Sands <baldrick at
2011 Sep 14
0
[LLVMdev] Fwd: LLVM IR Branchs
Hello,
I created a new block for execution to continue, but I got the case in which
a statement defined in a block is used in another, not dominate all uses.
For example:
entry:
%n_addr = alloca i32, align 4
%retval = alloca i32
%"alloca point" = bitcast i32 0 to i32
store i32 %n, i32* %n_addr
%0 = call i32 (i8*, ...)* @printf(i8* noalias getelementptr inbounds ([20
x i8]*
2011 Sep 06
2
[LLVMdev] Fwd: LLVM IR Branchs
Ok! I do understand.
Thanks by help!
2011/9/5 Justin Holewinski <justin.holewinski at gmail.com>
> On Mon, Sep 5, 2011 at 8:37 PM, Rafael Baldiati Parizi <
> parizi.computacao at gmail.com> wrote:
>
>> Yes, that's how I'm doing now ... create a new block where the execution
>> flow will continue after the shift, following the basics of basic blocks.
2011 Sep 06
2
[LLVMdev] Fwd: LLVM IR Branchs
Yes, that's how I'm doing now ... create a new block where the execution
flow will continue after the shift, following the basics of basic blocks.
But, I want to find a way to reduce the number of block of my code.
2011/9/5 Nick Lewycky <nicholas at mxc.ca>
> Rafael Baldiati Parizi wrote:
>
>> I have two values and I want see if them are equals. Then, I would a
>>
2011 Sep 06
0
[LLVMdev] Fwd: LLVM IR Branchs
On Mon, Sep 5, 2011 at 8:37 PM, Rafael Baldiati Parizi <
parizi.computacao at gmail.com> wrote:
> Yes, that's how I'm doing now ... create a new block where the execution
> flow will continue after the shift, following the basics of basic blocks.
> But, I want to find a way to reduce the number of block of my code.
Why do you want to reduce the number of LLVM IR blocks?
2011 Sep 14
1
[LLVMdev] Fwd: LLVM IR Branchs
Sorry, %3 instead of %4.
2011/9/14 Rafael Baldiati Parizi <parizi.computacao at gmail.com>
> Hello,
> I created a new block for execution to continue, but I got the case in
> which a statement defined in a block is used in another, not dominate all
> uses.
> For example:
>
> entry:
> %n_addr = alloca i32, align 4
> %retval = alloca i32
> %"alloca
2011 Sep 06
0
[LLVMdev] Fwd: LLVM IR Branchs
Rafael Baldiati Parizi wrote:
> I have two values and I want see if them are equals. Then, I would a
> instruction like
> if Value1 != Value2, error
> without create a new block, continuing the execution in the same block,
> forcing the LLI to execute this.
You can not. The definition of a "basic block" is a sequence of
instructions with a single entry and a single exit.
2012 Jun 12
1
[LLVMdev] output -stats to file.txt
I already did. What I need is to have this output in a txt file.
On Tue, Jun 12, 2012 at 5:31 PM, Villmow, Micah <Micah.Villmow at amd.com>wrote:
> Add an optimization level and you get information.****
>
> D:\ >opt -stats temp.bc -o tmp.bc2****
>
> ** **
>
> D:\ >opt -stats temp.bc -o tmp.bc2 -O3****
>
>
>
2011 Sep 06
5
[LLVMdev] Fwd: LLVM IR Branchs
I have two values and I want see if them are equals. Then, I would a
instruction like
if Value1 != Value2, error
without create a new block, continuing the execution in the same block,
forcing the LLI to execute this.
2011/9/5 Eli Friedman <eli.friedman at gmail.com>
> On Mon, Sep 5, 2011 at 4:47 PM, Rafael Baldiati Parizi
> <parizi.computacao at gmail.com> wrote:
> >
2012 Feb 24
2
[LLVMdev] Generate Executable to Mips
You will need to install a cross compiler.
I think you can find one somewhere in this link:
https://sourcery.mentor.com/GNUToolchain/
Once you have a cross compiler, this should do what you want (if you
want little-endian code):
clang -target mipsel-unknown-linux -ccc-clang-archs mipsel -O3
hello.c -o hello.bc -emit-llvm
llc -march=mipsel hello.bc -o hello.s
mips-linux-gnu-gcc hello.s -o hello
2012 Feb 27
0
[LLVMdev] Generate Executable to Mips
Thanks Akira,
it worked!
On Thu, Feb 23, 2012 at 10:01 PM, Akira Hatanaka <ahatanak at gmail.com> wrote:
> You will need to install a cross compiler.
> I think you can find one somewhere in this link:
> https://sourcery.mentor.com/GNUToolchain/
>
> Once you have a cross compiler, this should do what you want (if you
> want little-endian code):
>
> clang -target
2012 Feb 28
3
[LLVMdev] Generate Executable to Mips
There is also:
1) an alternate clang driver at
http://code.google.com/p/alternate-clang-driver/ . This makes
it more or less gcc compatible.
2) there is a way to invoke it all directly with just a call to clang as
is with x86/linux but it's not totally
finished. i will try and post something about this. the direct form will
work if you are on a
mips linux machine but there are still some
2012 Jun 12
0
[LLVMdev] output -stats to file.txt
Add an optimization level and you get information.
D:\ >opt -stats temp.bc -o tmp.bc2
D:\ >opt -stats temp.bc -o tmp.bc2 -O3
===-------------------------------------------------------------------------===
... Statistics Collected ...
===-------------------------------------------------------------------------===
1 cgscc-passmgr - Maximum CGSCCPassMgr iterations on
2012 Feb 24
0
[LLVMdev] Generate Executable to Mips
This is true?
*clang*/*llvm* *cannot* produce *mips* object *code* or executable (yet).
from:
http://old.nabble.com/How-to-get-MIPS-from-clang-%2B-llvm---td32822926.html
On Thu, Feb 23, 2012 at 8:37 PM, Rafael BP <parizi.computacao at gmail.com>wrote:
> Hi,
> How can I generate executable to mips with llvm-gcc.
> I'm using Ilvm-2.9, X86PC and the following commands:
>
>
2012 Jun 12
2
[LLVMdev] output -stats to file.txt
Yes, I've tried and it did not work
On Tue, Jun 12, 2012 at 4:03 PM, Villmow, Micah <Micah.Villmow at amd.com>wrote:
> Have you tried "opt -stats bitecode.bc > test.txt"?****
>
> ** **
>
> *From:* llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] *On
> Behalf Of *Rafael Parizi
> *Sent:* Tuesday, June 12, 2012 11:36 AM
> *To:*
2012 Feb 28
0
[LLVMdev] Generate Executable to Mips
Great Job!
If I use alternate-clang-driver, will I need mips-gcc still?
I mean alternate-clang-driver use as&ld directly or by calling gcc?
Regards,
Jia Liu
On Tue, Feb 28, 2012 at 10:39 AM, reed kotler <rkotler at mips.com> wrote:
> There is also:
>
> 1) an alternate clang driver at
> http://code.google.com/p/alternate-clang-driver/ . This makes
> it more or less gcc
2011 Sep 06
0
[LLVMdev] Fwd: LLVM IR Branchs
On Mon, Sep 5, 2011 at 5:13 PM, Rafael Baldiati Parizi
<parizi.computacao at gmail.com> wrote:
> I have two values and I want see if them are equals. Then, I would a
> instruction like
> if Value1 != Value2, error
> without create a new block, continuing the execution in the same block,
> forcing the LLI to execute this.
You can't do that; a br instruction must be at the
2012 Mar 06
0
[LLVMdev] Assembly Mips from bitecode llvm
Ok. And what does llvm-gcc --version show?
---
With best regards,
Anton Korobeynikov
On Mar 6, 2012 5:22 PM, "Rafael Parizi" <parizi.computacao at gmail.com> wrote:
>
> For compile and link Basicmath files (using shell script):
>
> llvm-gcc -emit-llvm basicmath_small.c -c -o basicmath_small.bc
> llvm-gcc -emit-llvm cubic.c -c -o cubic.bc
> llvm-gcc -emit-llvm
2012 Feb 23
2
[LLVMdev] Generate Executable to Mips
Hi,
How can I generate executable to mips with llvm-gcc.
I'm using Ilvm-2.9, X86PC and the following commands:
llvm-gcc -emit-llvm hello.c -c -o hello.bc (OK)
llc -march=mips hello.bc -o hello.s (OK)
gcc hello.s -o hello (does not work).
Thanks,
--
*Rafael Parizi*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: