search for: tmp9

Displaying 20 results from an estimated 50 matches for "tmp9".

Did you mean: tmp
2014 May 22
2
[LLVMdev] RFC: Indexing of structs vs arrays in getelementpointer
...arrays: %struct1 = type { i32, i32 } %struct2 = type { %struct1, %struct1 } ; Function Attrs: ssp uwtable define i32 @test1(%struct2* %dm, i1 %tmp4, i64 %tmp9, i64 %tmp19) { bb: br i1 %tmp4, label %bb1, label %bb2 bb1: ; preds = %bb5 %tmp10 = getelementptr inb...
2010 Jan 29
2
[LLVMdev] 64bit MRV problem: { float, float, float} -> { double, float }
...res; test(a, &res); } llvm-gcc -c -emit-llvm -O3 produces this: %struct.float3 = type { float, float, float } define void @test(double %a.0, float %a.1, %struct.float3* nocapture %res) nounwind noinline { entry: %tmp8 = bitcast double %a.0 to i64 ; <i64> [#uses=1] %tmp9 = zext i64 %tmp8 to i96 ; <i96> [#uses=1] %tmp1 = lshr i96 %tmp9, 32 ; <i96> [#uses=1] %tmp2 = trunc i96 %tmp1 to i32 ; <i32> [#uses=1] %tmp3 = bitcast i32 %tmp2 to float ; <float> [#uses=1] %0 = ge...
2014 May 23
2
[LLVMdev] RFC: Indexing of structs vs arrays in getelementpointer
...at still exhibited the problem, but wanted to see it to think > through things properly. > > > > > > > > %struct1 = type { i32, i32 } > %struct2 = type { %struct1, %struct1 } > ; Function Attrs: ssp uwtable > define i32 @test1(%struct2* %dm, i1 %tmp4, i64 %tmp9, i64 %tmp19) { > bb: > br i1 %tmp4, label %bb1, label %bb2 > bb1: ; preds = %bb5 > %tmp10 = getelementptr inbounds %struct2* %dm, i64 %tmp9, i32 0 > br label %bb3 > > bb2: ; preds = %.lr.ph.i.i > %tmp20 = getelementptr inbounds %struct2* %dm, i64 %tmp9, i32 1 > br label...
2011 Feb 22
2
[LLVMdev] Clone a function and change signature
...t; [#uses=1] store i32 %tmp5, i32* %yy, align 4, !dbg !1024 %tmp6 = load %struct.MT** @mt, align 8, !dbg !1025 ; <%struct.MT*> [#uses=1] call void @MTPoint_DIRECT(%struct.MT* %tmp6, i32* %xx, i32* %yy) nounwind %tmp8 = load i32* %xx, align 4, !dbg !1026 ; <i32> [#uses=1] %tmp9 = trunc i32 %tmp8 to i16, !dbg !1026 ; <i16> [#uses=1] store i16 %tmp9, i16* %x, align 2, !dbg !1026 %tmp10 = load i32* %yy, align 4, !dbg !1027 ; <i32> [#uses=1] %tmp11 = trunc i32 %tmp10 to i16, !dbg !1027 ; <i16> [#uses=1] store i16 %tmp11, i16* %y, align 2,...
2010 Jan 29
0
[LLVMdev] 64bit MRV problem: { float, float, float} -> { double, float }
...m-gcc -c -emit-llvm -O3 produces this: > > %struct.float3 = type { float, float, float } > define void @test(double %a.0, float %a.1, %struct.float3* nocapture > %res) nounwind noinline { > entry: > %tmp8 = bitcast double %a.0 to i64 ; <i64> [#uses=1] > %tmp9 = zext i64 %tmp8 to i96 ; <i96> [#uses=1] > %tmp1 = lshr i96 %tmp9, 32 ; <i96> [#uses=1] > %tmp2 = trunc i96 %tmp1 to i32 ; <i32> [#uses=1] > %tmp3 = bitcast i32 %tmp2 to float ; <float> [#us...
2014 May 22
4
[LLVMdev] RFC: Indexing of structs vs arrays in getelementpointer
...bb1: %tmp10 = getelementptr inbounds %struct2* %tmp1, i64 %tmp9 br label %bb3 bb2:...
2010 Sep 10
1
[LLVMdev] Missing Optimization Opportunities
...=1] %tmp5 = and i1 %tmp2, %tmp4 ; <i1> [#uses=1] %tmp6 = and i32 %tmp, -256 ; <i32> [#uses=2] %tmp7 = icmp eq i32 %tmp6, 168296704 ; <i1> [#uses=1] %tmp8 = icmp eq i32 %tmp3, 168296448 ; <i1> [#uses=2] %tmp9 = icmp ne i32 %tmp6, 168296704 ; <i1> [#uses=1] %tmp10 = and i1 %tmp8, %tmp9 ; <i1> [#uses=1] %tmp11 = load i32* @src-ip ; <i32> [#uses=1] %tmp12 = and i32 %tmp11, -16777216 ; <i32> [#uses=1] %tmp13 = ic...
2013 Oct 27
2
[LLVMdev] Missed optimization opportunity with piecewise load shift-or'd together?
...apture readonly %x_arg) #0 { %tmp1 = getelementptr inbounds i8* %x_arg, i64 3 %tmp2 = load i8* %tmp1, align 1 %tmp3 = zext i8 %tmp2 to i32 %tmp4 = shl nuw nsw i32 %tmp3, 24 %tmp6 = getelementptr inbounds i8* %x_arg, i64 2 %tmp7 = load i8* %tmp6, align 1 %tmp8 = zext i8 %tmp7 to i32 %tmp9 = shl nuw nsw i32 %tmp8, 16 %tmp10 = or i32 %tmp9, %tmp4 %tmp12 = getelementptr inbounds i8* %x_arg, i64 1 %tmp13 = load i8* %tmp12, align 1 %tmp14 = zext i8 %tmp13 to i32 %tmp15 = shl nuw nsw i32 %tmp14, 8 %tmp16 = or i32 %tmp10, %tmp15 %tmp19 = load i8* %x_arg, align 4 %tmp20 = ze...
2011 Feb 22
0
[LLVMdev] Clone a function and change signature
...i32* %yy, align 4, !dbg !1024 > %tmp6 = load %struct.MT** @mt, align 8, !dbg !1025 ; <%struct.MT*> > [#uses=1] > call void @MTPoint_DIRECT(%struct.MT* %tmp6, i32* %xx, i32* %yy) > nounwind > %tmp8 = load i32* %xx, align 4, !dbg !1026 ; <i32> [#uses=1] > %tmp9 = trunc i32 %tmp8 to i16, !dbg !1026 ; <i16> [#uses=1] > store i16 %tmp9, i16* %x, align 2, !dbg !1026 > %tmp10 = load i32* %yy, align 4, !dbg !1027 ; <i32> [#uses=1] > %tmp11 = trunc i32 %tmp10 to i16, !dbg !1027 ; <i16> [#uses=1] > store i16 %tmp1...
2015 Apr 28
2
[LLVMdev] alias set collapse and LICM
On Mon, Apr 27, 2015 at 4:21 PM, Daniel Berlin <dberlin at dberlin.org> wrote: > You can't win here (believe me, i've tried, and better people than me have > tried, for years :P). > No matter what you do, the partitioning will never be 100% precise. The > only way to solve that in general is to pairwise query over the > partitioning. > > Your basic problem is
2010 Sep 29
0
[LLVMdev] spilling & xmm register usage
...; preds = %cond.then.i201.i, %phi.exit138.i > %cond.i204.i = phi float [ %tmp43.i200.i, %cond.then.i201.i ], [ %tmp38.i194.i, %phi.exit138.i ] > %arrayidx82.i = getelementptr float addrspace(1)* %5, i64 %8 > %tmp85.i = fmul float %tmp63.i, %cond.i204.i > %tmp88.i = fmul float %tmp9.i, %cond.i135.i > %tmp89.i = fsub float %tmp85.i, %tmp88.i > store float %tmp89.i, float addrspace(1)* %arrayidx82.i, align 4 > %inc = add i32 %7, 1 > %exitcond = icmp eq i32 %inc, %local_size_0 > br i1 %exitcond, label %exit, label %entry.header.loop > > entry.header.loo...
2015 Jun 11
4
[LLVMdev] Question about NoWrap flag for SCEVAddRecExpr
...2 > %tmp5 = getelementptr inbounds [1024 x float], [1024 x float]* @y, > i64 0, i64 %k.01 > %tmp6 = load float, float* %tmp5, align 8, !tbaa !2 > %tmp7 = fadd float %tmp4, %tmp6 > store float %tmp7, float* %tmp3, align 16, !tbaa !2 > %tmp8 = or i64 %k.01, 1 > %tmp9 = shl nsw i64 %tmp8, 1 > %tmp10 = getelementptr inbounds [1024 x float], [1024 x float]* > @x, i64 0, i64 %tmp9 > %tmp11 = load float, float* %tmp10, align 8, !tbaa !2 > %tmp12 = getelementptr inbounds [1024 x float], [1024 x float]* > @y, i64 0, i64 %tmp8 > %tmp13 = l...
2015 Jun 10
3
[LLVMdev] Question about NoWrap flag for SCEVAddRecExpr
I am testing vectorization on the following test case: float x[1024], y[1024]; void myloop1() { for (long int k = 0; k < 512; k++) { x[2*k] = x[2*k]+y[k]; } } Vectorization failed due to "unsafe dependent memory operation". I traced the LoopAccessAnalysis.cpp and found the reason is the NoWrapFlag for SCEVAddRecExpr is not set and consequently the
2010 Jan 25
0
[LLVMdev] 64bit MRV problem: { float, float, float} -> { double, float }
Hi Ralf, > I do not understand why this behaviour is required. What is the problem > in having a function receive a single struct-parameter with three floats > compared to two scalar parameters? > > source-code (C++): > struct Test3Float { float a, b, c; }; > void test(Test3Float param, Test3Float* result) { ... } if you compile this with GCC, you will see that it too
2013 Feb 20
3
[LLVMdev] Is va_arg correct on Mips backend?
...ddiu $1, $zero, 6 sw $1, 24($sp) lw $25, %call16(_Z5sum_iiz)($gp) addiu $4, $zero, 6 addiu $5, $zero, 1 addiu $6, $zero, 2 jalr $25 addiu $7, $zero, 3 sw $2, 36($sp) lw $ra, 44($sp) # 4-byte Folded Reload jr $ra addiu $sp, $sp, 48 .set at .set macro .set reorder .end main $tmp9: .size main, ($tmp9)-main .cfi_endproc On 2013/2/20, at 上午3:04, Akira Hatanaka <ahatanak at gmail.com> wrote: > Which part of the generated code do you think is not correct? Could you be more specific? > > I compiled this program with clang and ran it on a mips board. It retur...
2010 Sep 29
3
[LLVMdev] spilling & xmm register usage
Hello everybody, I have stumbled upon a test case (the attached module is a slightly reduced version) that shows extremely reduced performance on linux compared to windows when executed using LLVM's JIT. We narrowed the problem down to the actual code being generated, the source IR on both systems is the same. Try compiling the attached module: llc -O3 -filetype=asm -o BAD.s BAD.ll Under
2010 Jan 25
2
[LLVMdev] 64bit MRV problem: { float, float, float} -> { double, float }
Uh, sorry, did not pay attention where I was replying ;) Hey Duncan, I do not understand why this behaviour is required. What is the problem in having a function receive a single struct-parameter with three floats compared to two scalar parameters? source-code (C++): struct Test3Float { float a, b, c; }; void test(Test3Float param, Test3Float* result) { ... } bitcode:
2013 Feb 20
0
[LLVMdev] Is va_arg correct on Mips backend?
..._iiz)($gp) > addiu $4, $zero, 6 > addiu $5, $zero, 1 > addiu $6, $zero, 2 > jalr $25 > addiu $7, $zero, 3 > sw $2, 36($sp) > lw $ra, 44($sp) # 4-byte Folded Reload > jr $ra > addiu $sp, $sp, 48 > .set at > .set macro > .set reorder > .end main > $tmp9: > .size main, ($tmp9)-main > .cfi_endproc > > > > On 2013/2/20, at 上午3:04, Akira Hatanaka <ahatanak at gmail.com> wrote: > > Which part of the generated code do you think is not correct? Could you be > more specific? > > I compiled this program with clang and...
2008 Jan 12
1
[LLVMdev] Labels
...obal i32 0 @yybegin = global i32 0 @yytextlen = global i32 0 @yytext = global i8* null @yylimit = global i32 0 @yypos = global i32 0 @yybuflen = global i32 0 @stdin = external global %struct._IO_FILE* @yy = weak global i32 0 define i32 @yyrefill() { entry: %tmp842 = load i32* @yybuflen, align 4 %tmp943 = load i32* @yypos, align 4 %tmp1044 = sub i32 %tmp842, %tmp943 %tmp1145 = icmp slt i32 %tmp1044, 512 br i1 %tmp1145, label %bb, label %bb13 bb: %tmp2.rle = phi i32 [ %tmp842, %entry ], [ %tmp8, %bb ] %tmp3 = shl i32 %tmp2.rle, 1 store i32 %tmp3, i32* @yybuflen, align 4 %tmp5 = load i8**...
2008 Jan 06
2
[LLVMdev] trouble with getelementptr
...;i32> [#uses=0] %tmp5 = getelementptr [9 x i8]* @.str4, i64 0, i64 0 ; <i8*> [#uses=1] %tmp6 = call i32 @puts( i8* %tmp5 ) ; <i32> [#uses=0] %tmp8 = getelementptr [7 x i8]* @.str7, i64 0, i64 0 ; <i8*> [#uses=1] %tmp9 = call i32 @puts( i8* %tmp8 ) ; <i32> [#uses=0] ret i32 0 } ;end llvm-as test.ll -o test.ll.bc llc test.ll.bc -o test.ll.s gcc test.ll.s -o test.ll.native After running a see next: whiter4bbit at LiZa /home/whiter4bbit/programming/study/yapis/liza $ ./test.ll.native &...