-
Notifications
You must be signed in to change notification settings - Fork 4
/
dis
446 lines (446 loc) · 19.8 KB
/
dis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
1 >> 0 SETUP_EXCEPT 982 (to 985)
>> 3 LOAD_CONST 0 (<built-in function push_return_addr>)
6 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
9 POP_TOP
10 JUMP_ABSOLUTE 172
13 DUP_TOP
14 DUP_TOP
15 LOAD_CONST 0 (<built-in function push_return_addr>)
18 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
21 POP_TOP
22 JUMP_ABSOLUTE 244
25 DUP_TOP
26 LOAD_CONST 1 (None)
29 COMPARE_OP 8 (is)
32 POP_JUMP_IF_TRUE 87
35 ROT_THREE
36 POP_TOP
37 POP_TOP
38 DUP_TOP
39 LOAD_ATTR 0 (addr)
42 LOAD_CONST 2 (True)
45 BINARY_SUBTRACT
46 LOAD_FAST 0 (immediate)
49 POP_JUMP_IF_TRUE 72
52 ROT_TWO
53 LOAD_ATTR 2 (immediate)
56 POP_JUMP_IF_TRUE 74
59 LOAD_CONST 0 (<built-in function push_return_addr>)
62 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
65 POP_TOP
66 JUMP_ABSOLUTE 218
69 JUMP_ABSOLUTE 3
>> 72 ROT_TWO
73 POP_TOP
>> 74 LOAD_CONST 0 (<built-in function push_return_addr>)
77 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
80 POP_TOP
81 YIELD_VALUE
82 NOP
83 NOP
84 JUMP_ABSOLUTE 3
>> 87 POP_TOP
88 LOAD_CONST 3 (<function process_lit at 0x7f05c8228620>)
91 ROT_TWO
92 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
95 DUP_TOP
96 LOAD_CONST 4 (NotImplemented)
99 COMPARE_OP 8 (is)
102 POP_JUMP_IF_TRUE 145
105 ROT_TWO
106 POP_TOP
107 LOAD_FAST 0 (immediate)
110 POP_JUMP_IF_TRUE 3
113 LOAD_CONST 5 (<built-in function append_lit>)
116 ROT_TWO
117 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
120 LOAD_CONST 6 (<built-in function comma_impl>)
123 LOAD_CONST 7 (155)
126 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
129 STORE_FAST 1 (here)
132 LOAD_CONST 6 (<built-in function comma_impl>)
135 ROT_TWO
136 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
139 STORE_FAST 1 (here)
142 JUMP_ABSOLUTE 3
>> 145 POP_TOP
146 LOAD_CONST 8 (<class 'phorth.code.UnknownWord'>)
149 ROT_TWO
150 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
153 RAISE_VARARGS 1
156 LOAD_CONST 9 (<built-in function lit_impl>)
159 LOAD_CONST 10 (<built-in function pop_return_addr>)
162 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
165 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
168 UNPACK_SEQUENCE 2
171 YIELD_VALUE
>> 172 LOAD_CONST 11 (functools.partial(<built-in function next>, <generator object make_word_impl.<locals>.read_words at 0x7f05c8223db0>))
175 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
178 JUMP_ABSOLUTE 181
>> 181 LOAD_CONST 10 (<built-in function pop_return_addr>)
184 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
187 YIELD_VALUE
>> 188 DUP_TOP
189 LOAD_CONST 12 (<class 'phorth.Word'>)
192 LOAD_CONST 13 (<built-in function isinstance>)
195 ROT_THREE
196 CALL_FUNCTION 2 (2 positional, 0 keyword pair)
199 POP_JUMP_IF_FALSE 208
202 LOAD_ATTR 0 (addr)
205 JUMP_ABSOLUTE 181
>> 208 LOAD_CONST 14 (<class 'phorth.code.NotAWord'>)
211 ROT_TWO
212 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
215 RAISE_VARARGS 1
>> 218 LOAD_CONST 6 (<built-in function comma_impl>)
221 ROT_TWO
222 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
225 STORE_FAST 1 (here)
228 JUMP_ABSOLUTE 181
>> 231 LOAD_CONST 15 (<built-in function bcomma_impl>)
234 ROT_TWO
235 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
238 STORE_FAST 1 (here)
241 JUMP_ABSOLUTE 181
>> 244 LOAD_CONST 16 (<built-in function find_impl>)
247 ROT_TWO
248 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
251 JUMP_ABSOLUTE 181
254 LOAD_CONST 17 (<built-in function docol_impl>)
257 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
260 YIELD_VALUE
261 LOAD_CONST 18 (<function dis at 0x7f05ce428378>)
264 LOAD_CONST 19 (<built-in function _getframe>)
267 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
270 LOAD_ATTR 1 (f_code)
273 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
276 POP_TOP
277 JUMP_ABSOLUTE 181
280 LOAD_CONST 20 (<toolz.functoolz.Compose object at 0x7f05c81cd978>)
283 LOAD_CONST 21 (<built-in function globals>)
286 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
289 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
292 POP_TOP
293 JUMP_ABSOLUTE 181
>> 296 LOAD_CONST 22 (<built-in function create_impl>)
299 ROT_TWO
300 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
303 STORE_FAST 2 (latest)
306 JUMP_ABSOLUTE 181
>> 309 LOAD_CONST 23 (False)
312 STORE_FAST 0 (immediate)
315 JUMP_ABSOLUTE 181
>> 318 LOAD_CONST 2 (True)
321 STORE_FAST 0 (immediate)
324 JUMP_ABSOLUTE 181
327 LOAD_CONST 0 (<built-in function push_return_addr>)
330 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
333 POP_TOP
334 JUMP_ABSOLUTE 172
337 DUP_TOP
338 LOAD_CONST 0 (<built-in function push_return_addr>)
341 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
344 POP_TOP
345 JUMP_ABSOLUTE 244
348 DUP_TOP
349 LOAD_CONST 1 (None)
352 COMPARE_OP 8 (is)
355 POP_JUMP_IF_TRUE 381
358 ROT_TWO
359 POP_TOP
360 LOAD_CONST 0 (<built-in function push_return_addr>)
363 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
366 POP_TOP
367 JUMP_ABSOLUTE 188
370 JUMP_ABSOLUTE 181
373 POP_JUMP_IF_TRUE 381
376 ROT_TWO
377 POP_TOP
378 JUMP_ABSOLUTE 181
>> 381 POP_TOP
382 LOAD_CONST 8 (<class 'phorth.code.UnknownWord'>)
385 ROT_TWO
386 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
389 RAISE_VARARGS 1
392 LOAD_CONST 24 (<built-in function read_impl>)
395 ROT_TWO
396 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
399 JUMP_ABSOLUTE 181
402 LOAD_CONST 25 (<built-in function bread_impl>)
405 ROT_TWO
406 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
409 JUMP_ABSOLUTE 181
412 LOAD_CONST 26 (<built-in function write_impl>)
415 ROT_THREE
416 CALL_FUNCTION 2 (2 positional, 0 keyword pair)
419 POP_TOP
420 JUMP_ABSOLUTE 181
423 LOAD_CONST 27 (<built-in function bwrite_impl>)
426 ROT_THREE
427 CALL_FUNCTION 2 (2 positional, 0 keyword pair)
430 POP_TOP
431 JUMP_ABSOLUTE 181
434 ROT_TWO
435 DUP_TOP
436 ROT_THREE
437 JUMP_ABSOLUTE 181
>> 440 LOAD_CONST 28 (<built-in function branch_impl>)
443 ROT_TWO
444 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
447 YIELD_VALUE
448 LOAD_CONST 23 (False)
451 COMPARE_OP 2 (==)
454 POP_JUMP_IF_TRUE 440
457 YIELD_VALUE
458 LOAD_CONST 1 (None)
461 YIELD_VALUE
462 LOAD_CONST 29 (<built-in function print_stack_impl>)
465 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
468 POP_TOP
469 JUMP_ABSOLUTE 181
472 LOAD_CONST 30 (<built-in function divmod>)
475 ROT_THREE
476 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
479 JUMP_ABSOLUTE 181
482 LOAD_CONST 31 (Done())
485 RAISE_VARARGS 1
488 ROT_TWO
489 POP_TOP
490 JUMP_ABSOLUTE 181
493 LOAD_CONST 1 (None)
496 JUMP_ABSOLUTE 181
499 COMPARE_OP 2 (==)
502 JUMP_ABSOLUTE 181
505 COMPARE_OP 1 (<=)
508 JUMP_ABSOLUTE 181
511 BINARY_MULTIPLY
512 JUMP_ABSOLUTE 181
515 PRINT_EXPR
516 JUMP_ABSOLUTE 181
519 BINARY_ADD
520 JUMP_ABSOLUTE 181
523 BINARY_SUBTRACT
524 JUMP_ABSOLUTE 181
527 ROT_TWO
528 JUMP_ABSOLUTE 181
531 BINARY_LSHIFT
532 JUMP_ABSOLUTE 181
535 LOAD_FAST 3 (cstack)
538 JUMP_ABSOLUTE 181
541 BINARY_XOR
542 JUMP_ABSOLUTE 181
545 DUP_TOP
546 JUMP_ABSOLUTE 181
549 COMPARE_OP 0 (<)
552 JUMP_ABSOLUTE 181
555 BINARY_POWER
556 JUMP_ABSOLUTE 181
559 LOAD_CONST 2 (True)
562 JUMP_ABSOLUTE 181
565 BINARY_MODULO
566 JUMP_ABSOLUTE 181
569 BINARY_AND
570 JUMP_ABSOLUTE 181
573 LOAD_CONST 23 (False)
576 JUMP_ABSOLUTE 181
579 NOP
580 JUMP_ABSOLUTE 181
583 COMPARE_OP 5 (>=)
586 JUMP_ABSOLUTE 181
589 DUP_TOP_TWO
590 JUMP_ABSOLUTE 181
593 POP_TOP
594 JUMP_ABSOLUTE 181
597 COMPARE_OP 3 (!=)
600 JUMP_ABSOLUTE 181
603 LOAD_FAST 1 (here)
606 JUMP_ABSOLUTE 181
609 ROT_THREE
610 JUMP_ABSOLUTE 181
613 BINARY_RSHIFT
614 JUMP_ABSOLUTE 181
617 BINARY_OR
618 JUMP_ABSOLUTE 181
621 LOAD_FAST 2 (latest)
624 JUMP_ABSOLUTE 181
627 COMPARE_OP 4 (>)
630 JUMP_ABSOLUTE 181
633 BINARY_TRUE_DIVIDE
634 JUMP_ABSOLUTE 181
637 BINARY_MATRIX_MULTIPLY
638 JUMP_ABSOLUTE 181
641 LOAD_CONST 0 (<built-in function push_return_addr>)
644 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
647 POP_TOP
648 JUMP_ABSOLUTE 172
651 LOAD_CONST 0 (<built-in function push_return_addr>)
654 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
657 POP_TOP
658 JUMP_ABSOLUTE 296
661 LOAD_CONST 32 (100)
664 LOAD_CONST 0 (<built-in function push_return_addr>)
667 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
670 POP_TOP
671 JUMP_ABSOLUTE 231
674 LOAD_CONST 23 (False)
677 LOAD_CONST 0 (<built-in function push_return_addr>)
680 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
683 POP_TOP
684 JUMP_ABSOLUTE 218
687 LOAD_CONST 33 (131)
690 LOAD_CONST 0 (<built-in function push_return_addr>)
693 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
696 POP_TOP
697 JUMP_ABSOLUTE 231
700 LOAD_CONST 23 (False)
703 LOAD_CONST 0 (<built-in function push_return_addr>)
706 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
709 POP_TOP
710 JUMP_ABSOLUTE 218
713 LOAD_CONST 2 (True)
716 LOAD_CONST 0 (<built-in function push_return_addr>)
719 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
722 POP_TOP
723 JUMP_ABSOLUTE 231
726 LOAD_CONST 34 (113)
729 LOAD_CONST 0 (<built-in function push_return_addr>)
732 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
735 POP_TOP
736 JUMP_ABSOLUTE 231
739 LOAD_CONST 35 (254)
742 LOAD_CONST 0 (<built-in function push_return_addr>)
745 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
748 POP_TOP
749 JUMP_ABSOLUTE 218
752 LOAD_CONST 0 (<built-in function push_return_addr>)
755 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
758 POP_TOP
759 JUMP_ABSOLUTE 309
762 JUMP_ABSOLUTE 181
765 LOAD_CONST 36 (<function license_impl at 0x7f05c8228840>)
768 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
771 POP_TOP
772 JUMP_ABSOLUTE 181
775 LOAD_CONST 10 (<built-in function pop_return_addr>)
778 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
781 POP_TOP
782 JUMP_ABSOLUTE 181
785 LOAD_CONST 37 (774)
788 LOAD_CONST 0 (<built-in function push_return_addr>)
791 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
794 POP_TOP
795 JUMP_ABSOLUTE 218
798 LOAD_CONST 0 (<built-in function push_return_addr>)
801 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
804 POP_TOP
805 JUMP_ABSOLUTE 318
808 JUMP_ABSOLUTE 181
811 LOAD_CONST 2 (True)
814 LOAD_FAST 2 (latest)
817 STORE_ATTR 2 (immediate)
820 JUMP_ABSOLUTE 181
>> 823 LOAD_CONST 38 (')')
826 LOAD_CONST 11 (functools.partial(<built-in function next>, <generator object make_word_impl.<locals>.read_words at 0x7f05c8223db0>))
829 CALL_FUNCTION 0 (0 positional, 0 keyword pair)
832 COMPARE_OP 2 (==)
835 POP_JUMP_IF_FALSE 823
838 JUMP_ABSOLUTE 181
841 LOAD_CONST 39 (<built-in function __import__>)
844 ROT_TWO
845 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
848 JUMP_ABSOLUTE 181
851 LOAD_CONST 40 (<built-in function getattr>)
854 ROT_THREE
855 CALL_FUNCTION 2 (2 positional, 0 keyword pair)
858 JUMP_ABSOLUTE 181
861 DUP_TOP
862 LOAD_CONST 23 (False)
865 COMPARE_OP 0 (<)
868 POP_JUMP_IF_FALSE 886
871 LOAD_CONST 41 ('nargs must be >= 0; got %s')
874 ROT_TWO
875 BINARY_MODULO
876 LOAD_CONST 42 (<class 'ValueError'>)
879 ROT_TWO
880 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
883 RAISE_VARARGS 1
>> 886 BUILD_LIST 0
889 ROT_THREE
890 ROT_THREE
891 LIST_APPEND 1
894 STORE_FAST 6 (tmp)
>> 897 DUP_TOP
898 LOAD_CONST 23 (False)
901 COMPARE_OP 2 (==)
904 POP_JUMP_IF_TRUE 924
907 LOAD_CONST 2 (True)
910 ROT_TWO
911 BINARY_SUBTRACT
912 LOAD_FAST 6 (tmp)
915 ROT_THREE
916 ROT_THREE
917 LIST_APPEND 1
920 POP_TOP
921 JUMP_ABSOLUTE 897
>> 924 POP_TOP
925 LOAD_CONST 43 (<function py_call_impl at 0x7f05c82287b8>)
928 LOAD_FAST 6 (tmp)
931 CALL_FUNCTION_VAR 0 (0 positional, 0 keyword pair)
934 JUMP_ABSOLUTE 181
937 NOP
938 NOP
939 NOP
940 NOP
941 NOP
942 NOP
943 NOP
944 NOP
945 NOP
946 NOP
947 NOP
948 NOP
949 NOP
950 NOP
951 NOP
952 NOP
953 NOP
954 NOP
955 NOP
956 NOP
957 NOP
958 NOP
959 NOP
960 NOP
961 NOP
962 NOP
963 NOP
964 NOP
965 NOP
966 NOP
967 NOP
968 NOP
969 NOP
970 NOP
971 NOP
972 NOP
973 NOP
974 NOP
975 NOP
976 NOP
977 NOP
978 NOP
979 NOP
980 NOP
981 NOP
982 NOP
983 NOP
984 NOP
>> 985 POP_TOP
986 ROT_TWO
987 POP_TOP
988 LOAD_CONST 44 (<function handle_exception at 0x7f05c82282f0>)
991 ROT_TWO
992 CALL_FUNCTION 1 (1 positional, 0 keyword pair)
995 POP_TOP
996 POP_EXCEPT
997 JUMP_ABSOLUTE 0