@@ -1032,7 +1032,7 @@ def rb_hash_set_ifnone(hash, value)
1032
1032
1033
1033
def rb_hash_foreach ( hash , func , farg )
1034
1034
hash . each do |key , value |
1035
- st_result = Truffle ::Interop . execute_without_conversion ( func , rb_tr_wrap ( key ) , rb_tr_wrap ( value ) , farg )
1035
+ st_result = Truffle ::Interop . execute_without_conversion ( func , Truffle . invoke_primitive ( :cext_wrap , key ) , Truffle . invoke_primitive ( :cext_wrap , value ) , farg )
1036
1036
1037
1037
case st_result
1038
1038
when ST_CONTINUE
@@ -1088,7 +1088,7 @@ def rb_protect_with_block(function, arg)
1088
1088
# function called will do that. In general we try not to touch the
1089
1089
# values passed in or out of protected functions as C extensions
1090
1090
# may accept or return arbitrary pointers rather than ruby VALUEs.
1091
- res = rb_tr_wrap ( nil )
1091
+ res = Truffle . invoke_primitive ( :cext_wrap , nil )
1092
1092
pos = 0
1093
1093
e = capture_exception do
1094
1094
res = Truffle ::Interop . execute_without_conversion ( function , arg )
@@ -1271,7 +1271,7 @@ def rb_enumeratorize(obj, meth, args)
1271
1271
1272
1272
def rb_enumeratorize_with_size ( obj , meth , args , size_fn )
1273
1273
return rb_enumeratorize ( obj , meth , args ) if size_fn . nil?
1274
- enum = obj . to_enum ( meth , *args ) { rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , size_fn , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( args ) , rb_tr_wrap ( enum ) ] ) ) }
1274
+ enum = obj . to_enum ( meth , *args ) { rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , size_fn , [ Truffle . invoke_primitive ( :cext_wrap , obj ) , Truffle . invoke_primitive ( :cext_wrap , args ) , Truffle . invoke_primitive ( :cext_wrap , enum ) ] ) ) }
1275
1275
enum
1276
1276
end
1277
1277
@@ -1399,7 +1399,7 @@ def rb_mutex_sleep(mutex, timeout)
1399
1399
1400
1400
def rb_mutex_synchronize ( mutex , func , arg )
1401
1401
mutex . synchronize do
1402
- rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( arg ) ] ) )
1402
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ Truffle . invoke_primitive ( :cext_wrap , arg ) ] ) )
1403
1403
end
1404
1404
end
1405
1405
@@ -1513,7 +1513,7 @@ def send_splatted(object, method, args)
1513
1513
1514
1514
def rb_block_call ( object , method , args , func , data )
1515
1515
object . __send__ ( method , *args ) do |*block_args |
1516
- rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( block_args . first ) , data , block_args . size , RARRAY_PTR ( block_args ) , nil ] ) )
1516
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ Truffle . invoke_primitive ( :cext_wrap , block_args . first ) , data , block_args . size , RARRAY_PTR ( block_args ) , nil ] ) )
1517
1517
end
1518
1518
end
1519
1519
@@ -1529,35 +1529,35 @@ def rb_rescue(b_proc, data1, r_proc, data2)
1529
1529
begin
1530
1530
Truffle . invoke_primitive ( :call_with_c_mutex , b_proc , [ data1 ] )
1531
1531
rescue StandardError => e
1532
- Truffle . invoke_primitive ( :call_with_c_mutex , r_proc , [ data2 , rb_tr_wrap ( e ) ] )
1532
+ Truffle . invoke_primitive ( :call_with_c_mutex , r_proc , [ data2 , Truffle . invoke_primitive ( :cext_wrap , e ) ] )
1533
1533
end
1534
1534
end
1535
1535
1536
1536
def rb_rescue2 ( b_proc , data1 , r_proc , data2 , rescued )
1537
1537
begin
1538
1538
Truffle . invoke_primitive ( :call_with_c_mutex , b_proc , [ data1 ] )
1539
1539
rescue *rescued => e
1540
- Truffle . invoke_primitive ( :call_with_c_mutex , r_proc , [ data2 , rb_tr_wrap ( e ) ] )
1540
+ Truffle . invoke_primitive ( :call_with_c_mutex , r_proc , [ data2 , Truffle . invoke_primitive ( :cext_wrap , e ) ] )
1541
1541
end
1542
1542
end
1543
1543
1544
1544
def rb_exec_recursive ( func , obj , arg )
1545
1545
result = nil
1546
1546
1547
1547
recursive = Thread . detect_recursion ( obj ) do
1548
- result = rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( arg ) , 0 ] ) )
1548
+ result = rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ Truffle . invoke_primitive ( :cext_wrap , obj ) , Truffle . invoke_primitive ( :cext_wrap , arg ) , 0 ] ) )
1549
1549
end
1550
1550
1551
1551
if recursive
1552
- rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( arg ) , 1 ] ) )
1552
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ Truffle . invoke_primitive ( :cext_wrap , obj ) , Truffle . invoke_primitive ( :cext_wrap , arg ) , 1 ] ) )
1553
1553
else
1554
1554
result
1555
1555
end
1556
1556
end
1557
1557
1558
1558
def rb_catch_obj ( tag , func , data )
1559
1559
catch tag do |caught |
1560
- rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( caught ) , rb_tr_wrap ( data ) , rb_tr_wrap ( nil ) ] ) )
1560
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ Truffle . invoke_primitive ( :cext_wrap , caught ) , Truffle . invoke_primitive ( :cext_wrap , data ) , Truffle . invoke_primitive ( :cext_wrap , nil ) ] ) )
1561
1561
end
1562
1562
end
1563
1563
@@ -1656,7 +1656,7 @@ def rb_iterate(iteration, iterated_object, callback, callback_arg)
1656
1656
end
1657
1657
else
1658
1658
call_with_thread_locally_stored_block iteration , iterated_object do |block_arg |
1659
- rb_tr_unwrap Truffle . invoke_primitive ( :call_with_c_mutex , callback , [ rb_tr_wrap ( block_arg ) , rb_tr_wrap ( callback_arg ) , rb_tr_wrap ( nil ) ] )
1659
+ rb_tr_unwrap Truffle . invoke_primitive ( :call_with_c_mutex , callback , [ Truffle . invoke_primitive ( :cext_wrap , block_arg ) , Truffle . invoke_primitive ( :cext_wrap , callback_arg ) , Truffle . invoke_primitive ( :cext_wrap , nil ) ] )
1660
1660
end
1661
1661
end
1662
1662
end
@@ -1762,11 +1762,11 @@ def rb_define_hooked_variable(name, gvar, getter, setter)
1762
1762
id = name . to_sym
1763
1763
1764
1764
getter_proc = -> {
1765
- rb_tr_unwrap Truffle . invoke_primitive ( :call_with_c_mutex , getter , [ rb_tr_wrap ( id ) , gvar , rb_tr_wrap ( nil ) ] )
1765
+ rb_tr_unwrap Truffle . invoke_primitive ( :call_with_c_mutex , getter , [ Truffle . invoke_primitive ( :cext_wrap , id ) , gvar , Truffle . invoke_primitive ( :cext_wrap , nil ) ] )
1766
1766
}
1767
1767
1768
1768
setter_proc = -> value {
1769
- Truffle . invoke_primitive ( :call_with_c_mutex , setter , [ rb_tr_wrap ( value ) , rb_tr_wrap ( id ) , gvar , rb_tr_wrap ( nil ) ] )
1769
+ Truffle . invoke_primitive ( :call_with_c_mutex , setter , [ Truffle . invoke_primitive ( :cext_wrap , value ) , Truffle . invoke_primitive ( :cext_wrap , id ) , gvar , Truffle . invoke_primitive ( :cext_wrap , nil ) ] )
1770
1770
}
1771
1771
1772
1772
Truffle ::KernelOperations . define_hooked_variable id , getter_proc , setter_proc
0 commit comments