search for: __isoc99_scanf

Displaying 7 results from an estimated 7 matches for "__isoc99_scanf".

2014 Aug 08
4
[LLVMdev] Efficient Pattern matching in Instruction Combine
...ram :* suyog at suyog-Inspiron-N5010:~$ Open/rbuild/bin/clang -S -O2 1.c main: # @main # BB#0: subl $28, %esp leal 20(%esp), %eax movl %eax, 8(%esp) leal 24(%esp), %eax movl %eax, 4(%esp) movl $.L.str, (%esp) calll __isoc99_scanf movl 20(%esp), %eax * orl 24(%esp), %eax* addl $28, %esp retl As seen, optimization happened at IR level itself reflected in .s file. *GCC output for the same:* suyog at suyog-Inspiron-N5010:~$ gcc -S -O2 1.c main: .LFB23: .cfi_startproc pushl %ebp .cfi_de...
2014 Aug 13
2
[LLVMdev] Efficient Pattern matching in Instruction Combine
...gt; # BB#0: >>>> subl $28, %esp >>>> leal 20(%esp), %eax >>>> movl %eax, 8(%esp) >>>> leal 24(%esp), %eax >>>> movl %eax, 4(%esp) >>>> movl $.L.str, (%esp) >>>> calll __isoc99_scanf >>>> movl 20(%esp), %eax >>>> * orl 24(%esp), %eax* >>>> addl $28, %esp >>>> retl >>>> >>>> As seen, optimization happened at IR level itself reflected in .s file. >>>> >>>> *GCC...
2011 Jul 20
2
[LLVMdev] MC ARM ELF local common variable alignment.
...n 1 @main.b = internal global i64 0, align 8 @main.c = internal global i64 0, align 8 @.str = private unnamed_addr constant [11 x i8] c"%c%lld%lld\00", align 1 define i32 @main() nounwind { entry: %retval = alloca i32, align 4 store i32 0, i32* %retval %call = call i32 (i8*, ...)* @__isoc99_scanf(i8* getelementptr inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* @main.a, i64* @main.b, i64* @main.c) %tmp = load i8* @main.a, align 1 %conv = zext i8 %tmp to i32 %tmp1 = load i64* @main.b, align 8 %tmp2 = load i64* @main.c, align 8 %call3 = call i32 (i8*, ...)* @printf(i8* getelementptr...
2012 Mar 29
1
[LLVMdev] Problem recognizing nested select operations
...---------------- Compiling using 'clang -emit-llvm -O3 -S test.c -o -' results in the following: -------------------------- snip ------------------------------ define i32 @main(i32 %argc, i8** nocapture %argv) nounwind { entry: %a = alloca i32, align 4 %call = call i32 (i8*, ...)* @__isoc99_scanf(i8* getelementptr inbounds ([3 x i8]* @.str, i32 0, i32 0), i32* %a) nounwind %0 = load i32* %a, align 4, !tbaa !0 %cmp = icmp sgt i32 %0, 255 br i1 %cmp, label %cond.end4, label %cond.false cond.false: ; preds = %entry %cmp1 = icmp slt i32 %0, 0...
2011 Jul 20
0
[LLVMdev] MC ARM ELF local common variable alignment.
...align 8 > @main.c = internal global i64 0, align 8 > @.str = private unnamed_addr constant [11 x i8] c"%c%lld%lld\00", align 1 > > define i32 @main() nounwind { > entry: > %retval = alloca i32, align 4 > store i32 0, i32* %retval > %call = call i32 (i8*, ...)* @__isoc99_scanf(i8* getelementptr > inbounds ([11 x i8]* @.str, i32 0, i32 0), i8* @main.a, i64* @main.b, > i64* @main.c) > %tmp = load i8* @main.a, align 1 > %conv = zext i8 %tmp to i32 > %tmp1 = load i64* @main.b, align 8 > %tmp2 = load i64* @main.c, align 8 > %call3 = call i32 (i8*, .....
2014 Aug 13
2
[LLVMdev] Efficient Pattern matching in Instruction Combine
...gt; # BB#0: >>>> subl $28, %esp >>>> leal 20(%esp), %eax >>>> movl %eax, 8(%esp) >>>> leal 24(%esp), %eax >>>> movl %eax, 4(%esp) >>>> movl $.L.str, (%esp) >>>> calll __isoc99_scanf >>>> movl 20(%esp), %eax >>>> orl 24(%esp), %eax >>>> addl $28, %esp >>>> retl >>>> >>>> As seen, optimization happened at IR level itself reflected in .s file. >>>> >>>> GCC out...
2014 Aug 07
4
[LLVMdev] Efficient Pattern matching in Instruction Combine
Hi, All, Duncan, Rafael, David, Nick. This is regarding pattern matching in InstructionCombine pass. We use 'match' functions many times, but it doesn't do the pattern matching effectively. e.x. Lets take pattern : (A ^ B) | ((B ^ C) ^ A) -> (A ^ B) | C (B ^ A) | ((B ^ C) ^ A) -> (A ^ B) | C Both the patterns above are same, since ^ is commutative in Op0. But,