Module: CodeTools::GeneratorMethods

Included in:
Generator
Defined in:
lib/rubinius/code/compiler/generator_methods.rb

Instance Method Summary collapse

Instance Method Details

#add_scopeObject



619
620
621
622
623
624
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 619

def add_scope
  @stream << 72
  @ip += 1
  @current_block.add_stack(1, 0)
  @instruction = 72
end

#allow_privateObject



462
463
464
465
466
467
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 462

def allow_private
  @stream << 52
  @ip += 1
  @current_block.add_stack(0, 0)
  @instruction = 52
end

#cast_arrayObject



385
386
387
388
389
390
391
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 385

def cast_array
  unless @instruction == 42 or @instruction == 41
    @stream << 42
    @ip += 1
  end
  @instruction = 42
end

#cast_for_multi_block_argObject



560
561
562
563
564
565
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 560

def cast_for_multi_block_arg
  @stream << 64
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 64
end

#cast_for_single_block_argObject



553
554
555
556
557
558
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 553

def cast_for_single_block_arg
  @stream << 63
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 63
end

#cast_for_splat_block_argObject



567
568
569
570
571
572
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 567

def cast_for_splat_block_arg
  @stream << 65
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 65
end

#cast_multi_valueObject



755
756
757
758
759
760
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 755

def cast_multi_value
  @stream << 91
  @ip += 1
  @current_block.add_stack(1, 1)
  @instruction = 91
end

#check_frozenObject



748
749
750
751
752
753
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 748

def check_frozen
  @stream << 90
  @ip += 1
  @current_block.add_stack(1, 1)
  @instruction = 90
end

#check_interruptsObject



633
634
635
636
637
638
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 633

def check_interrupts
  @stream << 74
  @ip += 1
  @current_block.add_stack(0, 0)
  @instruction = 74
end

#check_serial(arg1, arg2) ⇒ Object



647
648
649
650
651
652
653
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 647

def check_serial(arg1, arg2)
  arg1 = find_literal(arg1)
  @stream << 76 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(1, 1)
  @instruction = 76
end

#check_serial_private(arg1, arg2) ⇒ Object



655
656
657
658
659
660
661
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 655

def check_serial_private(arg1, arg2)
  arg1 = find_literal(arg1)
  @stream << 77 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(1, 1)
  @instruction = 77
end

#clear_exceptionObject



290
291
292
293
294
295
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 290

def clear_exception
  @stream << 31
  @ip += 1
  @current_block.add_stack(0, 0)
  @instruction = 31
end

#create_block(arg1) ⇒ Object



545
546
547
548
549
550
551
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 545

def create_block(arg1)
  arg1 = add_generator(arg1)
  @stream << 62 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 62
end

#dupObject



203
204
205
206
207
208
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 203

def dup
  @stream << 19
  @ip += 1
  @current_block.add_stack(1, 2)
  @instruction = 19
end

#dup_many(arg1) ⇒ Object



210
211
212
213
214
215
216
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 210

def dup_many(arg1)
  arg1 = Integer(arg1)
  @stream << 20 << arg1
  @ip += 2
  @current_block.add_stack(arg1, (arg1 * 2))
  @instruction = 20
end

#ensure_returnObject



350
351
352
353
354
355
356
357
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 350

def ensure_return
  @stream << 38
  @ip += 1
  @current_block.add_stack(1, 1)
  @current_block.close true
  @current_block = new_basic_block
  @instruction = 38
end

#find_const(arg1) ⇒ Object



447
448
449
450
451
452
453
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 447

def find_const(arg1)
  arg1 = find_literal(arg1)
  @stream << 50 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 50
end

#goto(arg1) ⇒ Object



63
64
65
66
67
68
69
70
71
72
73
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 63

