@@ -565,7 +565,7 @@ def generate_exception_landing_pad(self, block):
565565 )
566566
567567 actual_exception = self .builder .call (
568- self .external_function_references ["__cxa_begin_catch " ],
568+ self .external_function_references ["tp_cxa_begin_catch " ],
569569 [self .builder .extract_value (res , 0 )]
570570 )
571571
@@ -579,7 +579,7 @@ def generate_exception_landing_pad(self, block):
579579 self .builder .store (result , self .exception_slot )
580580
581581 self .builder .call (
582- self .external_function_references ["__cxa_end_catch " ],
582+ self .external_function_references ["tp_cxa_end_catch " ],
583583 [self .builder .extract_value (res , 0 )]
584584 )
585585
@@ -619,7 +619,7 @@ def convert_teardown(self, teardown, justClearTags=False):
619619 def generate_exception_and_store_value (self , llvm_pointer_val ):
620620 exception_ptr = self .builder .bitcast (
621621 self .builder .call (
622- self .external_function_references ["__cxa_allocate_exception " ],
622+ self .external_function_references ["tp_cxa_allocate_exception " ],
623623 [llvmI64 (pointer_size )],
624624 name = "alloc_e"
625625 ),
@@ -696,7 +696,7 @@ def generate_throw_expression(self, llvm_pointer_val):
696696 exception_ptr = self .generate_exception_and_store_value (llvm_pointer_val )
697697
698698 self .builder .call (
699- self .external_function_references ["__cxa_throw " ],
699+ self .external_function_references ["tp_cxa_throw " ],
700700 [exception_ptr ] + [llvmlite .ir .Constant (llvm_i8ptr , None )] * 2
701701 )
702702
@@ -1474,11 +1474,11 @@ def define(fname, output, inputs, vararg=False):
14741474 ),
14751475 fname
14761476 )
1477- define ("__cxa_allocate_exception " , llvm_i8ptr , [llvm_i64 ])
1478- define ("__cxa_throw " , llvm_void , [llvm_i8ptr , llvm_i8ptr , llvm_i8ptr ])
1479- define ("__cxa_end_catch " , llvm_i8ptr , [llvm_i8ptr ])
1480- define ("__cxa_begin_catch " , llvm_i8ptr , [llvm_i8ptr ])
1481- define ("__gxx_personality_v0 " , llvm_i32 , [], vararg = True )
1477+ define ("tp_cxa_allocate_exception " , llvm_i8ptr , [llvm_i64 ])
1478+ define ("tp_cxa_throw " , llvm_void , [llvm_i8ptr , llvm_i8ptr , llvm_i8ptr ])
1479+ define ("tp_cxa_end_catch " , llvm_i8ptr , [llvm_i8ptr ])
1480+ define ("tp_cxa_begin_catch " , llvm_i8ptr , [llvm_i8ptr ])
1481+ define ("tp_gxx_personality_v0 " , llvm_void , [])
14821482
14831483
14841484class Converter :
@@ -1607,7 +1607,7 @@ def add_functions(self, names_to_definitions):
16071607 for name in sorted (names_to_definitions ):
16081608 definition = names_to_definitions .pop (name )
16091609 func = self ._functions_by_name [name ]
1610- func .attributes .personality = external_function_references ["__gxx_personality_v0 " ]
1610+ func .attributes .personality = external_function_references ["tp_gxx_personality_v0 " ]
16111611
16121612 # for a in func.args:
16131613 # if a.type.is_pointer:
0 commit comments