similar to: [LLVMdev] code generation removes duplicated instructions

Displaying 20 results from an estimated 500 matches similar to: "[LLVMdev] code generation removes duplicated instructions"

2011 Jul 06
0
[LLVMdev] code generation removes duplicated instructions
On 6 July 2011 02:31, D S Khudia <daya.khudia at gmail.com> wrote: >   %0 = load i32* %i, align 4 >   %HV14_ = getelementptr inbounds [100 x i32]* %a, i32 0, i32 %0 >   %1 = getelementptr inbounds [100 x i32]* %a, i32 0, i32 %0 >   %HVCmp7 = icmp ne i32* %1, %HV14_ >   br i1 %HVCmp7, label %relExit, label %bb.split > > So that HV14_ is a new instruction and I am
2011 Jul 06
2
[LLVMdev] code generation removes duplicated instructions
Thank you for replying. Yes. The remaining part of the BB is in splitted basic block. The following is an example code generation for arm and x86 for a same IR BB. In the x86 code I can see that the same computation is done twice and result is stored in two different registers and then these two different registers are used for comparision. By the way I am duplicating instruction and inserting
2011 Jul 06
2
[LLVMdev] code generation removes duplicated instructions
Hi Renato, I am trying to add a intrinsic call between the similar two instructions which either I'll remove or convert to nop in codegen. Does that kind of seem appropriate for the purpose here? Thanks Daya On Wed, Jul 6, 2011 at 11:55 AM, Renato Golin <renato.golin at arm.com> wrote: > On 6 July 2011 15:57, D S Khudia <daya.khudia at gmail.com> wrote: > > Since I am
2011 Jul 07
0
[LLVMdev] code generation removes duplicated instructions
On 7 July 2011 00:02, D S Khudia <daya.khudia at gmail.com> wrote: > I am trying to add a intrinsic call between the similar two instructions > which either I'll remove or convert to nop in codegen. If the two instructions are only similar in your real example, than you need to make them similar in your test, not identical. Different offsets, different array... If them two are
2011 Jul 07
1
[LLVMdev] code generation removes duplicated instructions
Ok. Let me describe the problem again in some detail. The following is the original bitcode from a real testcase: bb7: %46 = load i32* %j, align 4 %47 = add nsw i32 %46, 1 store i32 %47, i32* %j, align 4 br label %bb8 To protect the operand of the store I duplicate the input chain of operands and insert a comparison to check whether the operand of the stores are correct. As a result of
2011 Jul 06
0
[LLVMdev] code generation removes duplicated instructions
On 6 July 2011 14:55, D S Khudia <daya.khudia at gmail.com> wrote: > The following is an example code generation for arm and x86 for a same IR > BB. In the x86 code I can see that the same computation is done twice and > result is stored in two different registers and then these two different > registers are used for comparision. Yes, but you shouldn't rely on it, since the
2011 Jul 06
2
[LLVMdev] code generation removes duplicated instructions
Hello, The code snippet pasted in the previous email are generated at -O0 with llc. Since I am inserting a new basic block (contains printf statement and program exit) which is jumped upon based on the result of the comparison, the compiler cannot/shouldnot optimize that away by means of DCE or anything else. The same kind of stuff is happening for the following duplication. bb6.split:
2011 Jul 06
0
[LLVMdev] code generation removes duplicated instructions
On 6 July 2011 15:57, D S Khudia <daya.khudia at gmail.com> wrote: > Since I am inserting a new basic block (contains printf statement and > program exit) which is jumped upon based on the result of > the comparison, the compiler cannot/shouldnot optimize that away by means of > DCE or anything else. It most certainly can, since the comparison yields always the same result. The
2011 Jun 14
4
[LLVMdev] code generation for ARM
Thanks for your reply. I have a normal (../configure --enable-profiling --disable-optimized --enable-assertions) llvm debug+profile+assert build. I am generating llvm-bitcode using following commands. llvm-gcc -DLINUX_i386 -DSPEC_CPU2000 -O3 -emit-llvm 186.crafty/src/valid.c -c -o 186.crafty/src/valid.bc --- llvm-link 186.crafty/src/*.bc -o 186.crafty/186.crafty.rel.bc and finally: llc
2011 Jul 08
1
[LLVMdev] as: unrecognized option '-meabi=4'
Hi In my install directory under bin , I had llvm-c++,llvm-g++,llvm-gconv I tested one sample program #llvm-c++ addu.c -o addu-arm as: unrecognized option '-meabi=4' How do i solve this issue Thanks Yuvi R On Fri, Jul 8, 2011 at 9:21 AM, raj raja <yuvaraj.addu at gmail.com> wrote: > Thanks for your reply > > I got error > > */bin/sh: build/genmodes: not
2011 Jun 29
3
[LLVMdev] specint2000 as external tests
Hi Duncan, Do you have sources also in the $LLVM_SRC_ROOT/projects/test-suite/External/SPEC/CINT2000/164.gzip? The following is content of above directory in my case. I have copied the CINT2000 sources in this directory manually. $ls -1 $LLVM_SRC_ROOT/projects/test-suite/External/SPEC/CINT2000/164.gzip 164.gzip.reference_output 164.gzip.reference_output.small compile_info compile_parms
2011 Jul 07
0
[LLVMdev] llvm-gcc cross compiling for ARM
Here is how I do it on x86-64 machine running Ubuntu-11.04: 1. install flex and bison 2. download arm-2011.03 from www.codesourcery.com and add to path (setenv PATH ${PATH}:/home/dskhudia/projects/arm-2011.03/bin) 3. mkdir llvm-gcc-obj; cd llvm-gcc-obj 4. ../llvm-gcc-4.2-2.9.source/configure --target=arm-none-linux-gnueabi --program-prefix=llvm-
2011 Jul 07
3
[LLVMdev] llvm-gcc cross compiling for ARM
Hi I am trying to cross compile llvm-gcc front for ARM target Followed below steps #../llvm-gcc-4.2-2.9.source/configure --program-prefix=llvm- --enable-llvm=/home/yuvraj/llvm/llvm-2.9 --enable-languages=c,c++ --target=arm-none-linux-gnueabi # make I am getting some kind of linker errors /opt/arm-2010.09/bin/arm-none-linux-gnueabi-ld: cannot find crtn.o: No such file or directory @ final
2011 Jun 14
1
[LLVMdev] code generation for ARM
Thank you all for the inline assembly pointer. I have some macros (FD_ZERO, FD_SET) in benchmark code which comes from C library select (synchronous I/O multiplexing) and it does contain inline assembly. Is there a way the code containing such macros can work for ARM if compiled through llvm? Thanks Daya On Tue, Jun 14, 2011 at 3:02 PM, Duncan Sands <baldrick at free.fr> wrote: > Hi
2006 Aug 17
3
Migrations for migrating data across databases - is it possible?
Hi All I am trying to understand if I can use migrations to migrate data under the following conditions 1. Across 2 different databases (Oracle/DB2) with same schemas. 2. Across 2 different databases (Oracle/DB2) with different schemas. I am trying to avoid writing DBI/OCI8 scripts. Can somone please shed some light if this is even possible? thanks -daya -------------- next part
2006 Aug 10
11
Document Management System in Rails
Hi Is anyone aware of any Document Management System in Rails. Googling didn''t help me find any Rails based solution. The DMS I need, need to have the following feature apart form the usual ones. 1. Version control of documents. 2. Tracking version control for each group of users independently from the other group . These groups may share the same document name but may have different
2006 Aug 15
1
Can migrations be used for these cases?
Hi A newb question. Can I use migrations if all of the following requirements are imposed at the same time. 1. Copy data from an old schema to a new schema, the difference in the 2 schemas is about 25%, 3 new tables and 4 new columns. 2. Copy data from Oracle schema to DB2 schema, around 25% difference in 2 schemas as above. 3. Neither old nor the new schema tables have an
2011 Jun 29
2
[LLVMdev] specint2000 as external tests
Hi All, I am trying to configure llvm so with test-suite enabled. I have downloaded the test-suite. Spec 2000 benchmarks sources are plugged in speccpu2000 at $LLVM_SRC_ROOT/projects/test-suite-externals/speccpu2000/benchspec e.g.: 164.gzip dir is $LLVM_SRC_ROOT/projects/test-suite-externals/speccpu2000/benchspec/164.gzip My configure command is: ../configure --disable-optimized
2006 Aug 24
26
mongrel logging on win32 platform and win32 service
Hi All I am using version 0.3.13.3 and since there is no logging support for win32 application. I was wondering if it was possible to get any kind of logging at all. I have tried to these two options 1. Stream redirection using "mongrel_rails start -c C:/myspace/snapshot -p 4111 -t 70 -e production -P log/mongrel-1.pid > C:\temp\mongrel-1.log" The console print the output stream
2011 Jun 29
0
[LLVMdev] specint2000 as external tests
My source directory wasn't correct but now I have a correct test directory structure. $ls -1 ~/tmp/speccpu2000/benchspec/CINT2000/164.gzip/ data docs exe result run Spec src version I reconfigured the llvm with ../configure --prefix=/home/dskhudia/tmp/llvm-install --with-llvmgccdir=/home/dskhudia/tmp/llvm-install --with-externals=/home/dskhudia/tmp Now I can execute the make -C 164.gzip but