search for: tmp34

Displaying 10 results from an estimated 10 matches for "tmp34".

Did you mean: tmp3
2008 Jan 14
3
[LLVMdev] llvm-gcc miscompilation or it's the gcc's rule?
Hi, Here is C function: uint64_t mul(uint32_t x, uint32_t y) { return x * y; } current llvm-gcc-4.0 with -O3 will compile it to: define i64 @mul(i32 %x, i32 %y) nounwind { entry: %tmp3 = mul i32 %y, %x ; <i32> [#uses=1] %tmp34 = zext i32 %tmp3 to i64 ; <i64> [#uses=1] ret i64 %tmp34 } This seems incorrect. I think it should extend %x, %y to i64 first and then do the multiplication stuff. Otherwise, the result may lose some bits if %x, %y are very big. gcc seems have the same issue. Is this a bug or just...
2010 Sep 29
0
[LLVMdev] spilling & xmm register usage
...p7.i.i > %tmp29.i.i = fmul float %tmp7.i.i, 0x3FF548CDE0000000 > %tmp30.i.i = fadd float %tmp29.i.i, 0xBFFD23DD40000000 > %tmp31.i.i = fmul float %tmp7.i.i, %tmp30.i.i > %tmp32.i.i = fadd float %tmp31.i.i, 0x3FFC80EF00000000 > %tmp33.i.i = fmul float %tmp7.i.i, %tmp32.i.i > %tmp34.i.i = fadd float %tmp33.i.i, 0xBFD6D1F0E0000000 > %tmp35.i.i = fmul float %tmp7.i.i, %tmp34.i.i > %tmp36.i.i = fadd float %tmp35.i.i, 0x3FD470BF40000000 > %tmp37.i.i = fmul float %tmp19.i.i, %tmp36.i.i > %tmp38.i.i = fsub float 1.000000e+00, %tmp37.i.i > %cmp.i.i = fcmp olt floa...
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
2008 Jan 14
0
[LLVMdev] llvm-gcc miscompilation or it's the gcc's rule?
...> Here is C function: > > uint64_t mul(uint32_t x, uint32_t y) { > return x * y; > } > > current llvm-gcc-4.0 with -O3 will compile it to: > > define i64 @mul(i32 %x, i32 %y) nounwind { > entry: > %tmp3 = mul i32 %y, %x ; <i32> [#uses=1] > %tmp34 = zext i32 %tmp3 to i64 ; <i64> [#uses=1] > ret i64 %tmp34 > } > > This seems incorrect. I think it should extend %x, %y to i64 first > and then do the multiplication stuff. > Otherwise, the result may lose some bits if %x, %y are very big. > > gcc seems hav...
2008 May 07
1
[LLVMdev] bitcast function calls
...39;t understand. Some of our functions are not showing up in the Call Graph because their calls contain bitcasts. The Call Graph then considers them to be external nodes. The calls look as follows: %tmp35 = call i32 (...)* bitcast (i32 (i32, i8*, i32*)* @convert to i32 (...)*)( i32 %tmp33, i8* %tmp34, i8* %tmp30 ) ; <i32> [#uses=1] After looking deeper, we noticed that the 'convert' function above did not have a prototype in the actual c source code. After adding a prototype and running llvm-gcc again, the call no longer contained the bitcast and looked like any other normal c...
2008 Feb 10
2
[LLVMdev] Instrumenting virtual function calls
...Q::Function"**> [#uses=1] %tmp18.i = load %"struct.Q::Function"** %tmp17.i, align 4 ; < %"struct.Q::Function"*> [#uses=2] %tmp33.i = getelementptr %"struct.Q::Function"* %tmp18.i, i32 0, i32 0, i32 0, i32 0, i32 0 ; <i32 (...)***> [#uses=1] %tmp34.i = load i32 (...)*** %tmp33.i, align 4 ; <i32 (...)**> [#uses=1] %tmp35.i = getelementptr i32 (...)** %tmp34.i, i32 9 ; <i32 (...)**> [#uses=1] %tmp36.i = load i32 (...)** %tmp35.i, align 4 ; <i32 (...)*> [#uses=1] %tmp3637.i = bitcast i32 (...)* %tmp36.i to double (%...
2008 Jun 10
3
[LLVMdev] DejaGNU test fixes
...68719476735 ; <i64> [#uses=1] %mask30 = and i64 %mask29, 68719476735 ; <i64> [#uses=0] %tmp31 = load i32* %a.0, align 4 ; <i32> [#uses=1] %tmp32 = mul i32 %tmp31, 4 ; <i32> [#uses=0] %tmp33 = getelementptr %struct..0anon* %c, i32 0, i32 0 ; <i32*> [#uses=1] %tmp34 = getelementptr i32* %tmp33, i32 0 ; <i32*> [#uses=1] %tmp35 = load i32* %tmp34, align 4 ; <i32> [#uses=1] store i32 %tmp35, i32* %tmp, align 4 %tmp36 = load i32* %tmp, align 4 ; <i32> [#uses=1] store i32 %tmp36, i32* %retval, align 4 br label %return return: ; preds = %...
2008 Jan 12
1
[LLVMdev] Labels
...@yy_8_body, i32 %tmp30, i32 %tmp31) %yypos9 = load i32* @yypos %yythunkpos9 = load i32* @yythunkpos %tmp32 = call i32 @yymatchChar(i8 102) %tmp33 = icmp ne i32 %tmp102, 0 br i1 %tmp33, label %StringNotEqualZero8, label %StringEqualZero8 StringNotEqualZero8: br label %l10 StringEqualZero8: %tmp34 = load i32* @yybegin, align 4 %tmp35 = load i32* @yyend, align 4 call void @yyDo(void (i8*, i32)* @yy_9_body, i32 %tmp34, i32 %tmp35) %tmp36 = call i32 @yymatchChar(i8 103) %tmp37 = icmp ne i32 %tmp103, 0 br i1 %tmp37, label %StringNotEqualZero9, label %StringEqualZero9 StringNotEqualZero9: b...
2008 Mar 05
2
[LLVMdev] Error messages in llvm-test
...ltiplies.cbe.c:155: warning: return type of 'main' is not 'int' make[3]: [Output/multiplies.cbe] Error 1 (ignored) /home/jo/Delta/llvm/Release/bin/llc -march=c Output/simple.llvm.bc -o Output/simple.cbe.c -f C Writer does not know about %tmp35 = insertelement <4 x float> % tmp34, float %X.0, i32 1 ; <<4 x float>> [#uses=3] /home/jo/Delta/llvm/Release/bin/llc[0x878d8dc] [0x6] /lib32/libc.so.6(abort+0x101)[0x556f24b1] /home/jo/Delta/llvm/Release/bin/llc[0x812a0f8] make[3]: *** [Output/simple.cbe.c] Aborted (core dumped) gcc-4.2 -m32 Output/simple.cbe.c...
2013 Oct 15
0
[LLVMdev] [llvm-commits] r192750 - Enable MI Sched for x86.
...> >"* %tmp22 ) ; <%"struct.std::basic_ostream<char,std::char_traits<char> >"*> [#uses=0] >> ; reload: >> -; CHECK: fld >> -; CHECK: fstps >> ; CHECK: ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc >> %tmp34 = tail call %"struct.std::basic_ostream<char,std::char_traits<char> >"* @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( %"struct.std::basic_ostream<char,std::char_traits<char> >"* @_ZSt4cout, i8* getelementptr ([13 x i8]* @.str1, i32 0, i32 0) )...