Skip to content

Instantly share code, notes, and snippets.

@mooreatv
Created June 6, 2019 19:06
Show Gist options
  • Save mooreatv/888bf2bdfbaa8bf009fd7f3bcf058212 to your computer and use it in GitHub Desktop.
Save mooreatv/888bf2bdfbaa8bf009fd7f3bcf058212 to your computer and use it in GitHub Desktop.
luac5.1.exe -l -p format.lua
main <format.lua:0,0> (3 instructions, 12 bytes at 00000000007C6300)
0+ params, 2 slots, 0 upvalues, 0 locals, 1 constant, 1 function
1 [17] CLOSURE 0 0 ; 00000000007C8700
2 [4] SETGLOBAL 0 -1 ; fmt
3 [17] RETURN 0 1
function <format.lua:4,17> (42 instructions, 168 bytes at 00000000007C8700)
2+ params, 12 slots, 0 upvalues, 6 locals, 12 constants, 0 functions
1 [5] GETGLOBAL 3 -1 ; string
2 [5] GETTABLE 3 3 -2 ; "find"
3 [5] MOVE 4 0
4 [5] LOADK 5 -3 ; "%%"
5 [5] CALL 3 3 2
6 [6] TEST 3 0 1
7 [6] JMP 1 ; to 9
8 [7] RETURN 0 2
9 [9] GETGLOBAL 4 -4 ; type
10 [9] MOVE 5 1
11 [9] CALL 4 2 2
12 [10] LOADK 5 -5 ; ""
13 [11] EQ 0 4 -1 ; - "string"
14 [11] JMP 6 ; to 21
15 [12] GETGLOBAL 6 -6 ; format
16 [12] LOADK 7 -7 ; "%q"
17 [12] MOVE 8 1
18 [12] CALL 6 3 2
19 [12] MOVE 5 6
20 [12] JMP 4 ; to 25
21 [14] GETGLOBAL 6 -8 ; tostring
22 [14] MOVE 7 1
23 [14] CALL 6 2 2
24 [14] MOVE 5 6
25 [16] GETGLOBAL 6 -1 ; string
26 [16] GETTABLE 6 6 -9 ; "sub"
27 [16] MOVE 7 0
28 [16] LOADK 8 -10 ; 0
29 [16] SUB 9 3 -11 ; - 1
30 [16] CALL 6 4 2
31 [16] MOVE 7 5
32 [16] GETGLOBAL 8 -12 ; fmt
33 [16] GETGLOBAL 9 -1 ; string
34 [16] GETTABLE 9 9 -9 ; "sub"
35 [16] MOVE 10 0
36 [16] ADD 11 3 -11 ; - 1
37 [16] CALL 9 3 2
38 [16] VARARG 10 0
39 [16] CALL 8 0 2
40 [16] CONCAT 6 6 8
41 [16] RETURN 6 2
42 [17] RETURN 0 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment