SHARE
TWEET

Untitled

a guest Jul 8th, 2019 91 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. define void @die.main() #0 {
  2. decls-0:
  3.     %0 = alloca [1000 x [1000 x i8]], align 16
  4.     %1 = alloca i64, align 16
  5.     %2 = alloca i64, align 16
  6.     %3 = alloca i64, align 16
  7.     %4 = alloca i64, align 16
  8.     %5 = alloca i64, align 16
  9.     %6 = alloca i64, align 16
  10.     %7 = alloca %..string, align 16
  11.     %8 = alloca %..any, align 16
  12.     %9 = alloca {%..any*, i64}, align 16
  13.     %10 = alloca [1 x %..any], align 16
  14.     %11 = alloca %runtime.Context, align 16
  15.     %12 = bitcast %runtime.Context* %11 to %..rawptr
  16.     ; ZeroInit
  17.     %13 = call %..rawptr @mem.zero(%..rawptr %12, i64 144)
  18.     %14 = load %runtime.Context, %runtime.Context* @ggv$0, align 8
  19.     store %runtime.Context %14, %runtime.Context* %11
  20.     call void @runtime.__init_context(%runtime.Context* %11)
  21.     %15 = alloca {%..any*, i64}, align 16
  22.     ; foo
  23.     store [1000 x [1000 x i8]] undef, [1000 x [1000 x i8]]* %0
  24.     ; RangeStmt
  25.     ; i
  26.     ; ZeroInit
  27.     store i64 zeroinitializer, i64* %1, align 1
  28.     store i64 1000, i64* %2
  29.     store i64 -1, i64* %3
  30.     br label %for.index.loop-1
  31.  
  32. for.index.loop-1:
  33.     %16 = load i64, i64* %3, align 8
  34.     %17 = add i64 %16, 1
  35.     store i64 %17, i64* %3
  36.     %18 = icmp slt i64 %17, 1000
  37.     br i1 %18, label %for.index.body-2, label %for.index.done-6
  38.  
  39. for.index.body-2:
  40.     %19 = load i64, i64* %3, align 8
  41.     store i64 %19, i64* %1
  42.     ; RangeStmt
  43.     ; j
  44.     ; ZeroInit
  45.     store i64 zeroinitializer, i64* %4, align 1
  46.     ; IndexExpr
  47.     %20 = load i64, i64* %1, align 8
  48.     %21 = trunc i64 %20 to i32
  49.     call void @runtime.bounds_check_error(%..string {i8* getelementptr inbounds ([35 x i8], [35 x i8]* @str$5c, i32 0, i32 0), i64 34}, i64 9, i64 25, i64 %20, i64 1000)
  50.     store i64 1000, i64* %5
  51.     store i64 -1, i64* %6
  52.     br label %for.index.loop-3
  53.  
  54. for.index.loop-3:
  55.     %22 = load i64, i64* %6, align 8
  56.     %23 = add i64 %22, 1
  57.     store i64 %23, i64* %6
  58.     %24 = icmp slt i64 %23, 1000
  59.     br i1 %24, label %for.index.body-4, label %for.index.done-5
  60.  
  61. for.index.body-4:
  62.     %25 = load i64, i64* %6, align 8
  63.     store i64 %25, i64* %4
  64.     ; AssignStmt
  65.     ; IndexExpr
  66.     ; IndexExpr
  67.     %26 = load i64, i64* %1, align 8
  68.     %27 = trunc i64 %26 to i32
  69.     %28 = getelementptr inbounds [1000 x [1000 x i8]], [1000 x [1000 x i8]]* %0, i32 0, i32 %27
  70.     call void @runtime.bounds_check_error(%..string {i8* getelementptr inbounds ([35 x i8], [35 x i8]* @str$5d, i32 0, i32 0), i64 34}, i64 10, i64 17, i64 %26, i64 1000)
  71.     %29 = load i64, i64* %4, align 8
  72.     %30 = trunc i64 %29 to i32
  73.     %31 = getelementptr inbounds [1000 x i8], [1000 x i8]* %28, i32 0, i32 %30
  74.     call void @runtime.bounds_check_error(%..string {i8* getelementptr inbounds ([35 x i8], [35 x i8]* @str$5e, i32 0, i32 0), i64 34}, i64 10, i64 20, i64 %29, i64 1000)
  75.     store i8 0, i8* %31
  76.     br label %for.index.loop-3
  77.  
  78. for.index.done-5:
  79.     br label %for.index.loop-1
  80.  
  81. for.index.done-6:
  82.     ; SelectorExpr
  83.     store %..string {i8* getelementptr inbounds ([5 x i8], [5 x i8]* @str$5f, i32 0, i32 0), i64 4}, %..string* %7
  84.     ; ZeroInit
  85.     store %..any zeroinitializer, %..any* %8, align 1
  86.     %32 = bitcast %..string* %7 to %..rawptr
  87.     %33 = getelementptr inbounds %..any, %..any* %8, i32 0, i32 0
  88.     store %..rawptr %32, %..rawptr* %33
  89.     %34 = getelementptr inbounds %..any, %..any* %8, i32 0, i32 1
  90.     store %..typeid 360287970189639684, %..typeid* %34
  91.     %35 = load %..any, %..any* %8, align 8
  92.     ; variadic call argument generation
  93.     ; ZeroInit
  94.     store {%..any*, i64} zeroinitializer, {%..any*, i64}* %9, align 1
  95.     ; ZeroInit
  96.     store [1 x %..any] zeroinitializer, [1 x %..any]* %10, align 1
  97.     %36 = getelementptr inbounds [1 x %..any], [1 x %..any]* %10, i32 0, i32 0
  98.     store %..any %35, %..any* %36
  99.     %37 = getelementptr inbounds [1 x %..any], [1 x %..any]* %10, i32 0, i32 0
  100.     %38 = getelementptr inbounds {%..any*, i64}, {%..any*, i64}* %9, i32 0, i32 0
  101.     store %..any* %37, %..any** %38
  102.     %39 = getelementptr inbounds {%..any*, i64}, {%..any*, i64}* %9, i32 0, i32 1
  103.     store i64 1, i64* %39
  104.     %40 = load {%..any*, i64}, {%..any*, i64}* %9, align 8
  105.     store {%..any*, i64} %40, {%..any*, i64}* %15
  106.     %41 = call i64 @fmt.println({%..any*, i64}* %15, %runtime.Context* noalias nonnull nocapture inreg %11)
  107.     ret void
  108. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top