@@ -1037,7 +1037,7 @@ def rb_path_to_class(path)
1037
1037
def rb_proc_new ( function , value )
1038
1038
Proc . new do |*args |
1039
1039
Truffle ::CExt . rb_tr_unwrap (
1040
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , function , args . map! { |arg | Truffle ::CExt . rb_tr_wrap ( arg ) } ) )
1040
+ Truffle . invoke_primitive ( :call_with_c_mutex , function , args . map! { |arg | Truffle ::CExt . rb_tr_wrap ( arg ) } ) )
1041
1041
end
1042
1042
end
1043
1043
@@ -1092,11 +1092,11 @@ def rb_jump_tag(pos)
1092
1092
end
1093
1093
1094
1094
def rb_yield ( value )
1095
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , rb_block_proc , [ value ] )
1095
+ Truffle . invoke_primitive ( :call_with_c_mutex , rb_block_proc , [ value ] )
1096
1096
end
1097
1097
1098
1098
def rb_yield_splat ( values )
1099
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , rb_block_proc , values )
1099
+ Truffle . invoke_primitive ( :call_with_c_mutex , rb_block_proc , values )
1100
1100
end
1101
1101
1102
1102
def rb_ivar_lookup ( object , name , default_value )
@@ -1248,7 +1248,7 @@ def rb_enumeratorize(obj, meth, args)
1248
1248
1249
1249
def rb_enumeratorize_with_size ( obj , meth , args , size_fn )
1250
1250
return rb_enumeratorize ( obj , meth , args ) if size_fn . nil?
1251
- enum = obj . to_enum ( meth , *args ) { rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , size_fn , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( args ) , rb_tr_wrap ( enum ) ] ) ) }
1251
+ 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 ) ] ) ) }
1252
1252
enum
1253
1253
end
1254
1254
@@ -1258,7 +1258,7 @@ def rb_eval_string(str)
1258
1258
1259
1259
def rb_define_alloc_func ( ruby_class , function )
1260
1260
ruby_class . singleton_class . send ( :define_method , :__allocate__ ) do
1261
- Truffle ::CExt . rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , function , [ Truffle ::CExt . rb_tr_wrap ( self ) ] ) )
1261
+ Truffle ::CExt . rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , function , [ Truffle ::CExt . rb_tr_wrap ( self ) ] ) )
1262
1262
end
1263
1263
class << ruby_class
1264
1264
private :__allocate__
@@ -1376,7 +1376,7 @@ def rb_mutex_sleep(mutex, timeout)
1376
1376
1377
1377
def rb_mutex_synchronize ( mutex , func , arg )
1378
1378
mutex . synchronize do
1379
- rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , func , [ rb_tr_wrap ( arg ) ] ) )
1379
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( arg ) ] ) )
1380
1380
end
1381
1381
end
1382
1382
@@ -1438,23 +1438,23 @@ def rb_data_typed_object_wrap(ruby_class, data, data_type, mark, free, size)
1438
1438
def data_finalizer ( free , data_holder )
1439
1439
raise unless free . respond_to? ( :call )
1440
1440
proc {
1441
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , free , [ data_holder . data ] ) unless data_holder . data . nil?
1441
+ Truffle . invoke_primitive ( :call_with_c_mutex , free , [ data_holder . data ] ) unless data_holder . data . nil?
1442
1442
}
1443
1443
end
1444
1444
1445
1445
def data_marker ( mark , data_holder )
1446
1446
raise unless mark . respond_to? ( :call )
1447
1447
proc { |obj |
1448
1448
create_mark_list
1449
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , mark , [ data_holder . data ] ) unless data_holder . data . nil?
1449
+ Truffle . invoke_primitive ( :call_with_c_mutex , mark , [ data_holder . data ] ) unless data_holder . data . nil?
1450
1450
set_mark_list_on_object ( obj )
1451
1451
}
1452
1452
end
1453
1453
1454
1454
def data_sizer ( sizer , data_holder )
1455
1455
raise unless sizer . respond_to? ( :call )
1456
1456
proc {
1457
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , sizer , [ data_holder . data ] )
1457
+ Truffle . invoke_primitive ( :call_with_c_mutex , sizer , [ data_holder . data ] )
1458
1458
}
1459
1459
end
1460
1460
@@ -1488,51 +1488,51 @@ def send_splatted(object, method, args)
1488
1488
1489
1489
def rb_block_call ( object , method , args , func , data )
1490
1490
object . __send__ ( method , *args ) do |*block_args |
1491
- rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , func , [ rb_tr_wrap ( block_args . first ) , data , block_args . size , RARRAY_PTR ( block_args ) , nil ] ) )
1491
+ 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 ] ) )
1492
1492
end
1493
1493
end
1494
1494
1495
1495
def rb_ensure ( b_proc , data1 , e_proc , data2 )
1496
1496
begin
1497
- rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , b_proc , [ data1 ] ) )
1497
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , b_proc , [ data1 ] ) )
1498
1498
ensure
1499
- rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , e_proc , [ data2 ] ) )
1499
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , e_proc , [ data2 ] ) )
1500
1500
end
1501
1501
end
1502
1502
1503
1503
def rb_rescue ( b_proc , data1 , r_proc , data2 )
1504
1504
begin
1505
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , b_proc , [ data1 ] )
1505
+ Truffle . invoke_primitive ( :call_with_c_mutex , b_proc , [ data1 ] )
1506
1506
rescue StandardError => e
1507
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , r_proc , [ data2 , rb_tr_wrap ( e ) ] )
1507
+ Truffle . invoke_primitive ( :call_with_c_mutex , r_proc , [ data2 , rb_tr_wrap ( e ) ] )
1508
1508
end
1509
1509
end
1510
1510
1511
1511
def rb_rescue2 ( b_proc , data1 , r_proc , data2 , rescued )
1512
1512
begin
1513
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , b_proc , [ data1 ] )
1513
+ Truffle . invoke_primitive ( :call_with_c_mutex , b_proc , [ data1 ] )
1514
1514
rescue *rescued => e
1515
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , r_proc , [ data2 , rb_tr_wrap ( e ) ] )
1515
+ Truffle . invoke_primitive ( :call_with_c_mutex , r_proc , [ data2 , rb_tr_wrap ( e ) ] )
1516
1516
end
1517
1517
end
1518
1518
1519
1519
def rb_exec_recursive ( func , obj , arg )
1520
1520
result = nil
1521
1521
1522
1522
recursive = Thread . detect_recursion ( obj ) do
1523
- result = rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , func , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( arg ) , 0 ] ) )
1523
+ result = rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( arg ) , 0 ] ) )
1524
1524
end
1525
1525
1526
1526
if recursive
1527
- rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , func , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( arg ) , 1 ] ) )
1527
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( obj ) , rb_tr_wrap ( arg ) , 1 ] ) )
1528
1528
else
1529
1529
result
1530
1530
end
1531
1531
end
1532
1532
1533
1533
def rb_catch_obj ( tag , func , data )
1534
1534
catch tag do |caught |
1535
- rb_tr_unwrap ( Truffle . invoke_primitive ( :interop_call_c_with_mutex , func , [ rb_tr_wrap ( caught ) , rb_tr_wrap ( data ) , rb_tr_wrap ( nil ) ] ) )
1535
+ rb_tr_unwrap ( Truffle . invoke_primitive ( :call_with_c_mutex , func , [ rb_tr_wrap ( caught ) , rb_tr_wrap ( data ) , rb_tr_wrap ( nil ) ] ) )
1536
1536
end
1537
1537
end
1538
1538
@@ -1602,12 +1602,12 @@ def rb_time_interval_acceptable(time_val)
1602
1602
1603
1603
def rb_thread_create ( fn , args )
1604
1604
Thread . new do
1605
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , fn , [ args ] )
1605
+ Truffle . invoke_primitive ( :call_with_c_mutex , fn , [ args ] )
1606
1606
end
1607
1607
end
1608
1608
1609
1609
def rb_thread_call_with_gvl ( function , data )
1610
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , function , [ data ] )
1610
+ Truffle . invoke_primitive ( :call_with_c_mutex , function , [ data ] )
1611
1611
end
1612
1612
1613
1613
def rb_thread_call_without_gvl ( function , data1 , unblock , data2 )
@@ -1618,7 +1618,7 @@ def rb_thread_call_without_gvl(function, data1, unblock, data2)
1618
1618
end
1619
1619
1620
1620
runner = -> {
1621
- Truffle . invoke_primitive ( :interop_call_c_without_mutex , function , [ data1 ] )
1621
+ Truffle . invoke_primitive ( :call_without_c_mutex , function , [ data1 ] )
1622
1622
}
1623
1623
1624
1624
Thread . current . unblock unblocker , runner
@@ -1632,22 +1632,22 @@ def rb_iterate(iteration, iterated_object, callback, callback_arg)
1632
1632
end
1633
1633
else
1634
1634
call_with_thread_locally_stored_block iteration , iterated_object do |block_arg |
1635
- rb_tr_unwrap Truffle . invoke_primitive ( :interop_call_c_with_mutex , callback , [ rb_tr_wrap ( block_arg ) , rb_tr_wrap ( callback_arg ) , rb_tr_wrap ( nil ) ] )
1635
+ 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 ) ] )
1636
1636
end
1637
1637
end
1638
1638
end
1639
1639
1640
1640
def rb_thread_wait_fd ( fd )
1641
1641
io = IO . for_fd ( fd )
1642
1642
io . autoclose = false
1643
- IO . select ( [ io ] )
1643
+ Truffle . invoke_primitive ( :call_without_c_mutex , IO . method ( :select ) , [ [ io ] ] )
1644
1644
nil
1645
1645
end
1646
1646
1647
1647
def rb_thread_fd_writable ( fd )
1648
1648
io = IO . for_fd ( fd )
1649
1649
io . autoclose = false
1650
- _r , w , _e = IO . select ( nil , [ io ] )
1650
+ _r , w , _e = Truffle . invoke_primitive ( :call_without_c_mutex , IO . method ( :select ) , [ nil , [ io ] ] )
1651
1651
w . size
1652
1652
end
1653
1653
@@ -1666,7 +1666,7 @@ def rb_wait_for_single_fd(fd, events, tv_secs, tv_usecs)
1666
1666
if tv_secs > 0 || tv_usecs > 0
1667
1667
timeout = tv_secs + tv_usecs /1.0e6
1668
1668
end
1669
- r , w , e = IO . select ( read , write , error , *timeout )
1669
+ r , w , e = Truffle . invoke_primitive ( :call_without_c_mutex , IO . method ( :select ) , [ read , write , error , *timeout ] )
1670
1670
if r . nil? # timeout
1671
1671
0
1672
1672
else
@@ -1738,11 +1738,11 @@ def rb_define_hooked_variable(name, gvar, getter, setter)
1738
1738
id = name . to_sym
1739
1739
1740
1740
getter_proc = -> {
1741
- rb_tr_unwrap Truffle . invoke_primitive ( :interop_call_c_with_mutex , getter , [ rb_tr_wrap ( id ) , gvar , rb_tr_wrap ( nil ) ] )
1741
+ rb_tr_unwrap Truffle . invoke_primitive ( :call_with_c_mutex , getter , [ rb_tr_wrap ( id ) , gvar , rb_tr_wrap ( nil ) ] )
1742
1742
}
1743
1743
1744
1744
setter_proc = -> value {
1745
- Truffle . invoke_primitive ( :interop_call_c_with_mutex , setter , [ rb_tr_wrap ( value ) , rb_tr_wrap ( id ) , gvar , rb_tr_wrap ( nil ) ] )
1745
+ Truffle . invoke_primitive ( :call_with_c_mutex , setter , [ rb_tr_wrap ( value ) , rb_tr_wrap ( id ) , gvar , rb_tr_wrap ( nil ) ] )
1746
1746
}
1747
1747
1748
1748
Truffle ::KernelOperations . define_hooked_variable id , getter_proc , setter_proc
0 commit comments