@@ -304,23 +304,23 @@ struct jl_typecache_t {
304304 // use pointer abi alignment for intptr_t
305305 alignof_ptr = DL.getPointerABIAlignment (0 );
306306 T_jlvalue = JuliaType::get_jlvalue_ty (context);
307- T_pjlvalue = PointerType::get (T_jlvalue, 0 );
308- T_prjlvalue = PointerType::get (T_jlvalue , AddressSpace::Tracked);
309- T_ppjlvalue = PointerType::get (T_pjlvalue, 0 );
310- T_pprjlvalue = PointerType::get (T_prjlvalue, 0 );
307+ T_pjlvalue = getPointerTy (context );
308+ T_prjlvalue = PointerType::get (context , AddressSpace::Tracked);
309+ T_ppjlvalue = getPointerTy (context );
310+ T_pprjlvalue = getPointerTy (context );
311311
312312 T_jlfunc = JuliaType::get_jlfunc_ty (context);
313313 assert (T_jlfunc != NULL );
314314 T_jlfuncparams = JuliaType::get_jlfuncparams_ty (context);
315315 assert (T_jlfuncparams != NULL );
316316
317317 T_jlgenericmemory = StructType::get (context, { T_size, T_pprjlvalue /* [, real-owner] */ });
318- Type *vaelts[] = { PointerType::get (getInt8Ty ( context) , AddressSpace::Loaded),
319- PointerType::get (T_jlgenericmemory , AddressSpace::Tracked),
318+ Type *vaelts[] = { PointerType::get (context, AddressSpace::Loaded),
319+ PointerType::get (context , AddressSpace::Tracked),
320320 // dimsize[ndims]
321321 };
322322 T_jlarray = StructType::get (context, ArrayRef<Type*>(vaelts));
323- T_pjlarray = PointerType::get (T_jlarray, 0 );
323+ T_pjlarray = getPointerTy (context );
324324 }
325325};
326326
@@ -757,7 +757,7 @@ static const auto jlboxed_uint8_cache = new JuliaVariable{
757757
758758static const auto jlpgcstack_func = new JuliaFunction<>{
759759 " julia.get_pgcstack" ,
760- [](LLVMContext &C) { return FunctionType::get (PointerType::get ( JuliaType::get_ppjlvalue_ty (C), 0 ), false ); },
760+ [](LLVMContext &C) { return FunctionType::get (getPointerTy (C ), false ); },
761761 nullptr ,
762762};
763763
@@ -788,7 +788,7 @@ static const auto jlsplatnew_func = new JuliaFunction<>{
788788static const auto jlthrow_func = new JuliaFunction<>{
789789 XSTR (jl_throw),
790790 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
791- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
791+ {PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
792792 get_attrs_noreturn,
793793};
794794static const auto jlerror_func = new JuliaFunction<>{
@@ -812,34 +812,34 @@ static const auto jlatomicerror_func = new JuliaFunction<>{
812812static const auto jltypeerror_func = new JuliaFunction<>{
813813 XSTR (jl_type_error),
814814 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
815- {getPointerTy (C), JuliaType::get_prjlvalue_ty (C), PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
815+ {getPointerTy (C), JuliaType::get_prjlvalue_ty (C), PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
816816 get_attrs_noreturn,
817817};
818818static const auto jlundefvarerror_func = new JuliaFunction<>{
819819 XSTR (jl_undefined_var_error),
820820 [](LLVMContext &C) {
821- Type *T = PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted);
821+ Type *T = PointerType::get (C , AddressSpace::CalleeRooted);
822822 return FunctionType::get (getVoidTy (C), {T, T}, false );
823823 },
824824 get_attrs_noreturn,
825825};
826826static const auto jlhasnofield_func = new JuliaFunction<>{
827827 XSTR (jl_has_no_field_error),
828828 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
829- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted),
830- PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
829+ {PointerType::get (C , AddressSpace::CalleeRooted),
830+ PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
831831 get_attrs_noreturn,
832832};
833833static const auto jlboundserrorv_func = new JuliaFunction<TypeFnContextAndSizeT>{
834834 XSTR (jl_bounds_error_ints),
835835 [](LLVMContext &C, Type *T_size) { return FunctionType::get (getVoidTy (C),
836- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted), PointerType::getUnqual (T_size-> getContext () ), T_size}, false ); },
836+ {PointerType::get (C , AddressSpace::CalleeRooted), getPointerTy (C ), T_size}, false ); },
837837 get_attrs_noreturn,
838838};
839839static const auto jlboundserror_func = new JuliaFunction<TypeFnContextAndSizeT>{
840840 XSTR (jl_bounds_error_int),
841841 [](LLVMContext &C, Type *T_size) { return FunctionType::get (getVoidTy (C),
842- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted), T_size}, false ); },
842+ {PointerType::get (C , AddressSpace::CalleeRooted), T_size}, false ); },
843843 get_attrs_noreturn,
844844};
845845static const auto jlvboundserror_func = new JuliaFunction<TypeFnContextAndSizeT>{
@@ -852,15 +852,15 @@ static const auto jluboundserror_func = new JuliaFunction<TypeFnContextAndSizeT>
852852 XSTR (jl_bounds_error_unboxed_int),
853853 [](LLVMContext &C, Type *T_size) {
854854 return FunctionType::get (getVoidTy (C),
855- {PointerType::get (getInt8Ty (C) , AddressSpace::Derived), JuliaType::get_pjlvalue_ty (C), T_size}, false ); },
855+ {PointerType::get (C , AddressSpace::Derived), JuliaType::get_pjlvalue_ty (C), T_size}, false ); },
856856 get_attrs_noreturn,
857857};
858858static const auto jlcheckassign_func = new JuliaFunction<>{
859859 XSTR (jl_checked_assignment),
860860 [](LLVMContext &C) {
861861 auto T_pjlvalue = JuliaType::get_pjlvalue_ty (C);
862862 return FunctionType::get (getVoidTy (C),
863- {T_pjlvalue, T_pjlvalue, T_pjlvalue, PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
863+ {T_pjlvalue, T_pjlvalue, T_pjlvalue, PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
864864 nullptr ,
865865};
866866static const auto jlcheckreplace_func = new JuliaFunction<>{
@@ -887,7 +887,7 @@ static const auto jlcheckswap_func = new JuliaFunction<>{
887887 auto T_pjlvalue = JuliaType::get_pjlvalue_ty (C);
888888 auto T_prjlvalue = JuliaType::get_prjlvalue_ty (C);
889889 return FunctionType::get (T_prjlvalue,
890- {T_pjlvalue, T_pjlvalue, T_pjlvalue, PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
890+ {T_pjlvalue, T_pjlvalue, T_pjlvalue, PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
891891 nullptr ,
892892};
893893static const auto jlcheckassignonce_func = new JuliaFunction<>{
@@ -896,7 +896,7 @@ static const auto jlcheckassignonce_func = new JuliaFunction<>{
896896 auto T_pjlvalue = JuliaType::get_pjlvalue_ty (C);
897897 auto T_prjlvalue = JuliaType::get_prjlvalue_ty (C);
898898 return FunctionType::get (T_prjlvalue,
899- {T_pjlvalue, T_pjlvalue, T_pjlvalue, PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
899+ {T_pjlvalue, T_pjlvalue, T_pjlvalue, PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
900900 nullptr ,
901901};
902902static const auto jldeclareglobal_func = new JuliaFunction<>{
@@ -991,9 +991,8 @@ static const auto jlopaque_closure_call_func = new JuliaFunction<>{
991991static const auto jlmethod_func = new JuliaFunction<>{
992992 XSTR (jl_method_def),
993993 [](LLVMContext &C) {
994- auto T_jlvalue = JuliaType::get_jlvalue_ty (C);
995- auto T_pjlvalue = PointerType::get (T_jlvalue, 0 );
996- auto T_prjlvalue = PointerType::get (T_jlvalue, AddressSpace::Tracked);
994+ auto T_pjlvalue = getPointerTy (C);
995+ auto T_prjlvalue = PointerType::get (C, AddressSpace::Tracked);
997996 return FunctionType::get (T_prjlvalue,
998997 {T_prjlvalue, T_prjlvalue, T_prjlvalue, T_pjlvalue}, false );
999998 },
@@ -1002,17 +1001,16 @@ static const auto jlmethod_func = new JuliaFunction<>{
10021001static const auto jlgenericfunction_func = new JuliaFunction<>{
10031002 XSTR (jl_declare_const_gf),
10041003 [](LLVMContext &C) {
1005- auto T_jlvalue = JuliaType::get_jlvalue_ty (C);
1006- auto T_pjlvalue = PointerType::get (T_jlvalue, 0 );
1007- auto T_prjlvalue = PointerType::get (T_jlvalue, AddressSpace::Tracked);
1004+ auto T_pjlvalue = getPointerTy (C);
1005+ auto T_prjlvalue = PointerType::get (C, AddressSpace::Tracked);
10081006 return FunctionType::get (T_prjlvalue, {T_pjlvalue, T_pjlvalue}, false );
10091007 },
10101008 nullptr ,
10111009};
10121010static const auto jllockvalue_func = new JuliaFunction<>{
10131011 XSTR (jl_lock_value),
10141012 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
1015- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
1013+ {PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
10161014 [](LLVMContext &C) { return AttributeList::get (C,
10171015 AttributeSet (),
10181016 AttributeSet (),
@@ -1021,7 +1019,7 @@ static const auto jllockvalue_func = new JuliaFunction<>{
10211019static const auto jlunlockvalue_func = new JuliaFunction<>{
10221020 XSTR (jl_unlock_value),
10231021 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
1024- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::CalleeRooted)}, false ); },
1022+ {PointerType::get (C , AddressSpace::CalleeRooted)}, false ); },
10251023 [](LLVMContext &C) { return AttributeList::get (C,
10261024 AttributeSet (),
10271025 AttributeSet (),
@@ -1030,7 +1028,7 @@ static const auto jlunlockvalue_func = new JuliaFunction<>{
10301028static const auto jllockfield_func = new JuliaFunction<>{
10311029 XSTR (jl_lock_field),
10321030 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
1033- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::Loaded)}, false ); },
1031+ {PointerType::get (C , AddressSpace::Loaded)}, false ); },
10341032 [](LLVMContext &C) { return AttributeList::get (C,
10351033 AttributeSet (),
10361034 AttributeSet (),
@@ -1039,7 +1037,7 @@ static const auto jllockfield_func = new JuliaFunction<>{
10391037static const auto jlunlockfield_func = new JuliaFunction<>{
10401038 XSTR (jl_unlock_field),
10411039 [](LLVMContext &C) { return FunctionType::get (getVoidTy (C),
1042- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::Loaded)}, false ); },
1040+ {PointerType::get (C , AddressSpace::Loaded)}, false ); },
10431041 [](LLVMContext &C) { return AttributeList::get (C,
10441042 AttributeSet (),
10451043 AttributeSet (),
@@ -1110,7 +1108,7 @@ static const auto jl_excstack_state_func = new JuliaFunction<TypeFnContextAndSiz
11101108static const auto jlegalx_func = new JuliaFunction<TypeFnContextAndSizeT>{
11111109 XSTR (jl_egal__unboxed),
11121110 [](LLVMContext &C, Type *T_size) {
1113- Type *T = PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::Derived);
1111+ Type *T = PointerType::get (C , AddressSpace::Derived);
11141112 return FunctionType::get (getInt32Ty (C), {T, T, T_size}, false ); },
11151113 [](LLVMContext &C) {
11161114 AttrBuilder FnAttrs (C);
@@ -1124,9 +1122,8 @@ static const auto jlegalx_func = new JuliaFunction<TypeFnContextAndSizeT>{
11241122static const auto jl_alloc_obj_func = new JuliaFunction<TypeFnContextAndSizeT>{
11251123 " julia.gc_alloc_obj" ,
11261124 [](LLVMContext &C, Type *T_size) {
1127- auto T_jlvalue = JuliaType::get_jlvalue_ty (C);
1128- auto T_prjlvalue = PointerType::get (T_jlvalue, AddressSpace::Tracked);
1129- auto T_pjlvalue = PointerType::get (T_jlvalue, 0 );
1125+ auto T_pjlvalue = getPointerTy (C);
1126+ auto T_prjlvalue = PointerType::get (C, AddressSpace::Tracked);
11301127 return FunctionType::get (T_prjlvalue,
11311128 {T_pjlvalue, T_size, T_prjlvalue}, false );
11321129 },
@@ -1149,9 +1146,8 @@ static const auto jl_alloc_obj_func = new JuliaFunction<TypeFnContextAndSizeT>{
11491146static const auto jl_alloc_genericmemory_unchecked_func = new JuliaFunction<TypeFnContextAndSizeT>{
11501147 XSTR (jl_alloc_genericmemory_unchecked),
11511148 [](LLVMContext &C, Type *T_size) {
1152- auto T_jlvalue = JuliaType::get_jlvalue_ty (C);
1153- auto T_prjlvalue = PointerType::get (T_jlvalue, AddressSpace::Tracked);
1154- auto T_pjlvalue = PointerType::get (T_jlvalue, 0 );
1149+ auto T_pjlvalue = getPointerTy (C);
1150+ auto T_prjlvalue = PointerType::get (C, AddressSpace::Tracked);
11551151 return FunctionType::get (T_prjlvalue,
11561152 {T_pjlvalue, T_size, T_pjlvalue}, false );
11571153 },
@@ -1258,7 +1254,7 @@ static const auto jlapplytype_func = new JuliaFunction<>{
12581254static const auto jl_object_id__func = new JuliaFunction<TypeFnContextAndSizeT>{
12591255 XSTR (jl_object_id_),
12601256 [](LLVMContext &C, Type *T_size) { return FunctionType::get (T_size,
1261- {T_size, PointerType::get (getInt8Ty (C) , AddressSpace::Derived)}, false ); },
1257+ {T_size, PointerType::get (C , AddressSpace::Derived)}, false ); },
12621258 nullptr ,
12631259};
12641260static const auto setjmp_func = new JuliaFunction<TypeFnContextAndTriple>{
@@ -1354,7 +1350,7 @@ static const auto jlfieldisdefinedchecked_func = new JuliaFunction<TypeFnContext
13541350static const auto jlgetcfunctiontrampoline_func = new JuliaFunction<>{
13551351 XSTR (jl_get_cfunction_trampoline),
13561352 [](LLVMContext &C) {
1357- auto T_pjlvalue = PointerType::get (C, 0 );
1353+ auto T_pjlvalue = getPointerTy (C );
13581354 auto T_prjlvalue = PointerType::get (C, AddressSpace::Tracked);
13591355 auto T_derived = PointerType::get (C, AddressSpace::Derived);
13601356 return FunctionType::get (T_prjlvalue,
@@ -1476,7 +1472,7 @@ static const auto gc_preserve_end_func = new JuliaFunction<> {
14761472static const auto pointer_from_objref_func = new JuliaFunction<>{
14771473 " julia.pointer_from_objref" ,
14781474 [](LLVMContext &C) { return FunctionType::get (JuliaType::get_pjlvalue_ty (C),
1479- {PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::Derived)}, false ); },
1475+ {PointerType::get (C , AddressSpace::Derived)}, false ); },
14801476 [](LLVMContext &C) {
14811477 AttrBuilder FnAttrs (C);
14821478 FnAttrs.addMemoryAttr (MemoryEffects::none ());
@@ -1497,8 +1493,8 @@ static const auto gc_loaded_func = new JuliaFunction<>{
14971493 // top:
14981494 // %metadata GC base pointer is ptr(Tracked)
14991495 // ret addrspacecast ptr to ptr(Loaded)
1500- [](LLVMContext &C) { return FunctionType::get (PointerType::get (JuliaType::get_prjlvalue_ty (C) , AddressSpace::Loaded),
1501- {JuliaType::get_prjlvalue_ty (C), PointerType::get ( JuliaType::get_prjlvalue_ty (C), 0 )}, false ); },
1496+ [](LLVMContext &C) { return FunctionType::get (PointerType::get (C , AddressSpace::Loaded),
1497+ {JuliaType::get_prjlvalue_ty (C), getPointerTy (C )}, false ); },
15021498 [](LLVMContext &C) {
15031499 AttrBuilder FnAttrs (C);
15041500 FnAttrs.addAttribute (Attribute::NoSync);
@@ -1557,7 +1553,7 @@ static const auto julia_call3 = new JuliaFunction<>{
15571553 " julia.call3" ,
15581554 [](LLVMContext &C) {
15591555 auto T_prjlvalue = JuliaType::get_prjlvalue_ty (C);
1560- Type *T = PointerType::get (JuliaType::get_jlvalue_ty (C) , AddressSpace::Derived);
1556+ Type *T = PointerType::get (C , AddressSpace::Derived);
15611557 return FunctionType::get (T_prjlvalue,
15621558 {getPointerTy (C),
15631559 T}, // %f
0 commit comments