Skip to content

Instantly share code, notes, and snippets.

@suma
Created April 24, 2016 05:31
Show Gist options
  • Save suma/5e99f63ed624aa016b7dee451bc02e58 to your computer and use it in GitHub Desktop.
Save suma/5e99f63ed624aa016b7dee451bc02e58 to your computer and use it in GitHub Desktop.
testing bytecode interpreter
suma@sumac'0[pyvm]$ ./main mytest.pyc [master ~/Dropbox/devs/pyvm][E:0]
2016-04-24T14:29:50.644:vm.d:this:50 content.length = 231
2016-04-24T14:29:50.644:vm.d:parse:67 Parsing "mytest.pyc"...
2016-04-24T14:29:50.644:vm.d:parse:71 Valid compiled python file (2.7)
2016-04-24T14:29:50.645:vm.d:parse:76 File created: 2012-07-17T03:46:58 (timestamp: 1342464418)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 'c' (99)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 's' (115)
2016-04-24T14:29:50.645:vm.d:readObject:109 string: ddlZdZdZeGdGeGdGeeGHdGej�GHdS
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = '(' (40)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 'i' (105)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 'N' (78)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 'i' (105)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 'i' (105)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 't' (116)
2016-04-24T14:29:50.645:vm.d:readObject:109 string: *
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 't' (116)
2016-04-24T14:29:50.645:vm.d:readObject:109 string: =
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 's' (115)
2016-04-24T14:29:50.645:vm.d:readObject:109 string: Unix time?
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = '(' (40)
2016-04-24T14:29:50.645:vm.d:readObject:88 Token = 't' (116)
2016-04-24T14:29:50.646:vm.d:readObject:109 string: time
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = 't' (116)
2016-04-24T14:29:50.646:vm.d:readObject:109 string: a
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = 't' (116)
2016-04-24T14:29:50.646:vm.d:readObject:109 string: b
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = '(' (40)
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = '(' (40)
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = '(' (40)
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = 's' (115)
2016-04-24T14:29:50.646:vm.d:readObject:109 string: mytest.py
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = 't' (116)
2016-04-24T14:29:50.646:vm.d:readObject:109 string: <module>
2016-04-24T14:29:50.646:vm.d:readObject:88 Token = 's' (115)
2016-04-24T14:29:50.646:vm.d:readObject:109 string:
2016-04-24T14:29:50.646:vm.d:parse:81 Parsing finished
2016-04-24T14:29:50.646:vm.d:run:144 Running...
2016-04-24T14:29:50.646:vm.d:run:146 Stack size = 2
2016-04-24T14:29:50.646:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Load const: 4294967295 (pushing on stack)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Load const: None (pushing on stack)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (108)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Import name (time = <module time>, pushed on stack)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (90)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Store name: time = <module time>
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Load const: 5 (pushing on stack)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (90)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Store name: a = 5
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Load const: 10 (pushing on stack)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Opcode (90)
2016-04-24T14:29:50.647:pycode.d:dlog:112 mytest.py/<module>: Store name: b = 10
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (101)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Load const: * (pushing on stack)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (101)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Load const: = (pushing on stack)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (101)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (101)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (20)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Beggining math operation
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Operation finished: 5 [20] 10 = 50
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.648:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (72)
5 * 10 = None
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Print newline
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Load const: Unix time? (pushing on stack)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (101)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (106)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (131)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (71)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Print item
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (72)
Unix time? <module time>
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Print newline
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (100)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Load const: None (pushing on stack)
2016-04-24T14:29:50.649:pycode.d:dlog:112 mytest.py/<module>: Opcode (83)
2016-04-24T14:29:50.649:pycode.d:log:117 mytest.py/<module>: End of code reached
2016-04-24T14:29:50.649:vm.d:run:150 Running finished (30 instructions ran)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment