Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let unbox_vec llval =
- let ptr = build_in_bounds_gep llval (idx 3) "boxptr" builder in
- let size_ptr = build_in_bounds_gep llval (idx 5) "sizeptr" builder in
- let size = build_load size_ptr "size" builder in
- let el = build_load ptr "el" builder in
- let rhvector_type size = pointer_type (vector_type i64_type size) in
- let vec n = build_bitcast el (rhvector_type n) "vecptr" builder in
- let vecbb n = block_of_value (vec n) in
- let llsize n = const_int i32_type n in
- let switch = build_switch size (vecbb 1) 10 builder in
- let add_case_vec n = add_case switch (llsize n) (vecbb n) in
- add_case_vec 1; add_case_vec 2; add_case_vec 3;
- switch
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement