rbx-tracer 0.0.2-universal-rubinius-1.2 → 0.0.3-universal-rubinius-1.2

Sign up to get free protection for your applications and to get access to all the features.
data/app/stepping.rb ADDED
@@ -0,0 +1,105 @@
1
+ require 'rubygems'; require 'require_relative'
2
+ require_relative './breakpoint'
3
+
4
+ class Rubinius::SetTrace
5
+ def goto_between(exec, start, fin)
6
+ goto = Rubinius::InstructionSet.opcodes_map[:goto]
7
+ git = Rubinius::InstructionSet.opcodes_map[:goto_if_true]
8
+ gif = Rubinius::InstructionSet.opcodes_map[:goto_if_false]
9
+
10
+ iseq = exec.iseq
11
+
12
+ i = start
13
+ while i < fin
14
+ op = iseq[i]
15
+ case op
16
+ when goto
17
+ return next_interesting(exec, iseq[i + 1]) # goto target
18
+ when git, gif
19
+ return [next_interesting(exec, iseq[i + 1]),
20
+ next_interesting(exec, i + 2)] # target and next ip
21
+ else
22
+ op = Rubinius::InstructionSet[op]
23
+ i += (op.arg_count + 1)
24
+ end
25
+ end
26
+
27
+ return next_interesting(exec, fin)
28
+ end
29
+
30
+ def next_interesting(exec, ip)
31
+ pop = Rubinius::InstructionSet.opcodes_map[:pop]
32
+
33
+ if exec.iseq[ip] == pop
34
+ return ip + 1
35
+ end
36
+
37
+ return ip
38
+ end
39
+
40
+ def set_breakpoints_between(exec, start_ip, fin_ip)
41
+ ips = goto_between(exec, start_ip, fin_ip)
42
+ if ips.kind_of? Fixnum
43
+ ip = ips
44
+ else
45
+ one, two = ips
46
+ bp1 = BreakPoint.for_ip(exec, one)
47
+ bp2 = BreakPoint.for_ip(exec, two)
48
+
49
+ bp1.paired_with(bp2)
50
+ bp2.paired_with(bp1)
51
+
52
+ bp1.for_step!(current_frame.variables)
53
+ bp2.for_step!(current_frame.variables)
54
+
55
+ bp1.activate
56
+ bp2.activate
57
+
58
+ return bp1
59
+ end
60
+
61
+ if ip == -1
62
+ STDERR.puts "No place to step to"
63
+ return nil
64
+ end
65
+
66
+ bp = BreakPoint.for_ip(exec, ip)
67
+ bp.for_step!(current_frame.variables)
68
+ bp.activate
69
+
70
+ return bp
71
+ end
72
+
73
+ def step_over_by(step)
74
+ f = current_frame
75
+
76
+ ip = -1
77
+
78
+ exec = f.method
79
+ possible_line = f.line + step
80
+ fin_ip = exec.first_ip_on_line possible_line, f.ip
81
+
82
+ if fin_ip == -1
83
+ return step_to_parent
84
+ end
85
+
86
+ set_breakpoints_between(exec, f.ip, fin_ip)
87
+ end
88
+
89
+ def step_to_parent
90
+ f = frame(current_frame.number + 1)
91
+ unless f
92
+ STDERR.puts "Unable to find frame to step to next"
93
+ return
94
+ end
95
+
96
+ exec = f.method
97
+ ip = f.ip
98
+
99
+ bp = BreakPoint.for_ip(exec, ip, :anon, 'return')
100
+ bp.for_step!(f.variables)
101
+ bp.activate
102
+
103
+ return bp
104
+ end
105
+ end
data/app/stepping.rbc ADDED
@@ -0,0 +1,1580 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 58
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 7
24
+ 2
25
+ 64
26
+ 47
27
+ 49
28
+ 1
29
+ 1
30
+ 15
31
+ 5
32
+ 7
33
+ 3
34
+ 64
35
+ 47
36
+ 49
37
+ 4
38
+ 1
39
+ 15
40
+ 99
41
+ 7
42
+ 5
43
+ 1
44
+ 45
45
+ 6
46
+ 7
47
+ 49
48
+ 8
49
+ 3
50
+ 13
51
+ 99
52
+ 12
53
+ 7
54
+ 9
55
+ 12
56
+ 7
57
+ 10
58
+ 12
59
+ 65
60
+ 12
61
+ 49
62
+ 11
63
+ 4
64
+ 15
65
+ 49
66
+ 9
67
+ 0
68
+ 15
69
+ 2
70
+ 11
71
+ I
72
+ 6
73
+ I
74
+ 0
75
+ I
76
+ 0
77
+ I
78
+ 0
79
+ n
80
+ p
81
+ 12
82
+ s
83
+ 8
84
+ rubygems
85
+ x
86
+ 7
87
+ require
88
+ s
89
+ 16
90
+ require_relative
91
+ s
92
+ 12
93
+ ./breakpoint
94
+ x
95
+ 16
96
+ require_relative
97
+ x
98
+ 8
99
+ SetTrace
100
+ x
101
+ 8
102
+ Rubinius
103
+ n
104
+ x
105
+ 16
106
+ open_class_under
107
+ x
108
+ 14
109
+ __class_init__
110
+ M
111
+ 1
112
+ n
113
+ n
114
+ x
115
+ 8
116
+ SetTrace
117
+ i
118
+ 72
119
+ 5
120
+ 66
121
+ 99
122
+ 7
123
+ 0
124
+ 7
125
+ 1
126
+ 65
127
+ 67
128
+ 49
129
+ 2
130
+ 0
131
+ 49
132
+ 3
133
+ 4
134
+ 15
135
+ 99
136
+ 7
137
+ 4
138
+ 7
139
+ 5
140
+ 65
141
+ 67
142
+ 49
143
+ 2
144
+ 0
145
+ 49
146
+ 3
147
+ 4
148
+ 15
149
+ 99
150
+ 7
151
+ 6
152
+ 7
153
+ 7
154
+ 65
155
+ 67
156
+ 49
157
+ 2
158
+ 0
159
+ 49
160
+ 3
161
+ 4
162
+ 15
163
+ 99
164
+ 7
165
+ 8
166
+ 7
167
+ 9
168
+ 65
169
+ 67
170
+ 49
171
+ 2
172
+ 0
173
+ 49
174
+ 3
175
+ 4
176
+ 15
177
+ 99
178
+ 7
179
+ 10
180
+ 7
181
+ 11
182
+ 65
183
+ 67
184
+ 49
185
+ 2
186
+ 0
187
+ 49
188
+ 3
189
+ 4
190
+ 11
191
+ I
192
+ 5
193
+ I
194
+ 0
195
+ I
196
+ 0
197
+ I
198
+ 0
199
+ n
200
+ p
201
+ 12
202
+ x
203
+ 12
204
+ goto_between
205
+ M
206
+ 1
207
+ n
208
+ n
209
+ x
210
+ 12
211
+ goto_between
212
+ i
213
+ 211
214
+ 45
215
+ 0
216
+ 1
217
+ 43
218
+ 2
219
+ 49
220
+ 3
221
+ 0
222
+ 7
223
+ 4
224
+ 49
225
+ 5
226
+ 1
227
+ 19
228
+ 3
229
+ 15
230
+ 45
231
+ 0
232
+ 6
233
+ 43
234
+ 2
235
+ 49
236
+ 3
237
+ 0
238
+ 7
239
+ 7
240
+ 49
241
+ 5
242
+ 1
243
+ 19
244
+ 4
245
+ 15
246
+ 45
247
+ 0
248
+ 8
249
+ 43
250
+ 2
251
+ 49
252
+ 3
253
+ 0
254
+ 7
255
+ 9
256
+ 49
257
+ 5
258
+ 1
259
+ 19
260
+ 5
261
+ 15
262
+ 20
263
+ 0
264
+ 49
265
+ 10
266
+ 0
267
+ 19
268
+ 6
269
+ 15
270
+ 20
271
+ 1
272
+ 19
273
+ 7
274
+ 15
275
+ 20
276
+ 7
277
+ 20
278
+ 2
279
+ 84
280
+ 11
281
+ 9
282
+ 198
283
+ 20
284
+ 6
285
+ 20
286
+ 7
287
+ 49
288
+ 5
289
+ 1
290
+ 19
291
+ 8
292
+ 15
293
+ 20
294
+ 8
295
+ 13
296
+ 20
297
+ 3
298
+ 12
299
+ 49
300
+ 12
301
+ 1
302
+ 9
303
+ 111
304
+ 15
305
+ 5
306
+ 20
307
+ 0
308
+ 20
309
+ 6
310
+ 20
311
+ 7
312
+ 79
313
+ 81
314
+ 13
315
+ 49
316
+ 5
317
+ 1
318
+ 47
319
+ 49
320
+ 14
321
+ 2
322
+ 11
323
+ 8
324
+ 194
325
+ 13
326
+ 20
327
+ 4
328
+ 12
329
+ 49
330
+ 12
331
+ 1
332
+ 10
333
+ 131
334
+ 13
335
+ 20
336
+ 5
337
+ 12
338
+ 49
339
+ 12
340
+ 1
341
+ 10
342
+ 131
343
+ 8
344
+ 166
345
+ 15
346
+ 5
347
+ 20
348
+ 0
349
+ 20
350
+ 6
351
+ 20
352
+ 7
353
+ 79
354
+ 81
355
+ 13
356
+ 49
357
+ 5
358
+ 1
359
+ 47
360
+ 49
361
+ 14
362
+ 2
363
+ 5
364
+ 20
365
+ 0
366
+ 20
367
+ 7
368
+ 80
369
+ 81
370
+ 13
371
+ 47
372
+ 49
373
+ 14
374
+ 2
375
+ 35
376
+ 2
377
+ 11
378
+ 8
379
+ 194
380
+ 15
381
+ 45
382
+ 0
383
+ 15
384
+ 43
385
+ 2
386
+ 20
387
+ 8
388
+ 49
389
+ 5
390
+ 1
391
+ 19
392
+ 8
393
+ 15
394
+ 20
395
+ 7
396
+ 20
397
+ 8
398
+ 49
399
+ 16
400
+ 0
401
+ 79
402
+ 81
403
+ 13
404
+ 81
405
+ 13
406
+ 19
407
+ 7
408
+ 15
409
+ 68
410
+ 8
411
+ 61
412
+ 1
413
+ 15
414
+ 5
415
+ 20
416
+ 0
417
+ 20
418
+ 2
419
+ 47
420
+ 49
421
+ 14
422
+ 2
423
+ 11
424
+ 11
425
+ I
426
+ e
427
+ I
428
+ 9
429
+ I
430
+ 3
431
+ I
432
+ 3
433
+ n
434
+ p
435
+ 17
436
+ x
437
+ 8
438
+ Rubinius
439
+ n
440
+ x
441
+ 14
442
+ InstructionSet
443
+ x
444
+ 11
445
+ opcodes_map
446
+ x
447
+ 4
448
+ goto
449
+ x
450
+ 2
451
+ []
452
+ n
453
+ x
454
+ 12
455
+ goto_if_true
456
+ n
457
+ x
458
+ 13
459
+ goto_if_false
460
+ x
461
+ 4
462
+ iseq
463
+ x
464
+ 1
465
+ <
466
+ x
467
+ 3
468
+ ===
469
+ x
470
+ 1
471
+ +
472
+ x
473
+ 16
474
+ next_interesting
475
+ n
476
+ x
477
+ 9
478
+ arg_count
479
+ p
480
+ 35
481
+ I
482
+ -1
483
+ I
484
+ 5
485
+ I
486
+ 0
487
+ I
488
+ 6
489
+ I
490
+ 10
491
+ I
492
+ 7
493
+ I
494
+ 20
495
+ I
496
+ 8
497
+ I
498
+ 30
499
+ I
500
+ a
501
+ I
502
+ 38
503
+ I
504
+ c
505
+ I
506
+ 3d
507
+ I
508
+ d
509
+ I
510
+ 45
511
+ I
512
+ e
513
+ I
514
+ 4f
515
+ I
516
+ f
517
+ I
518
+ 52
519
+ I
520
+ 10
521
+ I
522
+ 5b
523
+ I
524
+ 11
525
+ I
526
+ 70
527
+ I
528
+ 12
529
+ I
530
+ 84
531
+ I
532
+ 13
533
+ I
534
+ 95
535
+ I
536
+ 14
537
+ I
538
+ a7
539
+ I
540
+ 16
541
+ I
542
+ b4
543
+ I
544
+ 17
545
+ I
546
+ c8
547
+ I
548
+ 1b
549
+ I
550
+ d3
551
+ x
552
+ 51
553
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
554
+ p
555
+ 9
556
+ x
557
+ 4
558
+ exec
559
+ x
560
+ 5
561
+ start
562
+ x
563
+ 3
564
+ fin
565
+ x
566
+ 4
567
+ goto
568
+ x
569
+ 3
570
+ git
571
+ x
572
+ 3
573
+ gif
574
+ x
575
+ 4
576
+ iseq
577
+ x
578
+ 1
579
+ i
580
+ x
581
+ 2
582
+ op
583
+ x
584
+ 17
585
+ method_visibility
586
+ x
587
+ 15
588
+ add_defn_method
589
+ x
590
+ 16
591
+ next_interesting
592
+ M
593
+ 1
594
+ n
595
+ n
596
+ x
597
+ 16
598
+ next_interesting
599
+ i
600
+ 46
601
+ 45
602
+ 0
603
+ 1
604
+ 43
605
+ 2
606
+ 49
607
+ 3
608
+ 0
609
+ 7
610
+ 4
611
+ 49
612
+ 5
613
+ 1
614
+ 19
615
+ 2
616
+ 15
617
+ 20
618
+ 0
619
+ 49
620
+ 6
621
+ 0
622
+ 20
623
+ 1
624
+ 49
625
+ 5
626
+ 1
627
+ 20
628
+ 2
629
+ 83
630
+ 7
631
+ 9
632
+ 40
633
+ 20
634
+ 1
635
+ 79
636
+ 81
637
+ 8
638
+ 11
639
+ 8
640
+ 41
641
+ 1
642
+ 15
643
+ 20
644
+ 1
645
+ 11
646
+ 11
647
+ I
648
+ 5
649
+ I
650
+ 3
651
+ I
652
+ 2
653
+ I
654
+ 2
655
+ n
656
+ p
657
+ 9
658
+ x
659
+ 8
660
+ Rubinius
661
+ n
662
+ x
663
+ 14
664
+ InstructionSet
665
+ x
666
+ 11
667
+ opcodes_map
668
+ x
669
+ 3
670
+ pop
671
+ x
672
+ 2
673
+ []
674
+ x
675
+ 4
676
+ iseq
677
+ x
678
+ 2
679
+ ==
680
+ x
681
+ 1
682
+ +
683
+ p
684
+ 13
685
+ I
686
+ -1
687
+ I
688
+ 1e
689
+ I
690
+ 0
691
+ I
692
+ 1f
693
+ I
694
+ 10
695
+ I
696
+ 21
697
+ I
698
+ 20
699
+ I
700
+ 22
701
+ I
702
+ 28
703
+ I
704
+ 21
705
+ I
706
+ 2a
707
+ I
708
+ 25
709
+ I
710
+ 2e
711
+ x
712
+ 51
713
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
714
+ p
715
+ 3
716
+ x
717
+ 4
718
+ exec
719
+ x
720
+ 2
721
+ ip
722
+ x
723
+ 3
724
+ pop
725
+ x
726
+ 23
727
+ set_breakpoints_between
728
+ M
729
+ 1
730
+ n
731
+ n
732
+ x
733
+ 23
734
+ set_breakpoints_between
735
+ i
736
+ 184
737
+ 5
738
+ 20
739
+ 0
740
+ 20
741
+ 1
742
+ 20
743
+ 2
744
+ 47
745
+ 49
746
+ 0
747
+ 3
748
+ 19
749
+ 3
750
+ 15
751
+ 20
752
+ 3
753
+ 45
754
+ 1
755
+ 2
756
+ 49
757
+ 3
758
+ 1
759
+ 9
760
+ 30
761
+ 20
762
+ 3
763
+ 19
764
+ 4
765
+ 8
766
+ 125
767
+ 20
768
+ 3
769
+ 97
770
+ 37
771
+ 19
772
+ 5
773
+ 15
774
+ 37
775
+ 19
776
+ 6
777
+ 15
778
+ 15
779
+ 2
780
+ 15
781
+ 45
782
+ 4
783
+ 5
784
+ 20
785
+ 0
786
+ 20
787
+ 5
788
+ 49
789
+ 6
790
+ 2
791
+ 19
792
+ 7
793
+ 15
794
+ 45
795
+ 4
796
+ 7
797
+ 20
798
+ 0
799
+ 20
800
+ 6
801
+ 49
802
+ 6
803
+ 2
804
+ 19
805
+ 8
806
+ 15
807
+ 20
808
+ 7
809
+ 20
810
+ 8
811
+ 49
812
+ 8
813
+ 1
814
+ 15
815
+ 20
816
+ 8
817
+ 20
818
+ 7
819
+ 49
820
+ 8
821
+ 1
822
+ 15
823
+ 20
824
+ 7
825
+ 5
826
+ 48
827
+ 9
828
+ 49
829
+ 10
830
+ 0
831
+ 49
832
+ 11
833
+ 1
834
+ 15
835
+ 20
836
+ 8
837
+ 5
838
+ 48
839
+ 9
840
+ 49
841
+ 10
842
+ 0
843
+ 49
844
+ 11
845
+ 1
846
+ 15
847
+ 20
848
+ 7
849
+ 49
850
+ 12
851
+ 0
852
+ 15
853
+ 20
854
+ 8
855
+ 49
856
+ 12
857
+ 0
858
+ 15
859
+ 20
860
+ 7
861
+ 11
862
+ 15
863
+ 20
864
+ 4
865
+ 77
866
+ 83
867
+ 13
868
+ 9
869
+ 147
870
+ 45
871
+ 14
872
+ 15
873
+ 7
874
+ 16
875
+ 64
876
+ 49
877
+ 17
878
+ 1
879
+ 15
880
+ 1
881
+ 11
882
+ 8
883
+ 148
884
+ 1
885
+ 15
886
+ 45
887
+ 4
888
+ 18
889
+ 20
890
+ 0
891
+ 20
892
+ 4
893
+ 49
894
+ 6
895
+ 2
896
+ 19
897
+ 9
898
+ 15
899
+ 20
900
+ 9
901
+ 5
902
+ 48
903
+ 9
904
+ 49
905
+ 10
906
+ 0
907
+ 49
908
+ 11
909
+ 1
910
+ 15
911
+ 20
912
+ 9
913
+ 49
914
+ 12
915
+ 0
916
+ 15
917
+ 20
918
+ 9
919
+ 11
920
+ 11
921
+ I
922
+ e
923
+ I
924
+ a
925
+ I
926
+ 3
927
+ I
928
+ 3
929
+ n
930
+ p
931
+ 19
932
+ x
933
+ 12
934
+ goto_between
935
+ x
936
+ 6
937
+ Fixnum
938
+ n
939
+ x
940
+ 8
941
+ kind_of?
942
+ x
943
+ 10
944
+ BreakPoint
945
+ n
946
+ x
947
+ 6
948
+ for_ip
949
+ n
950
+ x
951
+ 11
952
+ paired_with
953
+ x
954
+ 13
955
+ current_frame
956
+ x
957
+ 9
958
+ variables
959
+ x
960
+ 9
961
+ for_step!
962
+ x
963
+ 8
964
+ activate
965
+ x
966
+ 2
967
+ ==
968
+ x
969
+ 6
970
+ STDERR
971
+ n
972
+ s
973
+ 19
974
+ No place to step to
975
+ x
976
+ 4
977
+ puts
978
+ n
979
+ p
980
+ 45
981
+ I
982
+ -1
983
+ I
984
+ 28
985
+ I
986
+ 0
987
+ I
988
+ 29
989
+ I
990
+ e
991
+ I
992
+ 2a
993
+ I
994
+ 18
995
+ I
996
+ 2b
997
+ I
998
+ 1e
999
+ I
1000
+ 2d
1001
+ I
1002
+ 2c
1003
+ I
1004
+ 2e
1005
+ I
1006
+ 39
1007
+ I
1008
+ 2f
1009
+ I
1010
+ 46
1011
+ I
1012
+ 31
1013
+ I
1014
+ 4e
1015
+ I
1016
+ 32
1017
+ I
1018
+ 56
1019
+ I
1020
+ 34
1021
+ I
1022
+ 62
1023
+ I
1024
+ 35
1025
+ I
1026
+ 6e
1027
+ I
1028
+ 37
1029
+ I
1030
+ 74
1031
+ I
1032
+ 38
1033
+ I
1034
+ 7a
1035
+ I
1036
+ 3a
1037
+ I
1038
+ 7e
1039
+ I
1040
+ 3d
1041
+ I
1042
+ 85
1043
+ I
1044
+ 3e
1045
+ I
1046
+ 8f
1047
+ I
1048
+ 3f
1049
+ I
1050
+ 93
1051
+ I
1052
+ 3d
1053
+ I
1054
+ 95
1055
+ I
1056
+ 42
1057
+ I
1058
+ a2
1059
+ I
1060
+ 43
1061
+ I
1062
+ ae
1063
+ I
1064
+ 44
1065
+ I
1066
+ b4
1067
+ I
1068
+ 46
1069
+ I
1070
+ b8
1071
+ x
1072
+ 51
1073
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
1074
+ p
1075
+ 10
1076
+ x
1077
+ 4
1078
+ exec
1079
+ x
1080
+ 8
1081
+ start_ip
1082
+ x
1083
+ 6
1084
+ fin_ip
1085
+ x
1086
+ 3
1087
+ ips
1088
+ x
1089
+ 2
1090
+ ip
1091
+ x
1092
+ 3
1093
+ one
1094
+ x
1095
+ 3
1096
+ two
1097
+ x
1098
+ 3
1099
+ bp1
1100
+ x
1101
+ 3
1102
+ bp2
1103
+ x
1104
+ 2
1105
+ bp
1106
+ x
1107
+ 12
1108
+ step_over_by
1109
+ M
1110
+ 1
1111
+ n
1112
+ n
1113
+ x
1114
+ 12
1115
+ step_over_by
1116
+ i
1117
+ 75
1118
+ 5
1119
+ 48
1120
+ 0
1121
+ 19
1122
+ 1
1123
+ 15
1124
+ 77
1125
+ 19
1126
+ 2
1127
+ 15
1128
+ 20
1129
+ 1
1130
+ 49
1131
+ 1
1132
+ 0
1133
+ 19
1134
+ 3
1135
+ 15
1136
+ 20
1137
+ 1
1138
+ 49
1139
+ 2
1140
+ 0
1141
+ 20
1142
+ 0
1143
+ 81
1144
+ 3
1145
+ 19
1146
+ 4
1147
+ 15
1148
+ 20
1149
+ 3
1150
+ 20
1151
+ 4
1152
+ 20
1153
+ 1
1154
+ 49
1155
+ 4
1156
+ 0
1157
+ 49
1158
+ 5
1159
+ 2
1160
+ 19
1161
+ 5
1162
+ 15
1163
+ 20
1164
+ 5
1165
+ 77
1166
+ 83
1167
+ 6
1168
+ 9
1169
+ 58
1170
+ 5
1171
+ 48
1172
+ 7
1173
+ 11
1174
+ 8
1175
+ 59
1176
+ 1
1177
+ 15
1178
+ 5
1179
+ 20
1180
+ 3
1181
+ 20
1182
+ 1
1183
+ 49
1184
+ 4
1185
+ 0
1186
+ 20
1187
+ 5
1188
+ 47
1189
+ 49
1190
+ 8
1191
+ 3
1192
+ 11
1193
+ I
1194
+ a
1195
+ I
1196
+ 6
1197
+ I
1198
+ 1
1199
+ I
1200
+ 1
1201
+ n
1202
+ p
1203
+ 9
1204
+ x
1205
+ 13
1206
+ current_frame
1207
+ x
1208
+ 6
1209
+ method
1210
+ x
1211
+ 4
1212
+ line
1213
+ x
1214
+ 1
1215
+ +
1216
+ x
1217
+ 2
1218
+ ip
1219
+ x
1220
+ 16
1221
+ first_ip_on_line
1222
+ x
1223
+ 2
1224
+ ==
1225
+ x
1226
+ 14
1227
+ step_to_parent
1228
+ x
1229
+ 23
1230
+ set_breakpoints_between
1231
+ p
1232
+ 21
1233
+ I
1234
+ -1
1235
+ I
1236
+ 49
1237
+ I
1238
+ 0
1239
+ I
1240
+ 4a
1241
+ I
1242
+ 6
1243
+ I
1244
+ 4c
1245
+ I
1246
+ a
1247
+ I
1248
+ 4e
1249
+ I
1250
+ 12
1251
+ I
1252
+ 4f
1253
+ I
1254
+ 1e
1255
+ I
1256
+ 50
1257
+ I
1258
+ 2d
1259
+ I
1260
+ 52
1261
+ I
1262
+ 34
1263
+ I
1264
+ 53
1265
+ I
1266
+ 3a
1267
+ I
1268
+ 52
1269
+ I
1270
+ 3c
1271
+ I
1272
+ 56
1273
+ I
1274
+ 4b
1275
+ x
1276
+ 51
1277
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
1278
+ p
1279
+ 6
1280
+ x
1281
+ 4
1282
+ step
1283
+ x
1284
+ 1
1285
+ f
1286
+ x
1287
+ 2
1288
+ ip
1289
+ x
1290
+ 4
1291
+ exec
1292
+ x
1293
+ 13
1294
+ possible_line
1295
+ x
1296
+ 6
1297
+ fin_ip
1298
+ x
1299
+ 14
1300
+ step_to_parent
1301
+ M
1302
+ 1
1303
+ n
1304
+ n
1305
+ x
1306
+ 14
1307
+ step_to_parent
1308
+ i
1309
+ 92
1310
+ 5
1311
+ 5
1312
+ 48
1313
+ 0
1314
+ 49
1315
+ 1
1316
+ 0
1317
+ 79
1318
+ 81
1319
+ 2
1320
+ 47
1321
+ 49
1322
+ 3
1323
+ 1
1324
+ 19
1325
+ 0
1326
+ 15
1327
+ 20
1328
+ 0
1329
+ 9
1330
+ 24
1331
+ 1
1332
+ 8
1333
+ 36
1334
+ 45
1335
+ 4
1336
+ 5
1337
+ 7
1338
+ 6
1339
+ 64
1340
+ 49
1341
+ 7
1342
+ 1
1343
+ 15
1344
+ 1
1345
+ 11
1346
+ 15
1347
+ 20
1348
+ 0
1349
+ 49
1350
+ 8
1351
+ 0
1352
+ 19
1353
+ 1
1354
+ 15
1355
+ 20
1356
+ 0
1357
+ 49
1358
+ 9
1359
+ 0
1360
+ 19
1361
+ 2
1362
+ 15
1363
+ 45
1364
+ 10
1365
+ 11
1366
+ 20
1367
+ 1
1368
+ 20
1369
+ 2
1370
+ 7
1371
+ 12
1372
+ 7
1373
+ 13
1374
+ 64
1375
+ 49
1376
+ 14
1377
+ 4
1378
+ 19
1379
+ 3
1380
+ 15
1381
+ 20
1382
+ 3
1383
+ 20
1384
+ 0
1385
+ 49
1386
+ 15
1387
+ 0
1388
+ 49
1389
+ 16
1390
+ 1
1391
+ 15
1392
+ 20
1393
+ 3
1394
+ 49
1395
+ 17
1396
+ 0
1397
+ 15
1398
+ 20
1399
+ 3
1400
+ 11
1401
+ 11
1402
+ I
1403
+ 9
1404
+ I
1405
+ 4
1406
+ I
1407
+ 0
1408
+ I
1409
+ 0
1410
+ n
1411
+ p
1412
+ 18
1413
+ x
1414
+ 13
1415
+ current_frame
1416
+ x
1417
+ 6
1418
+ number
1419
+ x
1420
+ 1
1421
+ +
1422
+ x
1423
+ 5
1424
+ frame
1425
+ x
1426
+ 6
1427
+ STDERR
1428
+ n
1429
+ s
1430
+ 36
1431
+ Unable to find frame to step to next
1432
+ x
1433
+ 4
1434
+ puts
1435
+ x
1436
+ 6
1437
+ method
1438
+ x
1439
+ 2
1440
+ ip
1441
+ x
1442
+ 10
1443
+ BreakPoint
1444
+ n
1445
+ x
1446
+ 4
1447
+ anon
1448
+ s
1449
+ 6
1450
+ return
1451
+ x
1452
+ 6
1453
+ for_ip
1454
+ x
1455
+ 9
1456
+ variables
1457
+ x
1458
+ 9
1459
+ for_step!
1460
+ x
1461
+ 8
1462
+ activate
1463
+ p
1464
+ 23
1465
+ I
1466
+ -1
1467
+ I
1468
+ 59
1469
+ I
1470
+ 0
1471
+ I
1472
+ 5a
1473
+ I
1474
+ 11
1475
+ I
1476
+ 5b
1477
+ I
1478
+ 18
1479
+ I
1480
+ 5c
1481
+ I
1482
+ 22
1483
+ I
1484
+ 5d
1485
+ I
1486
+ 25
1487
+ I
1488
+ 60
1489
+ I
1490
+ 2d
1491
+ I
1492
+ 61
1493
+ I
1494
+ 35
1495
+ I
1496
+ 63
1497
+ I
1498
+ 47
1499
+ I
1500
+ 64
1501
+ I
1502
+ 52
1503
+ I
1504
+ 65
1505
+ I
1506
+ 58
1507
+ I
1508
+ 67
1509
+ I
1510
+ 5c
1511
+ x
1512
+ 51
1513
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
1514
+ p
1515
+ 4
1516
+ x
1517
+ 1
1518
+ f
1519
+ x
1520
+ 4
1521
+ exec
1522
+ x
1523
+ 2
1524
+ ip
1525
+ x
1526
+ 2
1527
+ bp
1528
+ p
1529
+ 11
1530
+ I
1531
+ 2
1532
+ I
1533
+ 5
1534
+ I
1535
+ 10
1536
+ I
1537
+ 1e
1538
+ I
1539
+ 1e
1540
+ I
1541
+ 28
1542
+ I
1543
+ 2c
1544
+ I
1545
+ 49
1546
+ I
1547
+ 3a
1548
+ I
1549
+ 59
1550
+ I
1551
+ 48
1552
+ x
1553
+ 51
1554
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
1555
+ p
1556
+ 0
1557
+ x
1558
+ 13
1559
+ attach_method
1560
+ p
1561
+ 7
1562
+ I
1563
+ 0
1564
+ I
1565
+ 1
1566
+ I
1567
+ 12
1568
+ I
1569
+ 2
1570
+ I
1571
+ 1b
1572
+ I
1573
+ 4
1574
+ I
1575
+ 3a
1576
+ x
1577
+ 51
1578
+ /home/rocky-rvm/.rvm/src/rbx-tracer/app/stepping.rb
1579
+ p
1580
+ 0