Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- julia> @code_llvm getindex(s1, 1)
- define %jl_value_t* @julia_getindex_21091(%jl_value_t*, %jl_value_t**, i32) {
- top:
- %3 = alloca [5 x %jl_value_t*], align 8
- %.sub = getelementptr inbounds [5 x %jl_value_t*]* %3, i64 0, i64 0
- %4 = getelementptr [5 x %jl_value_t*]* %3, i64 0, i64 2
- store %jl_value_t* inttoptr (i64 6 to %jl_value_t*), %jl_value_t** %.sub, align 8
- %5 = getelementptr [5 x %jl_value_t*]* %3, i64 0, i64 1
- %6 = load %jl_value_t*** @jl_pgcstack, align 8
- %.c = bitcast %jl_value_t** %6 to %jl_value_t*
- store %jl_value_t* %.c, %jl_value_t** %5, align 8
- store %jl_value_t** %.sub, %jl_value_t*** @jl_pgcstack, align 8
- %7 = getelementptr [5 x %jl_value_t*]* %3, i64 0, i64 3
- store %jl_value_t* null, %jl_value_t** %7, align 8
- %8 = getelementptr [5 x %jl_value_t*]* %3, i64 0, i64 4
- store %jl_value_t* null, %jl_value_t** %8, align 8
- store %jl_value_t* null, %jl_value_t** %4, align 8
- %9 = load %jl_value_t** %1, align 8
- store %jl_value_t* %9, %jl_value_t** %7, align 8
- %10 = getelementptr %jl_value_t** %1, i64 1
- %11 = load %jl_value_t** %10, align 8
- store %jl_value_t* %11, %jl_value_t** %8, align 8
- %12 = call %jl_value_t* @julia_checkbounds_20972(%jl_value_t* inttoptr (i64 139936406403024 to %jl_value_t*), %jl_value_t** %7, i32 2)
- %13 = getelementptr inbounds %jl_value_t* %9, i64 0, i32 0
- %14 = load %jl_value_t** %13, align 8
- %15 = getelementptr %jl_value_t* %9, i64 4
- %16 = bitcast %jl_value_t* %15 to i64*
- %17 = load i64* %16, align 8
- %18 = load %jl_value_t** %10, align 8
- %19 = bitcast %jl_value_t* %18 to i64*
- %20 = load i64* %19, align 8
- %21 = add i64 %17, -2
- %22 = add i64 %21, %20
- %23 = bitcast %jl_value_t* %14 to i8**
- %24 = load i8** %23, align 8
- %25 = bitcast i8* %24 to double*
- %26 = getelementptr double* %25, i64 %22
- %27 = load double* %26, align 8
- %28 = call %jl_value_t* @alloc_1w()
- %29 = getelementptr inbounds %jl_value_t* %28, i64 -1, i32 0
- store %jl_value_t* inttoptr (i64 139936369075984 to %jl_value_t*), %jl_value_t** %29, align 8
- %30 = bitcast %jl_value_t* %28 to double*
- store double %27, double* %30, align 8
- %31 = load %jl_value_t** %5, align 8
- %32 = getelementptr inbounds %jl_value_t* %31, i64 0, i32 0
- store %jl_value_t** %32, %jl_value_t*** @jl_pgcstack, align 8
- ret %jl_value_t* %28
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement