Line | Count | Source |
1 | | // -*- c -*- |
2 | | // DO NOT MODIFY THIS FILE DIRECTLY. |
3 | | // auto-generated file |
4 | | // by ./tool/mk_builtin_loader.rb |
5 | | // with ractor.rb |
6 | | #include "internal/compilers.h" /* for MAYBE_UNUSED */ |
7 | | #include "internal/warnings.h" /* for COMPILER_WARNING_PUSH */ |
8 | | #include "ruby/ruby.h" /* for VALUE */ |
9 | | #include "builtin.h" /* for RB_BUILTIN_FUNCTION */ |
10 | | struct rb_execution_context_struct; /* in vm_core.h */ |
11 | | |
12 | | static VALUE builtin_inline_class_232(struct rb_execution_context_struct *ec, const VALUE self) |
13 | 0 | { |
14 | 0 | #line 232 "ractor.rb" |
15 | 0 | return RBOOL(ruby_single_main_ractor); |
16 | 0 | #line 17 "ractor.rbinc" |
17 | 0 | } |
18 | | |
19 | | static VALUE builtin_inline_class_245(struct rb_execution_context_struct *ec, const VALUE self) |
20 | 0 | { |
21 | 0 | #line 245 "ractor.rb" |
22 | 0 | return |
23 | 0 | rb_ractor_self(rb_ec_ractor_ptr(ec));; |
24 | 0 | #line 25 "ractor.rbinc" |
25 | 0 | } |
26 | | |
27 | | static VALUE builtin_inline_class_259(struct rb_execution_context_struct *ec, const VALUE self) |
28 | 0 | { |
29 | 0 | #line 259 "ractor.rb" |
30 | 0 | return |
31 | 0 | ULONG2NUM(GET_VM()->ractor.cnt);; |
32 | 0 | #line 33 "ractor.rbinc" |
33 | 0 | } |
34 | | |
35 | | static VALUE builtin_inline_class_375(struct rb_execution_context_struct *ec, const VALUE self) |
36 | 0 | { |
37 | 0 | VALUE *const loc__ptr = (VALUE *)&ec->cfp->ep[-6]; |
38 | 0 | MAYBE_UNUSED(const VALUE) loc = *loc__ptr; |
39 | 0 | #line 375 "ractor.rb" |
40 | 0 | return RACTOR_PTR(self)->loc; |
41 | 0 | #line 42 "ractor.rbinc" |
42 | 0 | } |
43 | | |
44 | | static VALUE builtin_inline_class_376(struct rb_execution_context_struct *ec, const VALUE self) |
45 | 0 | { |
46 | 0 | VALUE *const name__ptr = (VALUE *)&ec->cfp->ep[-5]; |
47 | 0 | MAYBE_UNUSED(const VALUE) name = *name__ptr; |
48 | 0 | #line 376 "ractor.rb" |
49 | 0 | return RACTOR_PTR(self)->name; |
50 | 0 | #line 51 "ractor.rbinc" |
51 | 0 | } |
52 | | |
53 | | static VALUE builtin_inline_class_377(struct rb_execution_context_struct *ec, const VALUE self) |
54 | 0 | { |
55 | 0 | #line 377 "ractor.rb" |
56 | 0 | return UINT2NUM(rb_ractor_id(RACTOR_PTR(self))); |
57 | 0 | #line 58 "ractor.rbinc" |
58 | 0 | } |
59 | | |
60 | | static VALUE builtin_inline_class_378(struct rb_execution_context_struct *ec, const VALUE self) |
61 | 0 | { |
62 | 0 | #line 378 "ractor.rb" |
63 | 0 | return |
64 | 0 | rb_str_new2(ractor_status_str(RACTOR_PTR(self)->status_)); |
65 | 0 | #line 66 "ractor.rbinc" |
66 | 0 | } |
67 | | |
68 | | static VALUE builtin_inline_class_388(struct rb_execution_context_struct *ec, const VALUE self) |
69 | 0 | { |
70 | 0 | #line 388 "ractor.rb" |
71 | 0 | return RACTOR_PTR(self)->name; |
72 | 0 | #line 73 "ractor.rbinc" |
73 | 0 | } |
74 | | |
75 | | static VALUE builtin_inline_class_419(struct rb_execution_context_struct *ec, const VALUE self) |
76 | 0 | { |
77 | 0 | VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-3]; |
78 | 0 | MAYBE_UNUSED(const VALUE) obj = *obj__ptr; |
79 | 0 | #line 419 "ractor.rb" |
80 | 0 | return |
81 | 0 | RBOOL(rb_ractor_shareable_p(obj));; |
82 | 0 | #line 83 "ractor.rbinc" |
83 | 0 | } |
84 | | |
85 | | static VALUE builtin_inline_class_461(struct rb_execution_context_struct *ec, const VALUE self) |
86 | 0 | { |
87 | 0 | VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-5]; |
88 | 0 | MAYBE_UNUSED(const VALUE) obj = *obj__ptr; |
89 | 0 | #line 461 "ractor.rb" |
90 | 0 | return |
91 | 0 | rb_ractor_make_shareable_copy(obj);; |
92 | 0 | #line 93 "ractor.rbinc" |
93 | 0 | } |
94 | | |
95 | | static VALUE builtin_inline_class_465(struct rb_execution_context_struct *ec, const VALUE self) |
96 | 0 | { |
97 | 0 | VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-5]; |
98 | 0 | MAYBE_UNUSED(const VALUE) obj = *obj__ptr; |
99 | 0 | #line 465 "ractor.rb" |
100 | 0 | return |
101 | 0 | rb_ractor_make_shareable(obj);; |
102 | 0 | #line 103 "ractor.rbinc" |
103 | 0 | } |
104 | | |
105 | | static VALUE builtin_inline_class_520(struct rb_execution_context_struct *ec, const VALUE self) |
106 | 0 | { |
107 | 0 | #line 520 "ractor.rb" |
108 | 0 | return |
109 | 0 | rb_ractor_self(GET_VM()->ractor.main_ractor);; |
110 | 0 | #line 111 "ractor.rbinc" |
111 | 0 | } |
112 | | |
113 | | static VALUE builtin_inline_class_527(struct rb_execution_context_struct *ec, const VALUE self) |
114 | 0 | { |
115 | 0 | #line 527 "ractor.rb" |
116 | 0 | return |
117 | 0 | RBOOL(GET_VM()->ractor.main_ractor == rb_ec_ractor_ptr(ec)); |
118 | 0 | #line 119 "ractor.rbinc" |
119 | 0 | } |
120 | | |
121 | | static VALUE builtin_inline_class_567(struct rb_execution_context_struct *ec, const VALUE self) |
122 | 0 | { |
123 | 0 | #line 567 "ractor.rb" |
124 | 0 | return |
125 | 0 | ractor_default_port_value(RACTOR_PTR(self)); |
126 | 0 | #line 127 "ractor.rbinc" |
127 | 0 | } |
128 | | |
129 | | static VALUE builtin_inline_class_670(struct rb_execution_context_struct *ec, const VALUE self) |
130 | 0 | { |
131 | 0 | VALUE *const self__ptr = (VALUE *)&ec->cfp->ep[-4]; |
132 | 0 | #line 670 "ractor.rb" |
133 | 0 | return |
134 | 0 | ractor_shareable_proc(ec, *LOCAL_PTR(self), false); |
135 | 0 | #line 136 "ractor.rbinc" |
136 | 0 | } |
137 | | |
138 | | static VALUE builtin_inline_class_684(struct rb_execution_context_struct *ec, const VALUE self) |
139 | 0 | { |
140 | 0 | VALUE *const self__ptr = (VALUE *)&ec->cfp->ep[-4]; |
141 | 0 | #line 684 "ractor.rb" |
142 | 0 | return |
143 | 0 | ractor_shareable_proc(ec, *LOCAL_PTR(self), true); |
144 | 0 | #line 145 "ractor.rbinc" |
145 | 0 | } |
146 | | |
147 | | static VALUE builtin_inline_class_742(struct rb_execution_context_struct *ec, const VALUE self) |
148 | 0 | { |
149 | 0 | #line 742 "ractor.rb" |
150 | 0 | return |
151 | 0 | ractor_port_receive(ec, self); |
152 | 0 | #line 153 "ractor.rbinc" |
153 | 0 | } |
154 | | |
155 | | static VALUE builtin_inline_class_785(struct rb_execution_context_struct *ec, const VALUE self) |
156 | 0 | { |
157 | 0 | VALUE *const move__ptr = (VALUE *)&ec->cfp->ep[-4]; |
158 | 0 | MAYBE_UNUSED(const VALUE) move = *move__ptr; |
159 | 0 | VALUE *const obj__ptr = (VALUE *)&ec->cfp->ep[-5]; |
160 | 0 | MAYBE_UNUSED(const VALUE) obj = *obj__ptr; |
161 | 0 | #line 785 "ractor.rb" |
162 | 0 | return |
163 | 0 | ractor_port_send(ec, self, obj, move); |
164 | 0 | #line 165 "ractor.rbinc" |
165 | 0 | } |
166 | | |
167 | | static VALUE builtin_inline_class_807(struct rb_execution_context_struct *ec, const VALUE self) |
168 | 0 | { |
169 | 0 | #line 807 "ractor.rb" |
170 | 0 | return |
171 | 0 | ractor_port_close(ec, self); |
172 | 0 | #line 173 "ractor.rbinc" |
173 | 0 | } |
174 | | |
175 | | static VALUE builtin_inline_class_818(struct rb_execution_context_struct *ec, const VALUE self) |
176 | 0 | { |
177 | 0 | #line 818 "ractor.rb" |
178 | 0 | return |
179 | 0 | ractor_port_closed_p(ec, self);; |
180 | 0 | #line 181 "ractor.rbinc" |
181 | 0 | } |
182 | | |
183 | | static VALUE builtin_inline_class_828(struct rb_execution_context_struct *ec, const VALUE self) |
184 | 0 | { |
185 | 0 | #line 828 "ractor.rb" |
186 | 0 | return SIZET2NUM(rb_ractor_id((RACTOR_PORT_PTR(self)->r))); |
187 | 0 | #line 188 "ractor.rbinc" |
188 | 0 | } |
189 | | |
190 | | static VALUE builtin_inline_class_830(struct rb_execution_context_struct *ec, const VALUE self) |
191 | 0 | { |
192 | 0 | #line 830 "ractor.rb" |
193 | 0 | return SIZET2NUM(ractor_port_id(RACTOR_PORT_PTR(self))); |
194 | 0 | #line 195 "ractor.rbinc" |
195 | 0 | } |
196 | | |
197 | | void Init_builtin_ractor(void) |
198 | 0 | { |
199 | | // table definition |
200 | 0 | static const struct rb_builtin_function ractor_table[] = { |
201 | 0 | RB_BUILTIN_FUNCTION(0, _bi232, builtin_inline_class_232, 0), |
202 | 0 | RB_BUILTIN_FUNCTION(1, ractor_create, ractor_create, 4), |
203 | 0 | RB_BUILTIN_FUNCTION(2, _bi245, builtin_inline_class_245, 0), |
204 | 0 | RB_BUILTIN_FUNCTION(3, _bi259, builtin_inline_class_259, 0), |
205 | 0 | RB_BUILTIN_FUNCTION(4, ractor_select_internal, ractor_select_internal, 1), |
206 | 0 | RB_BUILTIN_FUNCTION(5, _bi375, builtin_inline_class_375, 0), |
207 | 0 | RB_BUILTIN_FUNCTION(6, _bi376, builtin_inline_class_376, 0), |
208 | 0 | RB_BUILTIN_FUNCTION(7, _bi377, builtin_inline_class_377, 0), |
209 | 0 | RB_BUILTIN_FUNCTION(8, _bi378, builtin_inline_class_378, 0), |
210 | 0 | RB_BUILTIN_FUNCTION(9, _bi388, builtin_inline_class_388, 0), |
211 | 0 | RB_BUILTIN_FUNCTION(10, _bi419, builtin_inline_class_419, 0), |
212 | 0 | RB_BUILTIN_FUNCTION(11, _bi461, builtin_inline_class_461, 0), |
213 | 0 | RB_BUILTIN_FUNCTION(12, _bi465, builtin_inline_class_465, 0), |
214 | 0 | RB_BUILTIN_FUNCTION(13, ractor_local_value, ractor_local_value, 1), |
215 | 0 | RB_BUILTIN_FUNCTION(14, ractor_local_value_set, ractor_local_value_set, 2), |
216 | 0 | RB_BUILTIN_FUNCTION(15, ractor_local_value_store_if_absent, ractor_local_value_store_if_absent, 1), |
217 | 0 | RB_BUILTIN_FUNCTION(16, _bi520, builtin_inline_class_520, 0), |
218 | 0 | RB_BUILTIN_FUNCTION(17, _bi527, builtin_inline_class_527, 0), |
219 | 0 | RB_BUILTIN_FUNCTION(18, ractor_require, ractor_require, 1), |
220 | 0 | RB_BUILTIN_FUNCTION(19, _bi567, builtin_inline_class_567, 0), |
221 | 0 | RB_BUILTIN_FUNCTION(20, ractor_value, ractor_value, 0), |
222 | 0 | RB_BUILTIN_FUNCTION(21, ractor_monitor, ractor_monitor, 1), |
223 | 0 | RB_BUILTIN_FUNCTION(22, ractor_unmonitor, ractor_unmonitor, 1), |
224 | 0 | RB_BUILTIN_FUNCTION(23, _bi670, builtin_inline_class_670, 0), |
225 | 0 | RB_BUILTIN_FUNCTION(24, _bi684, builtin_inline_class_684, 0), |
226 | 0 | RB_BUILTIN_FUNCTION(25, _bi742, builtin_inline_class_742, 0), |
227 | 0 | RB_BUILTIN_FUNCTION(26, _bi785, builtin_inline_class_785, 0), |
228 | 0 | RB_BUILTIN_FUNCTION(27, _bi807, builtin_inline_class_807, 0), |
229 | 0 | RB_BUILTIN_FUNCTION(28, _bi818, builtin_inline_class_818, 0), |
230 | 0 | RB_BUILTIN_FUNCTION(29, _bi828, builtin_inline_class_828, 0), |
231 | 0 | RB_BUILTIN_FUNCTION(30, _bi830, builtin_inline_class_830, 0), |
232 | 0 | RB_BUILTIN_FUNCTION(-1, NULL, NULL, 0), |
233 | 0 | }; |
234 | | |
235 | | // arity_check |
236 | 0 | COMPILER_WARNING_PUSH |
237 | 0 | #if GCC_VERSION_SINCE(5, 1, 0) || defined __clang__ |
238 | 0 | COMPILER_WARNING_ERROR(-Wincompatible-pointer-types) |
239 | 0 | #endif |
240 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_232); |
241 | 0 | if (0) rb_builtin_function_check_arity4(ractor_create); |
242 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_245); |
243 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_259); |
244 | 0 | if (0) rb_builtin_function_check_arity1(ractor_select_internal); |
245 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_375); |
246 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_376); |
247 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_377); |
248 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_378); |
249 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_388); |
250 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_419); |
251 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_461); |
252 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_465); |
253 | 0 | if (0) rb_builtin_function_check_arity1(ractor_local_value); |
254 | 0 | if (0) rb_builtin_function_check_arity2(ractor_local_value_set); |
255 | 0 | if (0) rb_builtin_function_check_arity1(ractor_local_value_store_if_absent); |
256 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_520); |
257 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_527); |
258 | 0 | if (0) rb_builtin_function_check_arity1(ractor_require); |
259 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_567); |
260 | 0 | if (0) rb_builtin_function_check_arity0(ractor_value); |
261 | 0 | if (0) rb_builtin_function_check_arity1(ractor_monitor); |
262 | 0 | if (0) rb_builtin_function_check_arity1(ractor_unmonitor); |
263 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_670); |
264 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_684); |
265 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_742); |
266 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_785); |
267 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_807); |
268 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_818); |
269 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_828); |
270 | 0 | if (0) rb_builtin_function_check_arity0(builtin_inline_class_830); |
271 | 0 | COMPILER_WARNING_POP |
272 | | |
273 | | // load |
274 | 0 | rb_load_with_builtin_functions("ractor", ractor_table); |
275 | 0 | } |