def goto(arg1)
  location = @ip + 1
  @stream << 8 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(0, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  @current_block = new_basic_block
  @instruction = 8
end

#goto_if_equal(arg1) ⇒ Object



159
160
161
162
163
164
165
166
167
168
169
170
171
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 159

def goto_if_equal(arg1)
  location = @ip + 1
  @stream << 15 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(2, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 15
end

#goto_if_false(arg1) ⇒ Object



75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 75

def goto_if_false(arg1)
  location = @ip + 1
  @stream << 9 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(1, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 9
end

#goto_if_nil(arg1) ⇒ Object



103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 103

def goto_if_nil(arg1)
  location = @ip + 1
  @stream << 11 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(1, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 11
end

#goto_if_not_equal(arg1) ⇒ Object



173
174
175
176
177
178
179
180
181
182
183
184
185
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 173

def goto_if_not_equal(arg1)
  location = @ip + 1
  @stream << 16 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(2, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 16
end

#goto_if_not_nil(arg1) ⇒ Object



117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 117

def goto_if_not_nil(arg1)
  location = @ip + 1
  @stream << 12 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(1, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 12
end

#goto_if_not_undefined(arg1) ⇒ Object



145
146
147
148
149
150
151
152
153
154
155
156
157
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 145

def goto_if_not_undefined(arg1)
  location = @ip + 1
  @stream << 14 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(1, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 14
end

#goto_if_true(arg1) ⇒ Object



89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 89

def goto_if_true(arg1)
  location = @ip + 1
  @stream << 10 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(1, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 10
end

#goto_if_undefined(arg1) ⇒ Object



131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 131

def goto_if_undefined(arg1)
  location = @ip + 1
  @stream << 13 << arg1
  @ip += 2
  arg1.used_at location
  @current_block.add_stack(1, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 13
end

#instance_ofObject



684
685
686
687
688
689
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 684

def instance_of
  @stream << 81
  @ip += 1
  @current_block.add_stack(2, 1)
  @instruction = 81
end

#invoke_primitive(arg1, arg2) ⇒ Object



762
763
764
765
766
767
768
769
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 762

def invoke_primitive(arg1, arg2)
  arg1 = find_literal(arg1)
  arg2 = Integer(arg2)
  @stream << 92 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(arg2, 1)
  @instruction = 92
end

#kind_ofObject



677
678
679
680
681
682
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 677

def kind_of
  @stream << 80
  @ip += 1
  @current_block.add_stack(2, 1)
  @instruction = 80
end

#make_array(arg1) ⇒ Object



377
378
379
380
381
382
383
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 377

def make_array(arg1)
  arg1 = Integer(arg1)
  @stream << 41 << arg1
  @ip += 2
  @current_block.add_stack(arg1, 1)
  @instruction = 41
end

#move_down(arg1) ⇒ Object



241
242
243
244
245
246
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 241

def move_down(arg1)
  @stream << 24 << arg1
  @ip += 2
  @current_block.add_stack(arg1, (arg1 * 1))
  @instruction = 24
end

#noopObject



5
6
7
8
9
10
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 5

def noop
  @stream << 0
  @ip += 1
  @current_block.add_stack(0, 0)
  @instruction = 0
end

#object_to_s(arg1) ⇒ Object



778
779
780
781
782
783
784
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 778

def object_to_s(arg1)
  arg1 = find_literal(arg1)
  @stream << 94 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 94
end

#passed_arg(arg1) ⇒ Object



276
277
278
279
280
281
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 276

def passed_arg(arg1)
  @stream << 29 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 29
end

#passed_blockarg(arg1) ⇒ Object



537
538
539
540
541
542
543
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 537

def passed_blockarg(arg1)
  arg1 = Integer(arg1)
  @stream << 61 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 61
end

#popObject



218
219
220
221
222
223
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 218

def pop
  @stream << 21
  @ip += 1
  @current_block.add_stack(1, 0)
  @instruction = 21
end

#pop_many(arg1) ⇒ Object



225
226
227
228
229
230
231
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 225

def pop_many(arg1)
  arg1 = Integer(arg1)
  @stream << 22 << arg1
  @ip += 2
  @current_block.add_stack(arg1, 0)
  @instruction = 22
end

#pop_unwindObject



334
335
336
337
338
339
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 334

def pop_unwind
  @stream << 36
  @ip += 1
  @current_block.add_stack(0, 0)
  @instruction = 36
end

#push_blockObject



530
531
532
533
534
535
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 530

def push_block
  @stream << 60
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 60
end

#push_block_argObject



706
707
708
709
710
711
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 706

def push_block_arg
  @stream << 84
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 84
end

#push_const(arg1) ⇒ Object



439
440
441
442
443
444
445
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 439

def push_const(arg1)
  arg1 = find_literal(arg1)
  @stream << 49 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 49
end

#push_cpath_topObject



432
433
434
435
436
437
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 432

def push_cpath_top
  @stream << 48
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 48
end

#push_current_exceptionObject



283
284
285
286
287
288
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 283

def push_current_exception
  @stream << 30
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 30
end

#push_exception_stateObject



297
298
299
300
301
302
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 297

def push_exception_state
  @stream << 32
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 32
end

#push_falseObject



26
27
28
29
30
31
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 26

def push_false
  @stream << 3
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 3
end

#push_has_blockObject



734
735
736
737
738
739
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 734

def push_has_block
  @stream << 88
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 88
end

#push_int(arg1) ⇒ Object



33
34
35
36
37
38
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 33

def push_int(arg1)
  @stream << 4 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 4
end

#push_ivar(arg1) ⇒ Object



408
409
410
411
412
413
414
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 408

def push_ivar(arg1)
  arg1 = find_literal(arg1)
  @stream << 45 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 45
end

#push_literal(arg1) ⇒ Object



55
56
57
58
59
60
61
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 55

def push_literal(arg1)
  arg1 = find_literal(arg1)
  @stream << 7 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 7
end

#push_local(arg1) ⇒ Object



255
256
257
258
259
260
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 255

def push_local(arg1)
  @stream << 26 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 26
end

#push_local_depth(arg1, arg2) ⇒ Object



262
263
264
265
266
267
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 262

def push_local_depth(arg1, arg2)
  @stream << 27 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(0, 1)
  @instruction = 27
end

#push_memo(arg1) ⇒ Object



47
48
49
50
51
52
53
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 47

def push_memo(arg1)
  arg1 = find_literal(arg1)
  @stream << 6 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 6
end

#push_mirrorObject



793
794
795
796
797
798
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 793

def push_mirror
  @stream << 96
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 96
end

#push_my_field(arg1) ⇒ Object



663
664
665
666
667
668
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 663

def push_my_field(arg1)
  @stream << 78 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 78
end

#push_my_offset(arg1) ⇒ Object



691
692
693
694
695
696
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 691

def push_my_offset(arg1)
  @stream << 82 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 82
end

#push_nilObject



12
13
14
15
16
17
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 12

def push_nil
  @stream << 1
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 1
end

#push_procObject



741
742
743
744
745
746
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 741

def push_proc
  @stream << 89
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 89
end

#push_rubiniusObject



771
772
773
774
775
776
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 771

def push_rubinius
  @stream << 93
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 93
end

#push_scopeObject



612
613
614
615
616
617
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 612

def push_scope
  @stream << 71
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 71
end

#push_selfObject



40
41
42
43
44
45
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 40

def push_self
  @stream << 5
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 5
end

#push_stack_local(arg1) ⇒ Object



720
721
722
723
724
725
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 720

def push_stack_local(arg1)
  @stream << 86 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 86
end

#push_trueObject



19
20
21
22
23
24
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 19

def push_true
  @stream << 2
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 2
end

#push_typeObject



786
787
788
789
790
791
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 786

def push_type
  @stream << 95
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 95
end

#push_undefObject



713
714
715
716
717
718
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 713

def push_undef
  @stream << 85
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 85
end

#push_variablesObject



626
627
628
629
630
631
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 626

def push_variables
  @stream << 73
  @ip += 1
  @current_block.add_stack(0, 1)
  @instruction = 73
end

#raise_breakObject



359
360
361
362
363
364
365
366
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 359

def raise_break
  @stream << 39
  @ip += 1
  @current_block.add_stack(1, 1)
  @current_block.close false
  @current_block = new_basic_block
  @instruction = 39
end

#raise_excObject



311
312
313
314
315
316
317
318
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 311

def raise_exc
  @stream << 34
  @ip += 1
  @current_block.add_stack(1, 0)
  @current_block.close false
  @current_block = new_basic_block
  @instruction = 34
end

#raise_returnObject



341
342
343
344
345
346
347
348
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 341

def raise_return
  @stream << 37
  @ip += 1
  @current_block.add_stack(1, 1)
  @current_block.close true
  @current_block = new_basic_block
  @instruction = 37
end

#reraiseObject



368
369
370
371
372
373
374
375
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 368

def reraise
  @stream << 40
  @ip += 1
  @current_block.add_stack(0, 0)
  @current_block.close false
  @current_block = new_basic_block
  @instruction = 40
end

#restore_exception_stateObject



304
305
306
307
308
309
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 304

def restore_exception_state
  @stream << 33
  @ip += 1
  @current_block.add_stack(1, 0)
  @instruction = 33
end

#retObject



187
188
189
190
191
192
193
194
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 187

def ret
  @stream << 17
  @ip += 1
  @current_block.add_stack(1, 1)
  @current_block.close true
  @current_block = new_basic_block
  @instruction = 17
end

#rotate(arg1) ⇒ Object



233
234
235
236
237
238
239
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 233

def rotate(arg1)
  arg1 = Integer(arg1)
  @stream << 23 << arg1
  @ip += 2
  @current_block.add_stack(arg1, (arg1 * 1))
  @instruction = 23
end

#send_method(arg1) ⇒ Object



477
478
479
480
481
482
483
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 477

def send_method(arg1)
  arg1 = find_literal(arg1)
  @stream << 54 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 54
end

#send_stack(arg1, arg2) ⇒ Object



485
486
487
488
489
490
491
492
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 485

def send_stack(arg1, arg2)
  arg1 = find_literal(arg1)
  arg2 = Integer(arg2)
  @stream << 55 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(arg2+1, 1)
  @instruction = 55
end

#send_stack_with_block(arg1, arg2) ⇒ Object



494
495
496
497
498
499
500
501
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 494

def send_stack_with_block(arg1, arg2)
  arg1 = find_literal(arg1)
  arg2 = Integer(arg2)
  @stream << 56 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(arg2+2, 1)
  @instruction = 56
end

#send_stack_with_splat(arg1, arg2) ⇒ Object



503
504
505
506
507
508
509
510
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 503

def send_stack_with_splat(arg1, arg2)
  arg1 = find_literal(arg1)
  arg2 = Integer(arg2)
  @stream << 57 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(arg2+3, 1)
  @instruction = 57
end

#send_super_stack_with_block(arg1, arg2) ⇒ Object



512
513
514
515
516
517
518
519
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 512

def send_super_stack_with_block(arg1, arg2)
  arg1 = find_literal(arg1)
  arg2 = Integer(arg2)
  @stream << 58 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(arg2+1, 1)
  @instruction = 58
end

#send_super_stack_with_splat(arg1, arg2) ⇒ Object



521
522
523
524
525
526
527
528
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 521

def send_super_stack_with_splat(arg1, arg2)
  arg1 = find_literal(arg1)
  arg2 = Integer(arg2)
  @stream << 59 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(arg2+2, 1)
  @instruction = 59
end

#send_vcall(arg1) ⇒ Object



469
470
471
472
473
474
475
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 469

def send_vcall(arg1)
  arg1 = find_literal(arg1)
  @stream << 53 << arg1
  @ip += 2
  @current_block.add_stack(0, 1)
  @instruction = 53
end

#set_call_flags(arg1) ⇒ Object



455
456
457
458
459
460
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 455

def set_call_flags(arg1)
  @stream << 51 << arg1
  @ip += 2
  @current_block.add_stack(0, 0)
  @instruction = 51
end

#set_const(arg1) ⇒ Object



416
417
418
419
420
421
422
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 416

def set_const(arg1)
  arg1 = find_literal(arg1)
  @stream << 46 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 46
end

#set_const_at(arg1) ⇒ Object



424
425
426
427
428
429
430
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 424

def set_const_at(arg1)
  arg1 = find_literal(arg1)
  @stream << 47 << arg1
  @ip += 2
  @current_block.add_stack(2, 1)
  @instruction = 47
end

#set_ivar(arg1) ⇒ Object



400
401
402
403
404
405
406
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 400

def set_ivar(arg1)
  arg1 = find_literal(arg1)
  @stream << 44 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 44
end

#set_local(arg1) ⇒ Object



248
249
250
251
252
253
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 248

def set_local(arg1)
  @stream << 25 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 25
end

#set_local_depth(arg1, arg2) ⇒ Object



269
270
271
272
273
274
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 269

def set_local_depth(arg1, arg2)
  @stream << 28 << arg1 << arg2
  @ip += 3
  @current_block.add_stack(1, 1)
  @instruction = 28
end

#set_stack_local(arg1) ⇒ Object



727
728
729
730
731
732
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 727

def set_stack_local(arg1)
  @stream << 87 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 87
end

#setup_unwind(arg1, arg2) ⇒ Object



320
321
322
323
324
325
326
327
328
329
330
331
332
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 320

def setup_unwind(arg1, arg2)
  location = @ip + 1
  @stream << 35 << arg1 << arg2
  @ip += 3
  arg1.used_at location
  @current_block.add_stack(0, 0)
  @current_block.left = arg1.basic_block
  @current_block.close
  block = new_basic_block
  @current_block.right = block
  @current_block = block
  @instruction = 35
end

#shift_arrayObject



393
394
395
396
397
398
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 393

def shift_array
  @stream << 43
  @ip += 1
  @current_block.add_stack(1, 2)
  @instruction = 43
end

#store_my_field(arg1) ⇒ Object



670
671
672
673
674
675
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 670

def store_my_field(arg1)
  @stream << 79 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 79
end

#string_appendObject



590
591
592
593
594
595
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 590

def string_append
  @stream << 68
  @ip += 1
  @current_block.add_stack(2, 1)
  @instruction = 68
end

#string_build(arg1) ⇒ Object



597
598
599
600
601
602
603
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 597

def string_build(arg1)
  arg1 = Integer(arg1)
  @stream << 69 << arg1
  @ip += 2
  @current_block.add_stack(arg1, 1)
  @instruction = 69
end

#string_dupObject



605
606
607
608
609
610
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 605

def string_dup
  @stream << 70
  @ip += 1
  @current_block.add_stack(1, 1)
  @instruction = 70
end

#swapObject



196
197
198
199
200
201
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 196

def swap
  @stream << 18
  @ip += 1
  @current_block.add_stack(2, 2)
  @instruction = 18
end

#yield_debuggerObject



640
641
642
643
644
645
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 640

def yield_debugger
  @stream << 75
  @ip += 1
  @current_block.add_stack(0, 0)
  @instruction = 75
end

#yield_splat(arg1) ⇒ Object



582
583
584
585
586
587
588
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 582

def yield_splat(arg1)
  arg1 = Integer(arg1)
  @stream << 67 << arg1
  @ip += 2
  @current_block.add_stack(arg1+1, 1)
  @instruction = 67
end

#yield_stack(arg1) ⇒ Object



574
575
576
577
578
579
580
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 574

def yield_stack(arg1)
  arg1 = Integer(arg1)
  @stream << 66 << arg1
  @ip += 2
  @current_block.add_stack(arg1, 1)
  @instruction = 66
end

#zsuper(arg1) ⇒ Object



698
699
700
701
702
703
704
# File 'lib/rubinius/code/compiler/generator_methods.rb', line 698

def zsuper(arg1)
  arg1 = find_literal(arg1)
  @stream << 83 << arg1
  @ip += 2
  @current_block.add_stack(1, 1)
  @instruction = 83
end