[llvm-commits] [llvm] r66119 - in /llvm/trunk: lib/Analysis/MemoryDependenceAnalysis.cpp test/DebugInfo/2009-03-05-gvn.ll

Devang Patel dpatel at apple.com
Thu Mar 5 09:46:22 PST 2009


On Mar 4, 2009, at 5:45 PM, Zhou Sheng wrote:

> Author: sheng
> Date: Wed Mar  4 19:45:43 2009
> New Revision: 66119
>
> URL: http://llvm.org/viewvc/llvm-project?rev=66119&view=rev
> Log:
> Ignore the debug info intrinsics when looking for dependency through  
> basic block.

I think, this is not required after rev. 66073.
Can you verify ?
Thanks,
-
Devang
>
>
> Added:
>    llvm/trunk/test/DebugInfo/2009-03-05-gvn.ll
> Modified:
>    llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp
>
> Modified: llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp?rev=66119&r1=66118&r2=66119&view=diff
>
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp (original)
> +++ llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp Wed Mar  4  
> 19:45:43 2009
> @@ -19,6 +19,7 @@
> #include "llvm/Constants.h"
> #include "llvm/Instructions.h"
> #include "llvm/Function.h"
> +#include "llvm/IntrinsicInst.h"
> #include "llvm/Analysis/AliasAnalysis.h"
> #include "llvm/ADT/Statistic.h"
> #include "llvm/ADT/STLExtras.h"
> @@ -222,6 +223,10 @@
>         return MemDepResult::getDef(AI);
>       continue;
>     }
> +
> +    // Ignore debug info intrinsics.
> +    if (isa<DbgInfoIntrinsic>(Inst))
> +      continue;
>
>     // See if this instruction (e.g. a call or vaarg) mod/ref's the  
> pointer.
>     switch (AA->getModRefInfo(Inst, MemPtr, MemSize)) {
>
> Added: llvm/trunk/test/DebugInfo/2009-03-05-gvn.ll
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2009-03-05-gvn.ll?rev=66119&view=auto
>
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- llvm/trunk/test/DebugInfo/2009-03-05-gvn.ll (added)
> +++ llvm/trunk/test/DebugInfo/2009-03-05-gvn.ll Wed Mar  4 19:45:43  
> 2009
> @@ -0,0 +1,125 @@
> +;RUN: llvm-as <%s | opt -gvn | llvm-dis | grep {load } | count 1
> +; ModuleID = 'db2-before.bc'
> +target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32- 
> i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64- 
> f80:32:32"
> +target triple = "i386-pc-linux-gnu"
> +	type { }		; type %0
> +	%llvm.dbg.anchor.type = type { i32, i32 }
> +	%llvm.dbg.basictype.type = type { i32, %0*, i8*, %0*, i32, i64,  
> i64, i64, i32, i32 }
> +	%llvm.dbg.compile_unit.type = type { i32, %0*, i32, i8*, i8*, i8*,  
> i1, i1, i8*, i32 }
> +	%llvm.dbg.composite.type = type { i32, %0*, i8*, %0*, i32, i64,  
> i64, i64, i32, %0*, %0*, i32 }
> +	%llvm.dbg.derivedtype.type = type { i32, %0*, i8*, %0*, i32, i64,  
> i64, i64, i32, %0* }
> +	%llvm.dbg.subprogram.type = type { i32, %0*, %0*, i8*, i8*, i8*,  
> %0*, i32, %0*, i1, i1 }
> + at llvm.dbg.compile_units = linkonce constant %llvm.dbg.anchor.type  
> { i32 458752, i32 17 }, section "llvm.metadata"		; < 
> %llvm.dbg.anchor.type*> [#uses=1]
> + at .str = internal constant [12 x i8] c"mt19937ar.c\00", section  
> "llvm.metadata"		; <[12 x i8]*> [#uses=1]
> + at .str1 = internal constant [34 x i8] c"/developer/home2/zsth/test/ 
> debug/\00", section "llvm.metadata"		; <[34 x i8]*> [#uses=1]
> + at .str2 = internal constant [52 x i8] c"4.2.1 (Based on Apple Inc.  
> build 5641) (LLVM build)\00", section "llvm.metadata"		; <[52 x  
> i8]*> [#uses=1]
> + at llvm.dbg.compile_unit = internal constant  
> %llvm.dbg.compile_unit.type { i32 458769, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to %0*), i32 1, i8*  
> getelementptr ([12 x i8]* @.str, i32 0, i32 0), i8* getelementptr  
> ([34 x i8]* @.str1, i32 0, i32 0), i8* getelementptr ([52 x i8]*  
> @.str2, i32 0, i32 0), i1 true, i1 false, i8* null, i32 -1 },  
> section "llvm.metadata"		; <%llvm.dbg.compile_unit.type*> [#uses=1]
> + at mti = internal global i32 625		; <i32*> [#uses=14]
> + at .str3 = internal constant [4 x i8] c"int\00", section  
> "llvm.metadata"		; <[4 x i8]*> [#uses=1]
> + at llvm.dbg.basictype = internal constant %llvm.dbg.basictype.type  
> { i32 458788, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* getelementptr ([4 x i8]* @.str3,  
> i32 0, i32 0), %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i32 0, i64 32, i64 32, i64 0, i32 0,  
> i32 5 }, section "llvm.metadata"		; <%llvm.dbg.basictype.type*>  
> [#uses=1]
> + at .str5 = internal constant [18 x i8] c"long unsigned int\00",  
> section "llvm.metadata"		; <[18 x i8]*> [#uses=1]
> + at llvm.dbg.basictype6 = internal constant %llvm.dbg.basictype.type  
> { i32 458788, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* getelementptr ([18 x i8]*  
> @.str5, i32 0, i32 0), %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i32 0, i64 32, i64 32, i64 0, i32 0,  
> i32 7 }, section "llvm.metadata"		; <%llvm.dbg.basictype.type*>  
> [#uses=1]
> + at llvm.dbg.array = internal constant [2 x %0*] [%0* null, %0*  
> bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype6 to %0*)],  
> section "llvm.metadata"		; <[2 x %0*]*> [#uses=1]
> + at llvm.dbg.composite = internal constant %llvm.dbg.composite.type  
> { i32 458773, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32 0,  
> i64 0, i64 0, i64 0, i32 0, %0* null, %0* bitcast ([2 x %0*]*  
> @llvm.dbg.array to %0*), i32 0 }, section "llvm.metadata"		; < 
> %llvm.dbg.composite.type*> [#uses=1]
> + at llvm.dbg.subprograms = linkonce constant %llvm.dbg.anchor.type  
> { i32 458752, i32 46 }, section "llvm.metadata"		; < 
> %llvm.dbg.anchor.type*> [#uses=1]
> + at .str7 = internal constant [13 x i8] c"init_genrand\00", section  
> "llvm.metadata"		; <[13 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram = internal constant %llvm.dbg.subprogram.type  
> { i32 458798, %0* bitcast (%llvm.dbg.anchor.type*  
> @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([13 x i8]* @.str7, i32 0, i32 0), i8* getelementptr  
> ([13 x i8]* @.str7, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 58, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at mt = internal global [624 x i32] zeroinitializer, align 32		;  
> <[624 x i32]*> [#uses=29]
> + at llvm.dbg.derivedtype = internal constant  
> %llvm.dbg.derivedtype.type { i32 458767, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> null, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i32 0, i64 32, i64 32, i64 0, i32 0,  
> %0* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype6 to  
> %0*) }, section "llvm.metadata"		; <%llvm.dbg.derivedtype.type*>  
> [#uses=1]
> + at llvm.dbg.array9 = internal constant [3 x %0*] [%0* null, %0*  
> bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype to %0*),  
> %0* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to %0*)],  
> section "llvm.metadata"		; <[3 x %0*]*> [#uses=1]
> + at llvm.dbg.composite10 = internal constant %llvm.dbg.composite.type  
> { i32 458773, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32 0,  
> i64 0, i64 0, i64 0, i32 0, %0* null, %0* bitcast ([3 x %0*]*  
> @llvm.dbg.array9 to %0*), i32 0 }, section "llvm.metadata"		; < 
> %llvm.dbg.composite.type*> [#uses=1]
> + at .str11 = internal constant [14 x i8] c"init_by_array\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram12 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str11, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str11, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 77, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite10 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at llvm.dbg.array23 = internal constant [1 x %0*] [%0* bitcast  
> (%llvm.dbg.basictype.type* @llvm.dbg.basictype6 to %0*)], section  
> "llvm.metadata"		; <[1 x %0*]*> [#uses=1]
> + at llvm.dbg.composite24 = internal constant %llvm.dbg.composite.type  
> { i32 458773, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32 0,  
> i64 0, i64 0, i64 0, i32 0, %0* null, %0* bitcast ([1 x %0*]*  
> @llvm.dbg.array23 to %0*), i32 0 }, section "llvm.metadata"		; < 
> %llvm.dbg.composite.type*> [#uses=1]
> + at .str25 = internal constant [14 x i8] c"genrand_int32\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram26 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str25, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str25, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 103, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite24 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at mag01.1661 = internal constant [2 x i32] [i32 0, i32  
> -1727483681]		; <[2 x i32]*> [#uses=3]
> + at .str35 = internal constant [9 x i8] c"long int\00", section  
> "llvm.metadata"		; <[9 x i8]*> [#uses=1]
> + at llvm.dbg.basictype36 = internal constant %llvm.dbg.basictype.type  
> { i32 458788, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* getelementptr ([9 x i8]*  
> @.str35, i32 0, i32 0), %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i32 0, i64 32, i64 32, i64 0, i32 0,  
> i32 5 }, section "llvm.metadata"		; <%llvm.dbg.basictype.type*>  
> [#uses=1]
> + at llvm.dbg.array37 = internal constant [1 x %0*] [%0* bitcast  
> (%llvm.dbg.basictype.type* @llvm.dbg.basictype36 to %0*)], section  
> "llvm.metadata"		; <[1 x %0*]*> [#uses=1]
> + at llvm.dbg.composite38 = internal constant %llvm.dbg.composite.type  
> { i32 458773, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32 0,  
> i64 0, i64 0, i64 0, i32 0, %0* null, %0* bitcast ([1 x %0*]*  
> @llvm.dbg.array37 to %0*), i32 0 }, section "llvm.metadata"		; < 
> %llvm.dbg.composite.type*> [#uses=1]
> + at .str39 = internal constant [14 x i8] c"genrand_int31\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram40 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str39, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str39, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 141, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite38 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at .str41 = internal constant [7 x i8] c"double\00", section  
> "llvm.metadata"		; <[7 x i8]*> [#uses=1]
> + at llvm.dbg.basictype42 = internal constant %llvm.dbg.basictype.type  
> { i32 458788, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* getelementptr ([7 x i8]*  
> @.str41, i32 0, i32 0), %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i32 0, i64 64, i64 64, i64 0, i32 0,  
> i32 4 }, section "llvm.metadata"		; <%llvm.dbg.basictype.type*>  
> [#uses=1]
> + at llvm.dbg.array43 = internal constant [1 x %0*] [%0* bitcast  
> (%llvm.dbg.basictype.type* @llvm.dbg.basictype42 to %0*)], section  
> "llvm.metadata"		; <[1 x %0*]*> [#uses=1]
> + at llvm.dbg.composite44 = internal constant %llvm.dbg.composite.type  
> { i32 458773, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32 0,  
> i64 0, i64 0, i64 0, i32 0, %0* null, %0* bitcast ([1 x %0*]*  
> @llvm.dbg.array43 to %0*), i32 0 }, section "llvm.metadata"		; < 
> %llvm.dbg.composite.type*> [#uses=1]
> + at .str45 = internal constant [14 x i8] c"genrand_real1\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram46 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str45, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str45, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 147, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite44 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at .str47 = internal constant [14 x i8] c"genrand_real2\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram48 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str47, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str47, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 154, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite44 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at .str49 = internal constant [14 x i8] c"genrand_real3\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram50 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str49, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str49, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 161, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite44 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at .str51 = internal constant [14 x i8] c"genrand_res53\00", section  
> "llvm.metadata"		; <[14 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram52 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([14 x i8]* @.str51, i32 0, i32 0), i8* getelementptr  
> ([14 x i8]* @.str51, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 168, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite44 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at llvm.dbg.array57 = internal constant [1 x %0*] [%0* bitcast  
> (%llvm.dbg.basictype.type* @llvm.dbg.basictype to %0*)], section  
> "llvm.metadata"		; <[1 x %0*]*> [#uses=1]
> + at llvm.dbg.composite58 = internal constant %llvm.dbg.composite.type  
> { i32 458773, %0* bitcast (%llvm.dbg.compile_unit.type*  
> @llvm.dbg.compile_unit to %0*), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32 0,  
> i64 0, i64 0, i64 0, i32 0, %0* null, %0* bitcast ([1 x %0*]*  
> @llvm.dbg.array57 to %0*), i32 0 }, section "llvm.metadata"		; < 
> %llvm.dbg.composite.type*> [#uses=1]
> + at .str59 = internal constant [5 x i8] c"main\00", section  
> "llvm.metadata"		; <[5 x i8]*> [#uses=1]
> + at llvm.dbg.subprogram60 = internal constant  
> %llvm.dbg.subprogram.type { i32 458798, %0* bitcast  
> (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to %0*), %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i8*  
> getelementptr ([5 x i8]* @.str59, i32 0, i32 0), i8* getelementptr  
> ([5 x i8]* @.str59, i32 0, i32 0), i8* null, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*), i32  
> 175, %0* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite58 to  
> %0*), i1 false, i1 true }, section "llvm.metadata"		; < 
> %llvm.dbg.subprogram.type*> [#uses=1]
> + at .str69 = internal constant [32 x i8] c"1000 outputs of  
> genrand_int32()\00"		; <[32 x i8]*> [#uses=1]
> + at .str70 = internal constant [7 x i8] c"%10lu \00"		; <[7 x i8]*>  
> [#uses=1]
> + at .str71 = internal constant [33 x i8] c"\0A1000 outputs of  
> genrand_real2()\00"		; <[33 x i8]*> [#uses=1]
> + at .str72 = internal constant [8 x i8] c"%10.8f \00"		; <[8 x i8]*>  
> [#uses=1]
> +
> +define void @init_genrand(i32 %s) nounwind {
> +entry:
> +	tail call void @llvm.dbg.func.start(%0* bitcast  
> (%llvm.dbg.subprogram.type* @llvm.dbg.subprogram to %0*))
> +	tail call void @llvm.dbg.stoppoint(i32 59, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	store i32 %s, i32* getelementptr ([624 x i32]* @mt, i32 0, i32 0),  
> align 32
> +	tail call void @llvm.dbg.stoppoint(i32 60, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	store i32 1, i32* @mti
> +	tail call void @llvm.dbg.stoppoint(i32 60, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	br i1 false, label %return, label %bb.nph
> +
> +bb.nph:		; preds = %entry
> +	%mti.promoted = load i32* @mti		; <i32> [#uses=1]
> +	br label %bb
> +
> +bb:		; preds = %bb1, %bb.nph
> +	%indvar = phi i32 [ 0, %bb.nph ], [ %indvar.next, %bb1 ]		; <i32>  
> [#uses=2]
> +	%mti.tmp.0 = add i32 %indvar, %mti.promoted		; <i32> [#uses=5]
> +	tail call void @llvm.dbg.stoppoint(i32 61, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	%0 = add i32 %mti.tmp.0, -1		; <i32> [#uses=1]
> +	%1 = getelementptr [624 x i32]* @mt, i32 0, i32 %0		; <i32*>  
> [#uses=1]
> +	%2 = load i32* %1, align 4		; <i32> [#uses=1]
> +	%3 = add i32 %mti.tmp.0, -1		; <i32> [#uses=1]
> +	%4 = getelementptr [624 x i32]* @mt, i32 0, i32 %3		; <i32*>  
> [#uses=1]
> +	%5 = load i32* %4, align 4		; <i32> [#uses=1]
> +	%6 = lshr i32 %5, 30		; <i32> [#uses=1]
> +	%7 = xor i32 %6, %2		; <i32> [#uses=1]
> +	%8 = mul i32 %7, 1812433253		; <i32> [#uses=1]
> +	%9 = add i32 %8, %mti.tmp.0		; <i32> [#uses=1]
> +	%10 = getelementptr [624 x i32]* @mt, i32 0, i32 %mti.tmp.0		;  
> <i32*> [#uses=1]
> +	store i32 %9, i32* %10, align 4
> +	tail call void @llvm.dbg.stoppoint(i32 60, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	%11 = add i32 %mti.tmp.0, 1		; <i32> [#uses=2]
> +	br label %bb1
> +
> +bb1:		; preds = %bb
> +	tail call void @llvm.dbg.stoppoint(i32 60, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	%12 = icmp sgt i32 %11, 623		; <i1> [#uses=1]
> +	%indvar.next = add i32 %indvar, 1		; <i32> [#uses=1]
> +	br i1 %12, label %bb1.return_crit_edge, label %bb
> +
> +bb1.return_crit_edge:		; preds = %bb1
> +	store i32 %11, i32* @mti
> +	br label %return
> +
> +return:		; preds = %bb1.return_crit_edge, %entry
> +	tail call void @llvm.dbg.stoppoint(i32 70, i32 0, %0* bitcast  
> (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to %0*))
> +	tail call void @llvm.dbg.region.end(%0* bitcast  
> (%llvm.dbg.subprogram.type* @llvm.dbg.subprogram to %0*))
> +	ret void
> +}
> +
> +declare void @llvm.dbg.func.start(%0*) nounwind
> +
> +declare void @llvm.dbg.stoppoint(i32, i32, %0*) nounwind
> +
> +declare void @llvm.dbg.region.end(%0*) nounwind
> +
> +declare i32 @puts(i8* nocapture) nounwind
> +
> +declare i32 @printf(i8* noalias nocapture, ...) nounwind
> +
> +declare i32 @putchar(i32) nounwind
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list