Last active
August 29, 2015 13:59
-
-
Save pygy/10608268 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
---- TRACE 10 start t.lua:62 | |
0011 MOV 9 0 | |
0012 TGETS 8 0 3 ; "getint" | |
0000 . . FUNCC ; ffi.meta.__index | |
0013 MOV 10 1 | |
0014 CALL 8 2 3 | |
0000 . FUNCF 6 ; rng.lua:11 | |
0001 . UGET 2 0 ; tonumber | |
0002 . UGET 3 1 ; gsl | |
0003 . TGETS 3 3 0 ; "gsl_rng_uniform_int" | |
0000 . . . FUNCC ; ffi.clib.__index | |
0004 . MOV 4 0 | |
0005 . MOV 5 1 | |
0006 . CALL 3 0 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0007 . CALLMT 2 0 | |
0000 . FUNCC ; tonumber | |
0015 MOV 2 8 | |
0016 UGET 8 0 ; format | |
0017 KSTR 9 4 ; "0x%x" | |
0018 GGET 10 5 ; "tonumber" | |
0019 MOV 11 2 | |
0020 CALL 10 0 2 | |
0000 . FUNCC ; tonumber | |
0021 CALLM 8 2 1 | |
0000 . FUNCC ; string.format | |
0022 GGET 9 5 ; "tonumber" | |
0023 MOV 10 8 | |
0024 CALL 9 2 2 | |
0000 . FUNCC ; tonumber | |
0025 MOV 3 9 | |
0026 FORL 4 => 0011 | |
---- TRACE 10 IR | |
0001 int SLOAD #5 CI | |
0002 > cdt SLOAD #1 T | |
0003 u16 FLOAD 0002 cdata.ctypeid | |
0004 > int EQ 0003 +1934 | |
0005 p64 FLOAD 0002 cdata.ptr | |
0006 > num SLOAD #2 T | |
0007 > p32 UREFC rng.lua:11 #1 | |
0008 > udt ULOAD 0007 | |
0009 > p32 EQ 0008 [0x0af88020] | |
0010 u64 CONV 0006 u64.num | |
0012 u64 CALLXS [0x10b297bbc](0005 0010) | |
0013 } cdt CNEWI +12 0012 | |
0014 + num CONV 0012 num.u64 | |
0015 fun SLOAD #0 R | |
0016 > fun EQ 0015 t.lua:58 | |
0017 tab FLOAD t.lua:58 func.env | |
0018 int FLOAD 0017 tab.hmask | |
0019 > int EQ 0018 +127 | |
0020 p32 FLOAD 0017 tab.node | |
0021 > p32 HREFK 0020 "tonumber" @8 | |
0022 > fun HLOAD 0021 | |
0023 > fun EQ 0022 tonumber | |
0024 p32 BUFHDR [0x0af31414] RESET | |
0025 p32 BUFPUT 0024 "0x" | |
0028 p32 CALLL lj_strfmt_putfnum_uint (0025 +20 0014) | |
0029 str BUFSTR 0028 0024 | |
0030 >+ num STRTO 0029 | |
0031 + int ADD 0001 +1 | |
0032 > int LE 0031 +1000 | |
0033 ------ LOOP ------------ | |
0034 u64 CALLXS [0x10b297bbc](0005 0010) | |
0035 } cdt CNEWI +12 0034 | |
0036 + num CONV 0034 num.u64 | |
0037 p32 BUFHDR [0x0af31414] RESET | |
0038 p32 BUFPUT 0037 "0x" | |
0041 p32 CALLL lj_strfmt_putfnum_uint (0038 +20 0036) | |
0042 str BUFSTR 0041 0037 | |
0043 >+ num STRTO 0042 | |
0044 + int ADD 0031 +1 | |
0045 > int LE 0044 +1000 | |
0046 int PHI 0031 0044 | |
0047 num PHI 0014 0036 | |
0048 num PHI 0030 0043 | |
---- TRACE 10 mcode 619 | |
11679ce02 add rsp, -0x40 | |
11679ce06 mov dword [0x0af31410], 0xa | |
11679ce11 mov edi, [0x0af313d8] | |
11679ce18 cmp edi, [0x0af313dc] | |
11679ce1f jb 0x11679ce38 | |
11679ce21 mov esi, 0x1 | |
11679ce26 mov edi, 0x0af313b8 | |
11679ce2b call 0x10af11060 ->lj_gc_step_jit | |
11679ce30 test eax, eax | |
11679ce32 jnz 0x116790010 ->0 | |
11679ce38 mov edx, [0x0af314b4] | |
11679ce3f cvttsd2si ebp, [rdx+0x20] | |
11679ce44 cmp dword [rdx+0x4], -0x0b | |
11679ce48 jnz 0x116790010 ->0 | |
11679ce4e mov r13d, [rdx] | |
11679ce51 movzx r14d, word [r13+0x6] | |
11679ce56 cmp r14d, 0x78e | |
11679ce5d jnz 0x116790010 ->0 | |
11679ce63 mov rdi, [r13+0x8] | |
11679ce67 mov [rsp+0x38], rdi | |
11679ce6c cmp dword [rdx+0xc], 0xfffeffff | |
11679ce73 jnb 0x116790010 ->0 | |
11679ce79 movsd xmm0, [rdx+0x8] | |
11679ce7e cmp dword [0x0afd526c], -0x0d | |
11679ce86 jnz 0x116790010 ->0 | |
11679ce8c cmp dword [0x0afd5268], 0x0af88020 | |
11679ce97 jnz 0x116790010 ->0 | |
11679ce9d cvttsd2si rsi, xmm0 | |
11679cea2 test rsi, rsi | |
11679cea5 jns 0x11679ceb5 | |
11679cea7 addsd xmm0, [0x0afe4b10] | |
11679ceb0 cvttsd2si rsi, xmm0 | |
11679ceb5 mov [rsp+0x30], rsi | |
11679ceba call 0x10b297bbc | |
11679cebf mov [rsp+0x40], rax | |
11679cec4 mov edx, [0x0af314b4] | |
11679cecb xorps xmm0, xmm0 | |
11679cece cvtsi2sd xmm0, rax | |
11679ced3 test rax, rax | |
11679ced6 jns 0x11679cee1 | |
11679ced8 addsd xmm0, [0x0afe4b08] | |
11679cee1 movsd [rsp+0x10], xmm0 | |
11679cee7 cmp dword [rdx-0x8], 0x0b00e4c8 | |
11679ceee jnz 0x116790014 ->1 | |
11679cef4 mov r12d, [0x0b00e4d0] | |
11679cefc cmp dword [r12+0x1c], +0x7f | |
11679cf02 jnz 0x116790014 ->1 | |
11679cf08 mov ebx, [r12+0x14] | |
11679cf0d mov rdi, 0xfffffffb0af34338 | |
11679cf17 cmp rdi, [rbx+0xc8] | |
11679cf1e jnz 0x116790014 ->1 | |
11679cf24 cmp dword [rbx+0xc4], -0x09 | |
11679cf2b jnz 0x116790014 ->1 | |
11679cf31 cmp dword [rbx+0xc0], 0x0af34310 | |
11679cf3b jnz 0x116790014 ->1 | |
11679cf41 mov edi, 0x0af31414 | |
11679cf46 mov esi, [rdi+0x8] | |
11679cf49 mov [rdi], esi | |
11679cf4b mov esi, 0x0af8c2f8 | |
11679cf50 call 0x10af68a40 ->lj_buf_putstr | |
11679cf55 mov edi, eax | |
11679cf57 movsd xmm0, [rsp+0x10] | |
11679cf5d mov esi, 0x14 | |
11679cf62 call 0x10af69c70 ->lj_strfmt_putfnum_uint | |
11679cf67 mov edi, eax | |
11679cf69 call 0x10af68e30 ->lj_buf_tostr | |
11679cf6e mov edi, eax | |
11679cf70 lea rsi, [rsp+0x8] | |
11679cf75 call 0x10af19470 ->lj_strscan_num | |
11679cf7a test eax, eax | |
11679cf7c jz 0x116790014 ->1 | |
11679cf82 movsd xmm7, [rsp+0x8] | |
11679cf88 movsd xmm6, [rsp+0x10] | |
11679cf8e add ebp, +0x01 | |
11679cf91 cmp ebp, 0x3e8 | |
11679cf97 jg 0x116790018 ->2 | |
->LOOP: | |
11679cf9d movsd [rsp+0x10], xmm6 | |
11679cfa3 movsd [rsp+0x8], xmm7 | |
11679cfa9 mov edi, [0x0af313d8] | |
11679cfb0 cmp edi, [0x0af313dc] | |
11679cfb7 jb 0x11679cfd0 | |
11679cfb9 mov esi, 0x1 | |
11679cfbe mov edi, 0x0af313b8 | |
11679cfc3 call 0x10af11060 ->lj_gc_step_jit | |
11679cfc8 test eax, eax | |
11679cfca jnz 0x11679001c ->3 | |
11679cfd0 mov rdi, [rsp+0x38] | |
11679cfd5 mov rsi, [rsp+0x30] | |
11679cfda call 0x10b297bbc | |
11679cfdf mov [rsp+0x28], rax | |
11679cfe4 xorps xmm0, xmm0 | |
11679cfe7 cvtsi2sd xmm0, rax | |
11679cfec test rax, rax | |
11679cfef jns 0x11679cffa | |
11679cff1 addsd xmm0, [0x0afe4b08] | |
11679cffa movsd [rsp+0x18], xmm0 | |
11679d000 mov edi, 0x0af31414 | |
11679d005 mov esi, [rdi+0x8] | |
11679d008 mov [rdi], esi | |
11679d00a mov esi, 0x0af8c2f8 | |
11679d00f call 0x10af68a40 ->lj_buf_putstr | |
11679d014 mov edi, eax | |
11679d016 movsd xmm0, [rsp+0x18] | |
11679d01c mov esi, 0x14 | |
11679d021 call 0x10af69c70 ->lj_strfmt_putfnum_uint | |
11679d026 mov edi, eax | |
11679d028 call 0x10af68e30 ->lj_buf_tostr | |
11679d02d mov edi, eax | |
11679d02f lea rsi, [rsp+0x20] | |
11679d034 call 0x10af19470 ->lj_strscan_num | |
11679d039 test eax, eax | |
11679d03b jz 0x116790020 ->4 | |
11679d041 movsd xmm7, [rsp+0x20] | |
11679d047 movsd xmm6, [rsp+0x18] | |
11679d04d movsd xmm5, [rsp+0x10] | |
11679d053 movsd xmm4, [rsp+0x8] | |
11679d059 add ebp, +0x01 | |
11679d05c cmp ebp, 0x3e8 | |
11679d062 jle 0x11679cf9d ->LOOP | |
11679d068 jmp 0x116790024 ->5 | |
---- TRACE 10 stop -> loop | |
---- TRACE 11 start rng.lua:32 | |
0010 TGETB 2 1 0 | |
0000 . . FUNCC ; ffi.meta.__index | |
0011 UGET 3 1 ; ffi | |
0012 TGETS 3 3 1 ; "string" | |
0013 TGETS 4 2 2 ; "name" | |
0000 . . FUNCC ; ffi.meta.__index | |
0014 CALL 3 2 2 | |
0000 . FUNCC ; ffi.string | |
0015 ISNEV 3 0 | |
0016 JMP 3 => 0018 | |
0018 ADDVN 1 1 0 ; 1 | |
0000 . . FUNCC ; ffi.meta.__add | |
0019 JMP 2 => 0006 | |
0006 TGETB 2 1 0 | |
0000 . . FUNCC ; ffi.meta.__index | |
0007 ISEQP 2 0 | |
0008 JMP 2 => 0020 | |
0000 . . FUNCC ; ffi.meta.__eq | |
0009 LOOP 2 => 0020 | |
---- TRACE 11 IR | |
0001 > cdt SLOAD #2 T | |
0002 u16 FLOAD 0001 cdata.ctypeid | |
0003 > int EQ 0002 +1929 | |
0004 p64 FLOAD 0001 cdata.ptr | |
0005 p64 XLOAD 0004 | |
0006 } cdt CNEWI +1925 0005 | |
0007 fun SLOAD #0 R | |
0008 > p32 UREFC 0007 #1 | |
0009 > tab ULOAD 0008 | |
0010 int FLOAD 0009 tab.hmask | |
0011 > int EQ 0010 +31 | |
0012 p32 FLOAD 0009 tab.node | |
0013 > p32 HREFK 0012 "string" @27 | |
0014 > fun HLOAD 0013 | |
0015 p64 XLOAD 0005 | |
0017 > fun EQ 0014 ffi.string | |
0018 i64 CALLL strlen (0015) | |
0019 str XSNEW 0015 0018 | |
0020 > str SLOAD #1 T | |
0021 > str NE 0020 0019 | |
0022 + p64 ADD 0004 +8 | |
0023 }+ cdt CNEWI +1929 0022 | |
0024 + p64 XLOAD 0022 | |
0026 > p64 NE 0024 [NULL] | |
0027 ------ LOOP ------------ | |
0028 } cdt CNEWI +1925 0024 | |
0029 p64 XLOAD 0024 | |
0030 i64 CALLL strlen (0029) | |
0031 str XSNEW 0029 0030 | |
0032 > str NE 0031 0020 | |
0033 + p64 ADD 0022 +8 | |
0034 }+ cdt CNEWI +1929 0033 | |
0035 + p64 XLOAD 0033 | |
0036 > p64 NE 0035 [NULL] | |
0037 } cdt PHI 0023 0034 | |
0038 p64 PHI 0022 0033 | |
0039 p64 PHI 0024 0035 | |
---- TRACE 11 mcode 391 | |
11679cc76 add rsp, -0x10 | |
11679cc7a mov dword [0x0af31410], 0xb | |
11679cc85 mov edi, [0x0af313d8] | |
11679cc8c cmp edi, [0x0af313dc] | |
11679cc93 jb 0x11679ccac | |
11679cc95 mov esi, 0x1 | |
11679cc9a mov edi, 0x0af313b8 | |
11679cc9f call 0x10af11060 ->lj_gc_step_jit | |
11679cca4 test eax, eax | |
11679cca6 jnz 0x116790010 ->0 | |
11679ccac mov edx, [0x0af314b4] | |
11679ccb3 cmp dword [rdx+0xc], -0x0b | |
11679ccb7 jnz 0x116790010 ->0 | |
11679ccbd mov eax, [rdx+0x8] | |
11679ccc0 movzx ecx, word [rax+0x6] | |
11679ccc4 cmp ecx, 0x789 | |
11679ccca jnz 0x116790010 ->0 | |
11679ccd0 mov rbx, [rax+0x8] | |
11679ccd4 mov r13, [rbx] | |
11679ccd7 mov eax, [rdx-0x8] | |
11679ccda mov edi, [rax+0x18] | |
11679ccdd cmp byte [rdi+0x6], 0x1 | |
11679cce1 jnz 0x116790010 ->0 | |
11679cce7 lea eax, [rdi+0x8] | |
11679ccea cmp dword [rax+0x4], -0x0c | |
11679ccee jnz 0x116790010 ->0 | |
11679ccf4 mov eax, [rax] | |
11679ccf6 cmp dword [rax+0x1c], +0x1f | |
11679ccfa jnz 0x116790010 ->0 | |
11679cd00 mov r14d, [rax+0x14] | |
11679cd04 mov rdi, 0xfffffffb0af33da8 | |
11679cd0e cmp rdi, [r14+0x290] | |
11679cd15 jnz 0x116790010 ->0 | |
11679cd1b cmp dword [r14+0x28c], -0x09 | |
11679cd23 jnz 0x116790010 ->0 | |
11679cd29 mov rdi, [r13+0x0] | |
11679cd2d mov [rsp+0x10], rdi | |
11679cd32 cmp dword [r14+0x288], 0x0af42630 | |
11679cd3d jnz 0x116790010 ->0 | |
11679cd43 mov rax, 0x00007fff89fe3660 | |
11679cd4d call rax | |
11679cd4f mov rdx, rax | |
11679cd52 mov edi, [0x0af314b0] | |
11679cd59 mov rsi, [rsp+0x10] | |
11679cd5e call 0x10af12b20 ->lj_str_new | |
11679cd63 mov edx, [0x0af314b4] | |
11679cd6a cmp dword [rdx+0x4], -0x05 | |
11679cd6e jnz 0x116790010 ->0 | |
11679cd74 mov r12d, [rdx] | |
11679cd77 cmp eax, r12d | |
11679cd7a jz 0x116790014 ->1 | |
11679cd80 add rbx, +0x08 | |
11679cd84 mov rbp, [rbx] | |
11679cd87 test rbp, rbp | |
11679cd8a jz 0x11679001c ->3 | |
->LOOP: | |
11679cd90 mov edi, [0x0af313d8] | |
11679cd97 cmp edi, [0x0af313dc] | |
11679cd9e jb 0x11679cdb7 | |
11679cda0 mov esi, 0x1 | |
11679cda5 mov edi, 0x0af313b8 | |
11679cdaa call 0x10af11060 ->lj_gc_step_jit | |
11679cdaf test eax, eax | |
11679cdb1 jnz 0x116790020 ->4 | |
11679cdb7 mov rdi, [rbp+0x0] | |
11679cdbb mov [rsp+0x8], rdi | |
11679cdc0 mov rax, 0x00007fff89fe3660 | |
11679cdca call rax | |
11679cdcc mov rdx, rax | |
11679cdcf mov edi, [0x0af314b0] | |
11679cdd6 mov rsi, [rsp+0x8] | |
11679cddb call 0x10af12b20 ->lj_str_new | |
11679cde0 cmp eax, r12d | |
11679cde3 jz 0x116790024 ->5 | |
11679cde9 mov r15, rbx | |
11679cdec add rbx, +0x08 | |
11679cdf0 mov rbp, [rbx] | |
11679cdf3 test rbp, rbp | |
11679cdf6 jnz 0x11679cd90 ->LOOP | |
11679cdf8 jmp 0x11679002c ->7 | |
---- TRACE 11 stop -> loop | |
lua,parse_int,0.133 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
---- TRACE 10 start check.lua:15 | |
0001 UGET 1 0 ; type | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . FUNCC ; type | |
0004 ISEQS 1 0 ; "number" | |
0005 JMP 1 => 0008 | |
0006 KPRI 1 1 | |
0007 JMP 2 => 0009 | |
0009 RET1 1 2 | |
---- TRACE 10 IR | |
0001 fun SLOAD #0 R | |
0002 > fun EQ 0001 check.lua:15 | |
0003 > cdt SLOAD #1 T | |
---- TRACE 10 mcode 87 | |
11721d76a mov dword [0x0b9b1410], 0xa | |
11721d775 cmp dword [rdx-0x8], 0x0ba09568 | |
11721d77c jnz 0x117210010 ->0 | |
11721d782 cmp dword [rdx+0x4], -0x0b | |
11721d786 jnz 0x117210010 ->0 | |
11721d78c mov eax, [0x0b9b14b0] | |
11721d793 mov eax, [rax+0x20] | |
11721d796 sub eax, edx | |
11721d798 cmp eax, +0x18 | |
11721d79b jb 0x117210014 ->1 | |
11721d7a1 mov dword [rdx+0xc], 0xfffffffe | |
11721d7a8 mov dword [rdx-0x8], 0x0ba09568 | |
11721d7af xor eax, eax | |
11721d7b1 mov ebx, 0x0ba0928c | |
11721d7b6 mov r14d, 0x0b9b1f98 | |
11721d7bc jmp 0x10b98feb1 | |
---- TRACE 10 stop -> return | |
---- TRACE 11 start matrix.lua:36 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0006 . KPRI 1 1 | |
0007 . JMP 2 => 0009 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0010 TGETB 1 0 0 | |
0000 . . FUNCC ; ffi.meta.__index | |
0011 TGETB 2 0 1 | |
0000 . . FUNCC ; ffi.meta.__index | |
0012 RET 1 3 | |
---- TRACE 11 IR | |
0001 fun SLOAD #0 R | |
0002 > fun EQ 0001 matrix.lua:36 | |
0003 > cdt SLOAD #1 T | |
0004 u16 FLOAD 0003 cdata.ctypeid | |
0005 > int EQ 0004 +16 | |
0006 p64 ADD 0003 +8 | |
0007 num XLOAD 0006 | |
0008 p64 ADD 0003 +16 | |
0009 num XLOAD 0008 | |
---- TRACE 11 mcode 113 | |
11721d6f2 mov dword [0x0b9b1410], 0xb | |
11721d6fd cmp dword [rdx-0x8], 0x0ba09ce8 | |
11721d704 jnz 0x117210010 ->0 | |
11721d70a cmp dword [rdx+0x4], -0x0b | |
11721d70e jnz 0x117210010 ->0 | |
11721d714 mov ebp, [rdx] | |
11721d716 cmp word [rbp+0x6], +0x10 | |
11721d71b jnz 0x117210010 ->0 | |
11721d721 movsd xmm7, [rbp+0x8] | |
11721d726 movsd xmm6, [rbp+0x10] | |
11721d72b mov eax, [0x0b9b14b0] | |
11721d732 mov eax, [rax+0x20] | |
11721d735 sub eax, edx | |
11721d737 cmp eax, +0x18 | |
11721d73a jb 0x117210014 ->1 | |
11721d740 movsd [rdx+0x10], xmm6 | |
11721d745 movsd [rdx+0x8], xmm7 | |
11721d74a mov dword [rdx-0x8], 0x0ba09ce8 | |
11721d751 xor eax, eax | |
11721d753 mov ebx, 0x0b9c4178 | |
11721d758 mov r14d, 0x0b9b1f98 | |
11721d75e jmp 0x10b98feb1 | |
---- TRACE 11 stop -> return | |
---- TRACE 12 start matrix.lua:23 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0006 . KPRI 1 1 | |
0007 . JMP 2 => 0009 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0010 UGET 1 1 ; ffi | |
0011 TGETS 1 1 0 ; "istype" | |
0012 UGET 2 2 ; gsl_complex | |
0013 MOV 3 0 | |
0014 CALL 1 2 3 | |
0000 . FUNCC ; ffi.istype | |
0015 ISF 1 | |
0016 JMP 2 => 0021 | |
0017 KPRI 1 1 | |
0018 KPRI 2 2 | |
0019 RET 1 3 | |
---- TRACE 12 IR | |
0001 fun SLOAD #0 R | |
0002 > fun EQ 0001 matrix.lua:23 | |
0003 > cdt SLOAD #1 T | |
0004 > p32 UREFC matrix.lua:23 #1 | |
0005 > tab ULOAD 0004 | |
0006 int FLOAD 0005 tab.hmask | |
0007 > int EQ 0006 +31 | |
0008 p32 FLOAD 0005 tab.node | |
0009 > p32 HREFK 0008 "istype" @13 | |
0010 > fun HLOAD 0009 | |
0011 > fun EQ 0010 ffi.istype | |
0012 u16 FLOAD 0003 cdata.ctypeid | |
0013 > int EQ 0012 +16 | |
---- TRACE 12 mcode 193 | |
11721d62a mov dword [0x0b9b1410], 0xc | |
11721d635 cmp dword [rdx-0x8], 0x0b9b9b00 | |
11721d63c jnz 0x117210010 ->0 | |
11721d642 cmp dword [rdx+0x4], -0x0b | |
11721d646 jnz 0x117210010 ->0 | |
11721d64c mov ebp, [rdx] | |
11721d64e cmp dword [0x0ba09c34], -0x0c | |
11721d656 jnz 0x117210010 ->0 | |
11721d65c mov ebx, [0x0ba09c30] | |
11721d663 cmp dword [rbx+0x1c], +0x1f | |
11721d667 jnz 0x117210010 ->0 | |
11721d66d mov ebx, [rbx+0x14] | |
11721d670 mov rdi, 0xfffffffb0b9b28c8 | |
11721d67a cmp rdi, [rbx+0x140] | |
11721d681 jnz 0x117210010 ->0 | |
11721d687 cmp dword [rbx+0x13c], -0x09 | |
11721d68e jnz 0x117210010 ->0 | |
11721d694 cmp dword [rbx+0x138], 0x0b9c2500 | |
11721d69e jnz 0x117210010 ->0 | |
11721d6a4 cmp word [rbp+0x6], +0x10 | |
11721d6a9 jnz 0x117210010 ->0 | |
11721d6af mov eax, [0x0b9b14b0] | |
11721d6b6 mov eax, [rax+0x20] | |
11721d6b9 sub eax, edx | |
11721d6bb cmp eax, +0x20 | |
11721d6be jb 0x117210014 ->1 | |
11721d6c4 mov dword [rdx+0x14], 0xfffffffd | |
11721d6cb mov dword [rdx+0xc], 0xfffffffe | |
11721d6d2 mov dword [rdx-0x8], 0x0b9b9b00 | |
11721d6d9 xor eax, eax | |
11721d6db mov ebx, 0x0b9c366c | |
11721d6e0 mov r14d, 0x0b9b1f98 | |
11721d6e6 jmp 0x10b98feb1 | |
---- TRACE 12 stop -> return | |
---- TRACE 13 start matrix.lua:469 | |
0001 UGET 2 0 ; get_typeid | |
0002 MOV 3 0 | |
0003 CALL 2 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0004 UGET 4 0 ; get_typeid | |
0005 MOV 5 1 | |
0006 CALL 4 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 13 abort t.lua:80 -- NYI: return to lower frame | |
---- TRACE 13 start matrix.lua:469 | |
0001 UGET 2 0 ; get_typeid | |
0002 MOV 3 0 | |
0003 CALL 2 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0004 UGET 4 0 ; get_typeid | |
0005 MOV 5 1 | |
0006 CALL 4 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 13 abort t.lua:80 -- NYI: return to lower frame | |
---- TRACE 13 start t.lua:76 | |
0007 UGET 7 0 ; cabs | |
0008 MOV 8 0 | |
0009 CALL 7 2 2 | |
0000 . FUNCF 6 ; matrix.lua:205 | |
0001 . UGET 1 0 ; cartesian | |
0002 . MOV 2 0 | |
0003 . CALL 1 3 2 | |
0000 . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . UGET 1 0 ; is_real | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . UGET 1 0 ; type | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . FUNCC ; type | |
0004 . . . ISEQS 1 0 ; "number" | |
0005 . . . JMP 1 => 0008 | |
0006 . . . KPRI 1 1 | |
0007 . . . JMP 2 => 0009 | |
0009 . . . RET1 1 2 | |
0004 . . ISF 1 | |
0005 . . JMP 2 => 0010 | |
0010 . . TGETB 1 0 0 | |
0000 . . . . FUNCC ; ffi.meta.__index | |
0011 . . TGETB 2 0 1 | |
0000 . . . . FUNCC ; ffi.meta.__index | |
0012 . . RET 1 3 | |
0004 . UGET 3 1 ; sqrt | |
0005 . MULVV 4 1 1 | |
0006 . MULVV 5 2 2 | |
0007 . ADDVV 4 4 5 | |
0008 . CALLT 3 2 | |
0000 . FUNCC ; math.sqrt | |
0010 KSHORT 8 2 | |
0011 ISGE 8 7 | |
0012 JMP 7 => 0015 | |
0015 MULVV 7 0 0 | |
0000 . . FUNCC ; ffi.meta.__mul | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 7 ; matrix.lua:455 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0011 | |
0003 . . . MULVV 4 0 1 | |
0004 . . . MULVV 5 2 3 | |
0005 . . . SUBVV 4 4 5 | |
0006 . . . MULVV 5 0 3 | |
0007 . . . MULVV 6 2 1 | |
0008 . . . ADDVV 5 5 6 | |
0009 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0016 ADDVV 0 7 1 | |
0000 . . FUNCC ; ffi.meta.__add | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 6 ; matrix.lua:447 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0007 | |
0003 . . . ADDVV 4 0 1 | |
0004 . . . ADDVV 5 2 3 | |
0005 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0017 FORL 3 => 0007 | |
---- TRACE 13 IR | |
0001 > int SLOAD #5 CRI | |
0002 > int LE 0001 +2147483646 | |
0003 int SLOAD #4 CI | |
0004 fun SLOAD #0 R | |
0005 > fun EQ 0004 t.lua:73 | |
0006 > cdt SLOAD #1 T | |
0007 u16 FLOAD 0006 cdata.ctypeid | |
0008 > int EQ 0007 +16 | |
0009 p64 ADD 0006 +8 | |
0010 num XLOAD 0009 | |
0011 p64 ADD 0006 +16 | |
0012 num XLOAD 0011 | |
0013 num MUL 0010 0010 | |
0014 num MUL 0012 0012 | |
0015 num ADD 0014 0013 | |
0016 num FPMATH 0015 sqrt | |
0017 > num ULE 0016 +2 | |
0018 > p32 UREFC matrix.lua:23 #1 | |
0019 > tab ULOAD 0018 | |
0020 int FLOAD 0019 tab.hmask | |
0021 > int EQ 0020 +31 | |
0022 p32 FLOAD 0019 tab.node | |
0023 > p32 HREFK 0022 "istype" @13 | |
0024 > fun HLOAD 0023 | |
0025 > fun EQ 0024 ffi.istype | |
0026 num SUB 0013 0014 | |
0027 num MUL 0012 0010 | |
0028 num ADD 0027 0027 | |
0029 } cdt CNEW +16 | |
0030 p64 ADD 0029 +8 | |
0031 } num XSTORE 0030 0026 | |
0032 p64 ADD 0029 +16 | |
0033 } num XSTORE 0032 0028 | |
0034 > cdt SLOAD #2 T | |
0035 u16 FLOAD 0034 cdata.ctypeid | |
0036 > int EQ 0035 +16 | |
0037 p64 ADD 0034 +8 | |
0038 num XLOAD 0037 | |
0039 p64 ADD 0034 +16 | |
0040 num XLOAD 0039 | |
0041 + num ADD 0038 0026 | |
0042 + num ADD 0040 0028 | |
0043 }+ cdt CNEW +16 | |
0044 p64 ADD 0043 +8 | |
0045 } num XSTORE 0044 0041 | |
0046 p64 ADD 0043 +16 | |
0047 } num XSTORE 0046 0042 | |
0048 + int ADD 0003 +1 | |
0049 > int LE 0048 0001 | |
0050 ------ LOOP ------------ | |
0051 num MUL 0041 0041 | |
0052 num MUL 0042 0042 | |
0053 num ADD 0052 0051 | |
0054 num FPMATH 0053 sqrt | |
0055 > num ULE 0054 +2 | |
0056 num SUB 0051 0052 | |
0057 num MUL 0042 0041 | |
0058 num ADD 0057 0057 | |
0059 } cdt CNEW +16 | |
0060 p64 ADD 0059 +8 | |
0061 } num XSTORE 0060 0056 | |
0062 p64 ADD 0059 +16 | |
0063 } num XSTORE 0062 0058 | |
0064 + num ADD 0056 0038 | |
0065 + num ADD 0058 0040 | |
0066 }+ cdt CNEW +16 | |
0067 p64 ADD 0066 +8 | |
0068 } num XSTORE 0067 0064 | |
0069 p64 ADD 0066 +16 | |
0070 } num XSTORE 0069 0065 | |
0071 + int ADD 0048 +1 | |
0072 > int LE 0071 0001 | |
0073 int PHI 0048 0071 | |
0074 } cdt PHI 0043 0066 | |
0075 num PHI 0041 0064 | |
0076 num PHI 0042 0065 | |
---- TRACE 13 mcode 380 | |
11721d4a7 mov dword [0x0b9b1410], 0xd | |
11721d4b2 movsd xmm2, [0x0ba64ab0] | |
11721d4bb movsd xmm7, [rdx+0x20] | |
11721d4c0 cvttsd2si eax, xmm7 | |
11721d4c4 xorps xmm6, xmm6 | |
11721d4c7 cvtsi2sd xmm6, eax | |
11721d4cb ucomisd xmm7, xmm6 | |
11721d4cf jnz 0x117210010 ->0 | |
11721d4d5 jpe 0x117210010 ->0 | |
11721d4db cmp eax, 0x7ffffffe | |
11721d4e1 jg 0x117210010 ->0 | |
11721d4e7 cvttsd2si ebp, [rdx+0x18] | |
11721d4ec cmp dword [rdx-0x8], 0x0bac9148 | |
11721d4f3 jnz 0x117210010 ->0 | |
11721d4f9 cmp dword [rdx+0x4], -0x0b | |
11721d4fd jnz 0x117210010 ->0 | |
11721d503 mov r8d, [rdx] | |
11721d506 cmp word [r8+0x6], +0x10 | |
11721d50c jnz 0x117210010 ->0 | |
11721d512 movsd xmm7, [r8+0x8] | |
11721d518 movsd xmm8, [r8+0x10] | |
11721d51e movaps xmm6, xmm7 | |
11721d521 mulsd xmm6, xmm6 | |
11721d525 movaps xmm9, xmm8 | |
11721d529 mulsd xmm9, xmm9 | |
11721d52e movaps xmm11, xmm9 | |
11721d532 addsd xmm11, xmm6 | |
11721d537 sqrtsd xmm10, xmm11 | |
11721d53c ucomisd xmm10, xmm2 | |
11721d541 ja 0x117210014 ->1 | |
11721d547 cmp dword [0x0ba09c34], -0x0c | |
11721d54f jnz 0x117210018 ->2 | |
11721d555 mov esi, [0x0ba09c30] | |
11721d55c cmp dword [rsi+0x1c], +0x1f | |
11721d560 jnz 0x117210018 ->2 | |
11721d566 mov ebx, [rsi+0x14] | |
11721d569 mov rdi, 0xfffffffb0b9b28c8 | |
11721d573 cmp rdi, [rbx+0x140] | |
11721d57a jnz 0x117210018 ->2 | |
11721d580 cmp dword [rbx+0x13c], -0x09 | |
11721d587 jnz 0x117210018 ->2 | |
11721d58d cmp dword [rbx+0x138], 0x0b9c2500 | |
11721d597 jnz 0x117210018 ->2 | |
11721d59d subsd xmm6, xmm9 | |
11721d5a2 mulsd xmm7, xmm8 | |
11721d5a7 addsd xmm7, xmm7 | |
11721d5ab cmp dword [rdx+0xc], -0x0b | |
11721d5af jnz 0x117210018 ->2 | |
11721d5b5 mov ecx, [rdx+0x8] | |
11721d5b8 cmp word [rcx+0x6], +0x10 | |
11721d5bd jnz 0x117210018 ->2 | |
11721d5c3 movsd xmm1, [rcx+0x8] | |
11721d5c8 movsd xmm0, [rcx+0x10] | |
11721d5cd addsd xmm6, xmm1 | |
11721d5d1 addsd xmm7, xmm0 | |
11721d5d5 add ebp, +0x01 | |
11721d5d8 cmp ebp, eax | |
11721d5da jg 0x11721001c ->3 | |
->LOOP: | |
11721d5e0 movaps xmm5, xmm6 | |
11721d5e3 mulsd xmm6, xmm6 | |
11721d5e7 movaps xmm4, xmm7 | |
11721d5ea mulsd xmm4, xmm4 | |
11721d5ee movaps xmm3, xmm4 | |
11721d5f1 addsd xmm3, xmm6 | |
11721d5f5 sqrtsd xmm3, xmm3 | |
11721d5f9 ucomisd xmm3, xmm2 | |
11721d5fd ja 0x117210024 ->5 | |
11721d603 subsd xmm6, xmm4 | |
11721d607 mulsd xmm7, xmm5 | |
11721d60b addsd xmm7, xmm7 | |
11721d60f addsd xmm6, xmm1 | |
11721d613 addsd xmm7, xmm0 | |
11721d617 add ebp, +0x01 | |
11721d61a cmp ebp, eax | |
11721d61c jle 0x11721d5e0 ->LOOP | |
11721d61e jmp 0x11721002c ->7 | |
---- TRACE 13 stop -> loop | |
---- TRACE 14 start 10/0 check.lua:16 | |
0001 UGET 1 0 ; type | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . FUNCC ; type | |
0004 ISEQS 1 0 ; "number" | |
0005 JMP 1 => 0008 | |
0008 KPRI 1 2 | |
0009 RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 MOV 1 0 | |
0007 KSHORT 2 0 | |
0008 RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 14 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 14 start 10/0 check.lua:16 | |
0001 UGET 1 0 ; type | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . FUNCC ; type | |
0004 ISEQS 1 0 ; "number" | |
0005 JMP 1 => 0008 | |
0008 KPRI 1 2 | |
0009 RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0004 UGET 4 0 ; get_typeid | |
0005 MOV 5 1 | |
0006 CALL 4 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 14 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 14 start 10/0 check.lua:16 | |
0001 UGET 1 0 ; type | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . FUNCC ; type | |
0004 ISEQS 1 0 ; "number" | |
0005 JMP 1 => 0008 | |
0008 KPRI 1 2 | |
0009 RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 14 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 14 start 10/0 check.lua:16 | |
0001 UGET 1 0 ; type | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . FUNCC ; type | |
0004 ISEQS 1 0 ; "number" | |
0005 JMP 1 => 0008 | |
0008 KPRI 1 2 | |
0009 RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0004 UGET 4 0 ; get_typeid | |
0005 MOV 5 1 | |
0006 CALL 4 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 14 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 14 start 10/0 check.lua:16 | |
---- TRACE 14 IR | |
---- TRACE 14 mcode 29 | |
11721d483 mov dword [0x0b9b1410], 0xe | |
11721d48e xor eax, eax | |
11721d490 mov ebx, 0x0ba0926c | |
11721d495 mov r14d, 0x0b9b1f98 | |
11721d49b jmp 0x10b98feb1 | |
---- TRACE 14 stop -> interpreter | |
---- TRACE 15 start 12/0 matrix.lua:24 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0004 UGET 4 0 ; get_typeid | |
0005 MOV 5 1 | |
0006 CALL 4 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 15 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 15 start 12/0 matrix.lua:24 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 15 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 15 start 12/0 matrix.lua:24 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0004 UGET 4 0 ; get_typeid | |
0005 MOV 5 1 | |
0006 CALL 4 3 2 | |
0000 . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . UGET 1 1 ; ffi | |
0011 . TGETS 1 1 0 ; "istype" | |
0012 . UGET 2 2 ; gsl_complex | |
0013 . MOV 3 0 | |
0014 . CALL 1 2 3 | |
0000 . . FUNCC ; ffi.istype | |
0015 . ISF 1 | |
0016 . JMP 2 => 0021 | |
0017 . KPRI 1 1 | |
0018 . KPRI 2 2 | |
0019 . RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 15 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 15 start 12/0 matrix.lua:24 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 KPRI 1 2 | |
0007 KPRI 2 2 | |
0008 RET 1 3 | |
0007 IST 5 | |
0008 JMP 6 => 0015 | |
0015 ISF 3 | |
0016 JMP 6 => 0036 | |
0017 ISF 5 | |
0018 JMP 6 => 0036 | |
0019 UGET 6 2 ; cartesian | |
0020 MOV 7 0 | |
0021 CALL 6 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0008 . . KPRI 1 2 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0006 . MOV 1 0 | |
0007 . KSHORT 2 0 | |
0008 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 15 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 15 start 12/0 matrix.lua:24 | |
---- TRACE 15 IR | |
---- TRACE 15 mcode 29 | |
11721d45f mov dword [0x0b9b1410], 0xf | |
11721d46a xor eax, eax | |
11721d46c mov ebx, 0x0b9c3624 | |
11721d471 mov r14d, 0x0b9b1f98 | |
11721d477 jmp 0x10b98feb1 | |
---- TRACE 15 stop -> interpreter | |
---- TRACE 16 start 11/0 matrix.lua:37 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 MOV 1 0 | |
0007 KSHORT 2 0 | |
0008 RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 16 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 16 start 11/0 matrix.lua:37 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 MOV 1 0 | |
0007 KSHORT 2 0 | |
0008 RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 16 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 16 start 11/0 matrix.lua:37 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 MOV 1 0 | |
0007 KSHORT 2 0 | |
0008 RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 7 ; matrix.lua:455 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0011 | |
0003 . MULVV 4 0 1 | |
0004 . MULVV 5 2 3 | |
0005 . SUBVV 4 4 5 | |
0006 . MULVV 5 0 3 | |
0007 . MULVV 6 2 1 | |
0008 . ADDVV 5 5 6 | |
0009 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 16 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 16 start 11/0 matrix.lua:37 | |
0001 UGET 1 0 ; is_real | |
0002 MOV 2 0 | |
0003 CALL 1 2 2 | |
0000 . JFUNCF 3 10 ; check.lua:15 | |
0001 . UGET 1 0 ; type | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . FUNCC ; type | |
0004 . ISEQS 1 0 ; "number" | |
0005 . JMP 1 => 0008 | |
0008 . KPRI 1 2 | |
0009 . RET1 1 2 | |
0004 ISF 1 | |
0005 JMP 2 => 0010 | |
0006 MOV 1 0 | |
0007 KSHORT 2 0 | |
0008 RET 1 3 | |
0022 UGET 8 2 ; cartesian | |
0023 MOV 9 1 | |
0024 CALL 8 3 2 | |
0000 . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . UGET 1 0 ; is_real | |
0002 . MOV 2 0 | |
0003 . CALL 1 2 2 | |
0000 . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . UGET 1 0 ; type | |
0002 . . MOV 2 0 | |
0003 . . CALL 1 2 2 | |
0000 . . . FUNCC ; type | |
0004 . . ISEQS 1 0 ; "number" | |
0005 . . JMP 1 => 0008 | |
0006 . . KPRI 1 1 | |
0007 . . JMP 2 => 0009 | |
0009 . . RET1 1 2 | |
0004 . ISF 1 | |
0005 . JMP 2 => 0010 | |
0010 . TGETB 1 0 0 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0011 . TGETB 2 0 1 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0012 . RET 1 3 | |
0025 UGET 10 3 ; scalar_op | |
0026 MOV 11 6 | |
0027 MOV 12 8 | |
0028 MOV 13 7 | |
0029 MOV 14 9 | |
0030 CALL 10 3 5 | |
0000 . FUNCF 6 ; matrix.lua:447 | |
0001 . ISF 2 | |
0002 . JMP 4 => 0007 | |
0003 . ADDVV 4 0 1 | |
0004 . ADDVV 5 2 3 | |
0005 . RET 4 3 | |
0031 UGET 12 4 ; gsl_complex | |
0032 MOV 13 10 | |
0033 MOV 14 11 | |
0034 CALLT 12 3 | |
0000 FUNCC ; ffi.meta.__call | |
---- TRACE 16 abort t.lua:92 -- NYI: return to lower frame | |
---- TRACE 16 start 13/1 t.lua:78 | |
0013 SUBVN 7 6 0 ; 1 | |
0014 RET1 7 2 | |
0028 TSETV 13 0 12 | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0029 FORL 8 => 0019 | |
0030 FORL 4 => 0014 | |
0014 MULVN 1 7 0 ; 0.1 | |
0015 KSHORT 8 -10 | |
0016 KSHORT 9 10 | |
0017 KSHORT 10 1 | |
0018 FORI 8 => 0030 | |
0019 MULVN 2 11 0 ; 0.1 | |
0020 MULVN 12 7 1 ; 21 | |
0021 ADDVV 12 12 11 | |
0022 ADDVN 12 12 2 ; 430 | |
0023 UGET 13 1 ; mandel | |
0024 KCDATA 14 3 | |
0025 MULVV 14 14 2 | |
0000 . . FUNCC ; ffi.meta.__mul | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 7 ; matrix.lua:455 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0011 | |
0003 . . . MULVV 4 0 1 | |
0004 . . . MULVV 5 2 3 | |
0005 . . . SUBVV 4 4 5 | |
0006 . . . MULVV 5 0 3 | |
0007 . . . MULVV 6 2 1 | |
0008 . . . ADDVV 5 5 6 | |
0009 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0026 ADDVV 14 1 14 | |
0000 . . FUNCC ; ffi.meta.__add | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 6 ; matrix.lua:447 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0007 | |
0003 . . . ADDVV 4 0 1 | |
0004 . . . ADDVV 5 2 3 | |
0005 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0027 CALL 13 2 2 | |
0000 . FUNCF 9 ; t.lua:73 | |
0001 . MOV 1 0 | |
0002 . KSHORT 2 80 | |
0003 . KSHORT 3 1 | |
0004 . MOV 4 2 | |
0005 . KSHORT 5 1 | |
0006 . JFORI 3 => 0018 | |
---- TRACE 16 IR | |
0001 int SLOAD #7 PI | |
0002 > int SUBOV 0001 +1 | |
0003 > p32 RETF proto: 0x0b9c6db0 [0x0b9c6e60] | |
0004 > cdt SLOAD #1 T | |
0005 > num SLOAD #13 T | |
0006 u16 FLOAD 0004 cdata.ctypeid | |
0007 > int EQ 0006 +4993 | |
0008 i64 CONV 0005 i64.num | |
0009 i64 BSHL 0008 +3 | |
0010 p64 ADD 0009 0004 | |
0011 p64 ADD 0010 +8 | |
0012 num CONV 0002 num.int | |
0013 num XSTORE 0011 0012 | |
0014 num SLOAD #9 I | |
0015 num ADD 0014 +1 | |
0016 > num GT 0015 +10 | |
0017 num SLOAD #5 I | |
0018 num ADD 0017 +1 | |
0019 > num LE 0018 +5 | |
0020 num MUL 0018 +0.1 | |
0021 num MUL 0018 +21 | |
0022 num ADD 0021 -10 | |
0023 num ADD 0022 +430 | |
0024 fun SLOAD #0 R | |
0025 > fun EQ 0024 t.lua:84 | |
0026 > p32 UREFC matrix.lua:23 #1 | |
0027 > tab ULOAD 0026 | |
0028 int FLOAD 0027 tab.hmask | |
0029 > int EQ 0028 +31 | |
0030 p32 FLOAD 0027 tab.node | |
0031 > p32 HREFK 0030 "istype" @13 | |
0032 > fun HLOAD 0031 | |
0033 > fun EQ 0032 ffi.istype | |
0034 } cdt CNEW +16 | |
0035 p64 ADD 0034 +8 | |
0036 } num XSTORE 0035 -0 | |
0037 p64 ADD 0034 +16 | |
0038 } num XSTORE 0037 -1 | |
0039 num ADD 0020 -0 | |
0040 > cdt CNEW +16 | |
0041 p64 ADD 0040 +8 | |
0042 num XSTORE 0041 0039 | |
0043 p64 ADD 0040 +16 | |
0044 num XSTORE 0043 -1 | |
---- TRACE 16 mcode 670 | |
11721d1be add rsp, -0x20 | |
11721d1c2 mov dword [0x0b9b1410], 0x10 | |
11721d1cd mov edi, [0x0b9b13d8] | |
11721d1d4 cmp edi, [0x0b9b13dc] | |
11721d1db jb 0x11721d1f4 | |
11721d1dd mov esi, 0x1 | |
11721d1e2 mov edi, 0x0b9b13b8 | |
11721d1e7 call 0x10b991060 ->lj_gc_step_jit | |
11721d1ec test eax, eax | |
11721d1ee jnz 0x117210010 ->0 | |
11721d1f4 mov edi, [0x0b9b14b0] | |
11721d1fb mov edx, [0x0b9b14b4] | |
11721d202 movsd xmm7, [0x0ba64ad8] | |
11721d20b mov r15d, ebp | |
11721d20e sub r15d, +0x01 | |
11721d212 jo 0x117210010 ->0 | |
11721d218 cmp dword [rdx-0x4], 0x0b9c6e60 | |
11721d21f jnz 0x117210014 ->1 | |
11721d225 add edx, -0x70 | |
11721d228 mov [0x0b9b14b4], edx | |
11721d22f cmp dword [rdx+0x4], -0x0b | |
11721d233 jnz 0x117210018 ->2 | |
11721d239 mov ebx, [rdx] | |
11721d23b cmp dword [rdx+0x64], 0xfffeffff | |
11721d242 jnb 0x117210018 ->2 | |
11721d248 movzx ebp, word [rbx+0x6] | |
11721d24c cmp ebp, 0x1381 | |
11721d252 jnz 0x117210018 ->2 | |
11721d258 cvttsd2si rbp, [rdx+0x60] | |
11721d25e xorps xmm6, xmm6 | |
11721d261 cvtsi2sd xmm6, r15d | |
11721d266 movsd [rbx+rbp*8+0x8], xmm6 | |
11721d26c movsd xmm6, [rdx+0x40] | |
11721d271 addsd xmm6, [0x0ba64a80] | |
11721d27a ucomisd xmm6, [0x0ba64ad0] | |
11721d283 jbe 0x11721001c ->3 | |
11721d289 movsd xmm5, [rdx+0x20] | |
11721d28e addsd xmm5, [0x0ba64a80] | |
11721d297 movsd [rsp+0x10], xmm5 | |
11721d29d ucomisd xmm7, xmm5 | |
11721d2a1 jb 0x117210020 ->4 | |
11721d2a7 movaps xmm7, xmm5 | |
11721d2aa mulsd xmm7, [0x0ba64ae0] | |
11721d2b3 movsd [rsp+0x18], xmm7 | |
11721d2b9 movaps xmm1, xmm5 | |
11721d2bc mulsd xmm1, [0x0ba64af8] | |
11721d2c5 addsd xmm1, [0x0ba64ae8] | |
11721d2ce addsd xmm1, [0x0ba20420] | |
11721d2d7 movsd [rsp+0x8], xmm1 | |
11721d2dd cmp dword [rdx-0x8], 0x0bac9188 | |
11721d2e4 jnz 0x117210024 ->5 | |
11721d2ea cmp dword [0x0ba09c34], -0x0c | |
11721d2f2 jnz 0x117210024 ->5 | |
11721d2f8 mov ebp, [0x0ba09c30] | |
11721d2ff cmp dword [rbp+0x1c], +0x1f | |
11721d303 jnz 0x117210024 ->5 | |
11721d309 mov ebp, [rbp+0x14] | |
11721d30c mov rsi, 0xfffffffb0b9b28c8 | |
11721d316 cmp rsi, [rbp+0x140] | |
11721d31d jnz 0x117210024 ->5 | |
11721d323 cmp dword [rbp+0x13c], -0x09 | |
11721d32a jnz 0x117210024 ->5 | |
11721d330 cmp dword [rbp+0x138], 0x0b9c2500 | |
11721d33a jnz 0x117210024 ->5 | |
11721d340 movaps xmm15, xmm7 | |
11721d344 addsd xmm15, [0x0ba20428] | |
11721d34e movsd [rsp+0x20], xmm15 | |
11721d355 mov esi, 0x18 | |
11721d35a call 0x10b991370 ->lj_mem_newgco | |
11721d35f movzx ecx, byte [0x0b9b13e0] | |
11721d367 and ecx, +0x03 | |
11721d36a or ecx, 0x00100a00 | |
11721d370 mov [rax+0x4], ecx | |
11721d373 mov edx, [0x0b9b14b4] | |
11721d37a movsd xmm15, [rsp+0x20] | |
11721d381 movsd xmm7, [rsp+0x18] | |
11721d387 movsd xmm6, [0x0ba64af0] | |
11721d390 movsd xmm5, [rsp+0x10] | |
11721d396 movsd xmm4, [0x0ba64ae8] | |
11721d39f movsd xmm3, [0x0ba64ad0] | |
11721d3a8 movsd xmm2, [0x0ba64a80] | |
11721d3b1 movsd xmm1, [rsp+0x8] | |
11721d3b7 movsd xmm0, [0x0ba20430] | |
11721d3c0 movsd [rax+0x8], xmm15 | |
11721d3c6 movsd [rax+0x10], xmm6 | |
11721d3cb movsd [rdx+0xa0], xmm2 | |
11721d3d3 movsd [rdx+0x98], xmm2 | |
11721d3db movsd [rdx+0x90], xmm0 | |
11721d3e3 movsd [rdx+0x88], xmm2 | |
11721d3eb movsd [rdx+0x80], xmm0 | |
11721d3f3 mov dword [rdx+0x7c], 0xfffffff5 | |
11721d3fa mov [rdx+0x78], eax | |
11721d3fd mov dword [rdx+0x74], 0xfffffff5 | |
11721d404 mov [rdx+0x70], eax | |
11721d407 mov dword [rdx+0x6c], 0x0b9c6e60 | |
11721d40e mov dword [rdx+0x68], 0x0bac9148 | |
11721d415 movsd [rdx+0x60], xmm1 | |
11721d41a movsd [rdx+0x58], xmm4 | |
11721d41f movsd [rdx+0x50], xmm2 | |
11721d424 movsd [rdx+0x48], xmm3 | |
11721d429 movsd [rdx+0x40], xmm4 | |
11721d42e movsd [rdx+0x38], xmm5 | |
11721d433 movsd [rdx+0x20], xmm5 | |
11721d438 movsd [rdx+0x10], xmm6 | |
11721d43d movsd [rdx+0x8], xmm7 | |
11721d442 mov dword [rdx-0x8], 0x0bac9188 | |
11721d449 add edx, +0x70 | |
11721d44c mov [0x0b9b14b4], edx | |
11721d453 add rsp, +0x20 | |
11721d457 jmp 0x11721d4a7 | |
---- TRACE 16 stop -> 13 | |
---- TRACE 17 start 11/0 matrix.lua:37 | |
---- TRACE 17 IR | |
---- TRACE 17 mcode 29 | |
11721d19a mov dword [0x0b9b1410], 0x11 | |
11721d1a5 xor eax, eax | |
11721d1a7 mov ebx, 0x0b9c414c | |
11721d1ac mov r14d, 0x0b9b1f98 | |
11721d1b2 jmp 0x10b98feb1 | |
---- TRACE 17 stop -> interpreter | |
---- TRACE 18 start 13/5 t.lua:78 | |
0013 SUBVN 7 6 0 ; 1 | |
0014 RET1 7 2 | |
0028 TSETV 13 0 12 | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0029 FORL 8 => 0019 | |
0019 MULVN 2 11 0 ; 0.1 | |
0020 MULVN 12 7 1 ; 21 | |
0021 ADDVV 12 12 11 | |
0022 ADDVN 12 12 2 ; 430 | |
0023 UGET 13 1 ; mandel | |
0024 KCDATA 14 3 | |
0025 MULVV 14 14 2 | |
0000 . . FUNCC ; ffi.meta.__mul | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 7 ; matrix.lua:455 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0011 | |
0003 . . . MULVV 4 0 1 | |
0004 . . . MULVV 5 2 3 | |
0005 . . . SUBVV 4 4 5 | |
0006 . . . MULVV 5 0 3 | |
0007 . . . MULVV 6 2 1 | |
0008 . . . ADDVV 5 5 6 | |
0009 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0026 ADDVV 14 1 14 | |
0000 . . FUNCC ; ffi.meta.__add | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 6 ; matrix.lua:447 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0007 | |
0003 . . . ADDVV 4 0 1 | |
0004 . . . ADDVV 5 2 3 | |
0005 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0027 CALL 13 2 2 | |
0000 . FUNCF 9 ; t.lua:73 | |
0001 . MOV 1 0 | |
0002 . KSHORT 2 80 | |
0003 . KSHORT 3 1 | |
0004 . MOV 4 2 | |
0005 . KSHORT 5 1 | |
0006 . JFORI 3 => 0018 | |
---- TRACE 18 IR | |
0001 int SLOAD #4 PI | |
0002 int SLOAD #5 PRI | |
0003 num PVAL #41 | |
0004 num PVAL #42 | |
0005 + cdt CNEW +16 | |
0006 p64 ADD 0005 +8 | |
0007 num XSTORE 0006 0003 | |
0008 p64 ADD 0005 +16 | |
0009 num XSTORE 0008 0004 | |
0010 > nil GCSTEP | |
0011 > int SUBOV 0001 +1 | |
0012 > p32 RETF proto: 0x0b9c6db0 [0x0b9c6e60] | |
0013 > cdt SLOAD #1 T | |
0014 > num SLOAD #13 T | |
0015 u16 FLOAD 0013 cdata.ctypeid | |
0016 > int EQ 0015 +4993 | |
0017 i64 CONV 0014 i64.num | |
0018 i64 BSHL 0017 +3 | |
0019 p64 ADD 0018 0013 | |
0020 p64 ADD 0019 +8 | |
0021 num CONV 0011 num.int | |
0022 num XSTORE 0020 0021 | |
0023 num SLOAD #9 I | |
0024 num ADD 0023 +1 | |
0025 > num LE 0024 +10 | |
0026 num MUL 0024 +0.1 | |
0027 > num SLOAD #8 T | |
0028 num MUL 0027 +21 | |
0029 num ADD 0028 0024 | |
0030 num ADD 0029 +430 | |
0031 fun SLOAD #0 R | |
0032 > fun EQ 0031 t.lua:84 | |
0033 > p32 UREFC matrix.lua:23 #1 | |
0034 > tab ULOAD 0033 | |
0035 int FLOAD 0034 tab.hmask | |
0036 > int EQ 0035 +31 | |
0037 p32 FLOAD 0034 tab.node | |
0038 > p32 HREFK 0037 "istype" @13 | |
0039 > fun HLOAD 0038 | |
0040 > fun EQ 0039 ffi.istype | |
0041 num MUL 0026 +0 | |
0042 num ADD 0026 +0 | |
0043 } cdt CNEW +16 | |
0044 p64 ADD 0043 +8 | |
0045 } num XSTORE 0044 0041 | |
0046 p64 ADD 0043 +16 | |
0047 } num XSTORE 0046 0042 | |
0048 > num SLOAD #2 T | |
0049 num ADD 0048 0041 | |
0050 num ADD 0042 +0 | |
0051 > cdt CNEW +16 | |
0052 p64 ADD 0051 +8 | |
0053 num XSTORE 0052 0049 | |
0054 p64 ADD 0051 +16 | |
0055 num XSTORE 0054 0050 | |
---- TRACE 18 mcode 726 | |
11721cec1 mov ebx, eax | |
11721cec3 add rsp, -0x40 | |
11721cec7 mov dword [0x0b9b1410], 0x12 | |
11721ced2 movsd [rsp+0x38], xmm5 | |
11721ced8 movsd [rsp+0x40], xmm7 | |
11721cede mov edi, [0x0b9b14b0] | |
11721cee5 mov esi, 0x18 | |
11721ceea call 0x10b991370 ->lj_mem_newgco | |
11721ceef movzx ecx, byte [0x0b9b13e0] | |
11721cef7 and ecx, +0x03 | |
11721cefa or ecx, 0x00100a00 | |
11721cf00 mov [rax+0x4], ecx | |
11721cf03 mov [rsp+0x30], eax | |
11721cf07 movsd xmm7, [rsp+0x40] | |
11721cf0d movsd xmm5, [rsp+0x38] | |
11721cf13 movsd [rax+0x8], xmm5 | |
11721cf18 movsd [rax+0x10], xmm7 | |
11721cf1d mov edi, [0x0b9b13d8] | |
11721cf24 cmp edi, [0x0b9b13dc] | |
11721cf2b jb 0x11721cf44 | |
11721cf2d mov esi, 0x2 | |
11721cf32 mov edi, 0x0b9b13b8 | |
11721cf37 call 0x10b991060 ->lj_gc_step_jit | |
11721cf3c test eax, eax | |
11721cf3e jnz 0x117210010 ->0 | |
11721cf44 mov edi, [0x0b9b14b0] | |
11721cf4b mov edx, [0x0b9b14b4] | |
11721cf52 mov eax, [rsp+0x30] | |
11721cf56 movsd xmm7, [0x0ba64ad0] | |
11721cf5f mov r15d, ebp | |
11721cf62 sub r15d, +0x01 | |
11721cf66 jo 0x117210010 ->0 | |
11721cf6c cmp dword [rdx-0x4], 0x0b9c6e60 | |
11721cf73 jnz 0x117210014 ->1 | |
11721cf79 add edx, -0x70 | |
11721cf7c mov [0x0b9b14b4], edx | |
11721cf83 cmp dword [rdx+0x4], -0x0b | |
11721cf87 jnz 0x117210018 ->2 | |
11721cf8d mov ebx, [rdx] | |
11721cf8f cmp dword [rdx+0x64], 0xfffeffff | |
11721cf96 jnb 0x117210018 ->2 | |
11721cf9c movzx ebp, word [rbx+0x6] | |
11721cfa0 cmp ebp, 0x1381 | |
11721cfa6 jnz 0x117210018 ->2 | |
11721cfac cvttsd2si rbp, [rdx+0x60] | |
11721cfb2 xorps xmm6, xmm6 | |
11721cfb5 cvtsi2sd xmm6, r15d | |
11721cfba movsd [rbx+rbp*8+0x8], xmm6 | |
11721cfc0 movsd xmm6, [rdx+0x40] | |
11721cfc5 addsd xmm6, [0x0ba64a80] | |
11721cfce movsd [rsp+0x20], xmm6 | |
11721cfd4 ucomisd xmm7, xmm6 | |
11721cfd8 jb 0x11721001c ->3 | |
11721cfde movaps xmm7, xmm6 | |
11721cfe1 mulsd xmm7, [0x0ba64ae0] | |
11721cfea movsd [rsp+0x28], xmm7 | |
11721cff0 cmp dword [rdx+0x3c], 0xfffeffff | |
11721cff7 jnb 0x117210020 ->4 | |
11721cffd movsd xmm5, [rdx+0x38] | |
11721d002 mulsd xmm5, [0x0ba64af8] | |
11721d00b addsd xmm5, xmm6 | |
11721d00f addsd xmm5, [0x0ba20420] | |
11721d018 movsd [rsp+0x18], xmm5 | |
11721d01e cmp dword [rdx-0x8], 0x0bac9188 | |
11721d025 jnz 0x117210020 ->4 | |
11721d02b cmp dword [0x0ba09c34], -0x0c | |
11721d033 jnz 0x117210020 ->4 | |
11721d039 mov ebp, [0x0ba09c30] | |
11721d040 cmp dword [rbp+0x1c], +0x1f | |
11721d044 jnz 0x117210020 ->4 | |
11721d04a mov ebp, [rbp+0x14] | |
11721d04d mov rsi, 0xfffffffb0b9b28c8 | |
11721d057 cmp rsi, [rbp+0x140] | |
11721d05e jnz 0x117210020 ->4 | |
11721d064 cmp dword [rbp+0x13c], -0x09 | |
11721d06b jnz 0x117210020 ->4 | |
11721d071 cmp dword [rbp+0x138], 0x0b9c2500 | |
11721d07b jnz 0x117210020 ->4 | |
11721d081 movaps xmm1, xmm7 | |
11721d084 mulsd xmm1, [0x0ba64ac0] | |
11721d08d movaps xmm2, xmm7 | |
11721d090 addsd xmm2, [0x0ba64ac0] | |
11721d099 cmp dword [rdx+0xc], 0xfffeffff | |
11721d0a0 jnb 0x117210020 ->4 | |
11721d0a6 addsd xmm1, [rdx+0x8] | |
11721d0ab movsd [rsp+0x8], xmm1 | |
11721d0b1 addsd xmm2, [0x0ba64ac0] | |
11721d0ba movsd [rsp+0x10], xmm2 | |
11721d0c0 mov esi, 0x18 | |
11721d0c5 call 0x10b991370 ->lj_mem_newgco | |
11721d0ca movzx ecx, byte [0x0b9b13e0] | |
11721d0d2 and ecx, +0x03 | |
11721d0d5 or ecx, 0x00100a00 | |
11721d0db mov [rax+0x4], ecx | |
11721d0de mov edx, [0x0b9b14b4] | |
11721d0e5 movsd xmm7, [rsp+0x28] | |
11721d0eb movsd xmm6, [rsp+0x20] | |
11721d0f1 movsd xmm5, [rsp+0x18] | |
11721d0f7 movsd xmm4, [0x0ba20430] | |
11721d100 movsd xmm3, [0x0ba64a80] | |
11721d109 movsd xmm2, [rsp+0x10] | |
11721d10f movsd xmm1, [rsp+0x8] | |
11721d115 movsd [rax+0x8], xmm1 | |
11721d11a movsd [rax+0x10], xmm2 | |
11721d11f movsd [rdx+0xa0], xmm3 | |
11721d127 movsd [rdx+0x98], xmm3 | |
11721d12f movsd [rdx+0x90], xmm4 | |
11721d137 movsd [rdx+0x88], xmm3 | |
11721d13f movsd [rdx+0x80], xmm4 | |
11721d147 mov dword [rdx+0x7c], 0xfffffff5 | |
11721d14e mov [rdx+0x78], eax | |
11721d151 mov dword [rdx+0x74], 0xfffffff5 | |
11721d158 mov [rdx+0x70], eax | |
11721d15b mov dword [rdx+0x6c], 0x0b9c6e60 | |
11721d162 mov dword [rdx+0x68], 0x0bac9148 | |
11721d169 movsd [rdx+0x60], xmm5 | |
11721d16e movsd [rdx+0x58], xmm6 | |
11721d173 movsd [rdx+0x40], xmm6 | |
11721d178 movsd [rdx+0x10], xmm7 | |
11721d17d mov dword [rdx-0x8], 0x0bac9188 | |
11721d184 add edx, +0x70 | |
11721d187 mov [0x0b9b14b4], edx | |
11721d18e add rsp, +0x40 | |
11721d192 jmp 0x11721d4a7 | |
---- TRACE 18 stop -> 13 | |
---- TRACE 19 start 16/3 t.lua:91 | |
0019 MULVN 2 11 0 ; 0.1 | |
0020 MULVN 12 7 1 ; 21 | |
0021 ADDVV 12 12 11 | |
0022 ADDVN 12 12 2 ; 430 | |
0023 UGET 13 1 ; mandel | |
0024 KCDATA 14 3 | |
0025 MULVV 14 14 2 | |
0000 . . FUNCC ; ffi.meta.__mul | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 7 ; matrix.lua:455 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0011 | |
0003 . . . MULVV 4 0 1 | |
0004 . . . MULVV 5 2 3 | |
0005 . . . SUBVV 4 4 5 | |
0006 . . . MULVV 5 0 3 | |
0007 . . . MULVV 6 2 1 | |
0008 . . . ADDVV 5 5 6 | |
0009 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0026 ADDVV 14 1 14 | |
0000 . . FUNCC ; ffi.meta.__add | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 6 ; matrix.lua:447 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0007 | |
0003 . . . ADDVV 4 0 1 | |
0004 . . . ADDVV 5 2 3 | |
0005 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0027 CALL 13 2 2 | |
0000 . FUNCF 9 ; t.lua:73 | |
0001 . MOV 1 0 | |
0002 . KSHORT 2 80 | |
0003 . KSHORT 3 1 | |
0004 . MOV 4 2 | |
0005 . KSHORT 5 1 | |
0006 . JFORI 3 => 0018 | |
---- TRACE 19 IR | |
0001 num SLOAD #9 PI | |
0002 num MUL 0001 +0.1 | |
0003 > num SLOAD #8 T | |
0004 num MUL 0003 +21 | |
0005 num ADD 0004 0001 | |
0006 num ADD 0005 +430 | |
0007 fun SLOAD #0 R | |
0008 > fun EQ 0007 t.lua:84 | |
0009 > p32 UREFC matrix.lua:23 #1 | |
0010 > tab ULOAD 0009 | |
0011 int FLOAD 0010 tab.hmask | |
0012 > int EQ 0011 +31 | |
0013 p32 FLOAD 0010 tab.node | |
0014 > p32 HREFK 0013 "istype" @13 | |
0015 > fun HLOAD 0014 | |
0016 > fun EQ 0015 ffi.istype | |
0017 num MUL 0002 +0 | |
0018 num ADD 0002 +0 | |
0019 } cdt CNEW +16 | |
0020 p64 ADD 0019 +8 | |
0021 } num XSTORE 0020 0017 | |
0022 p64 ADD 0019 +16 | |
0023 } num XSTORE 0022 0018 | |
0024 > num SLOAD #2 T | |
0025 num ADD 0024 0017 | |
0026 num ADD 0018 +0 | |
0027 > cdt CNEW +16 | |
0028 p64 ADD 0027 +8 | |
0029 num XSTORE 0028 0025 | |
0030 p64 ADD 0027 +16 | |
0031 num XSTORE 0030 0026 | |
---- TRACE 19 mcode 549 | |
11721cc99 mov eax, [0x0b9b14b0] | |
11721cca0 mov eax, [rax+0x20] | |
11721cca3 sub eax, [0x0b9b14b4] | |
11721ccaa cmp eax, 0xb8 | |
11721ccb0 jb 0x11721001c ->3 | |
11721ccb6 mov dword [0x0b9b1410], 0x13 | |
11721ccc1 movsd [rsp+0x28], xmm6 | |
11721ccc7 mov edi, [0x0b9b13d8] | |
11721ccce cmp edi, [0x0b9b13dc] | |
11721ccd5 jb 0x11721ccee | |
11721ccd7 mov esi, 0x1 | |
11721ccdc mov edi, 0x0b9b13b8 | |
11721cce1 call 0x10b991060 ->lj_gc_step_jit | |
11721cce6 test eax, eax | |
11721cce8 jnz 0x117210010 ->0 | |
11721ccee mov edi, [0x0b9b14b0] | |
11721ccf5 mov edx, [0x0b9b14b4] | |
11721ccfc movsd xmm7, [rsp+0x28] | |
11721cd02 movaps xmm6, xmm7 | |
11721cd05 mulsd xmm6, [0x0ba64ae0] | |
11721cd0e movsd [rsp+0x20], xmm6 | |
11721cd14 cmp dword [rdx+0x3c], 0xfffeffff | |
11721cd1b jnb 0x117210010 ->0 | |
11721cd21 movsd xmm5, [rdx+0x38] | |
11721cd26 mulsd xmm5, [0x0ba64af8] | |
11721cd2f addsd xmm5, xmm7 | |
11721cd33 addsd xmm5, [0x0ba20420] | |
11721cd3c movsd [rsp+0x18], xmm5 | |
11721cd42 cmp dword [rdx-0x8], 0x0bac9188 | |
11721cd49 jnz 0x117210010 ->0 | |
11721cd4f cmp dword [0x0ba09c34], -0x0c | |
11721cd57 jnz 0x117210010 ->0 | |
11721cd5d mov ebp, [0x0ba09c30] | |
11721cd64 cmp dword [rbp+0x1c], +0x1f | |
11721cd68 jnz 0x117210010 ->0 | |
11721cd6e mov ebp, [rbp+0x14] | |
11721cd71 mov rsi, 0xfffffffb0b9b28c8 | |
11721cd7b cmp rsi, [rbp+0x140] | |
11721cd82 jnz 0x117210010 ->0 | |
11721cd88 cmp dword [rbp+0x13c], -0x09 | |
11721cd8f jnz 0x117210010 ->0 | |
11721cd95 cmp dword [rbp+0x138], 0x0b9c2500 | |
11721cd9f jnz 0x117210010 ->0 | |
11721cda5 movaps xmm7, xmm6 | |
11721cda8 mulsd xmm7, [0x0ba64ac0] | |
11721cdb1 addsd xmm6, [0x0ba64ac0] | |
11721cdba cmp dword [rdx+0xc], 0xfffeffff | |
11721cdc1 jnb 0x117210010 ->0 | |
11721cdc7 movaps xmm1, xmm7 | |
11721cdca addsd xmm1, [rdx+0x8] | |
11721cdcf movsd [rsp+0x8], xmm1 | |
11721cdd5 movaps xmm2, xmm6 | |
11721cdd8 addsd xmm2, [0x0ba64ac0] | |
11721cde1 movsd [rsp+0x10], xmm2 | |
11721cde7 mov esi, 0x18 | |
11721cdec call 0x10b991370 ->lj_mem_newgco | |
11721cdf1 movzx ecx, byte [0x0b9b13e0] | |
11721cdf9 and ecx, +0x03 | |
11721cdfc or ecx, 0x00100a00 | |
11721ce02 mov [rax+0x4], ecx | |
11721ce05 mov edx, [0x0b9b14b4] | |
11721ce0c movsd xmm7, [rsp+0x28] | |
11721ce12 movsd xmm6, [rsp+0x20] | |
11721ce18 movsd xmm5, [rsp+0x18] | |
11721ce1e movsd xmm4, [0x0ba20430] | |
11721ce27 movsd xmm3, [0x0ba64a80] | |
11721ce30 movsd xmm2, [rsp+0x10] | |
11721ce36 movsd xmm1, [rsp+0x8] | |
11721ce3c movsd [rax+0x8], xmm1 | |
11721ce41 movsd [rax+0x10], xmm2 | |
11721ce46 movsd [rdx+0xa0], xmm3 | |
11721ce4e movsd [rdx+0x98], xmm3 | |
11721ce56 movsd [rdx+0x90], xmm4 | |
11721ce5e movsd [rdx+0x88], xmm3 | |
11721ce66 movsd [rdx+0x80], xmm4 | |
11721ce6e mov dword [rdx+0x7c], 0xfffffff5 | |
11721ce75 mov [rdx+0x78], eax | |
11721ce78 mov dword [rdx+0x74], 0xfffffff5 | |
11721ce7f mov [rdx+0x70], eax | |
11721ce82 mov dword [rdx+0x6c], 0x0b9c6e60 | |
11721ce89 mov dword [rdx+0x68], 0x0bac9148 | |
11721ce90 movsd [rdx+0x60], xmm5 | |
11721ce95 movsd [rdx+0x58], xmm7 | |
11721ce9a movsd [rdx+0x40], xmm7 | |
11721ce9f movsd [rdx+0x10], xmm6 | |
11721cea4 mov dword [rdx-0x8], 0x0bac9188 | |
11721ceab add edx, +0x70 | |
11721ceae mov [0x0b9b14b4], edx | |
11721ceb5 add rsp, +0x20 | |
11721ceb9 jmp 0x11721d4a7 | |
---- TRACE 19 stop -> 13 | |
---- TRACE 20 start 13/7 t.lua:82 | |
0018 RET1 2 2 | |
0028 TSETV 13 0 12 | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0029 FORL 8 => 0019 | |
0019 MULVN 2 11 0 ; 0.1 | |
0020 MULVN 12 7 1 ; 21 | |
0021 ADDVV 12 12 11 | |
0022 ADDVN 12 12 2 ; 430 | |
0023 UGET 13 1 ; mandel | |
0024 KCDATA 14 3 | |
0025 MULVV 14 14 2 | |
0000 . . FUNCC ; ffi.meta.__mul | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 7 ; matrix.lua:455 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0011 | |
0003 . . . MULVV 4 0 1 | |
0004 . . . MULVV 5 2 3 | |
0005 . . . SUBVV 4 4 5 | |
0006 . . . MULVV 5 0 3 | |
0007 . . . MULVV 6 2 1 | |
0008 . . . ADDVV 5 5 6 | |
0009 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0026 ADDVV 14 1 14 | |
0000 . . FUNCC ; ffi.meta.__add | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 6 ; matrix.lua:447 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0007 | |
0003 . . . ADDVV 4 0 1 | |
0004 . . . ADDVV 5 2 3 | |
0005 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0027 CALL 13 2 2 | |
0000 . FUNCF 9 ; t.lua:73 | |
0001 . MOV 1 0 | |
0002 . KSHORT 2 80 | |
0003 . KSHORT 3 1 | |
0004 . MOV 4 2 | |
0005 . KSHORT 5 1 | |
0006 . JFORI 3 => 0018 | |
---- TRACE 20 IR | |
0001 num PVAL #64 | |
0002 num PVAL #65 | |
0003 + cdt CNEW +16 | |
0004 p64 ADD 0003 +8 | |
0005 num XSTORE 0004 0001 | |
0006 p64 ADD 0003 +16 | |
0007 num XSTORE 0006 0002 | |
0008 > nil GCSTEP | |
0009 > num SLOAD #3 T | |
0010 > p32 RETF proto: 0x0b9c6db0 [0x0b9c6e60] | |
0011 > cdt SLOAD #1 T | |
0012 > num SLOAD #13 T | |
0013 u16 FLOAD 0011 cdata.ctypeid | |
0014 > int EQ 0013 +4993 | |
0015 i64 CONV 0012 i64.num | |
0016 i64 BSHL 0015 +3 | |
0017 p64 ADD 0016 0011 | |
0018 p64 ADD 0017 +8 | |
0019 num XSTORE 0018 0009 | |
0020 num SLOAD #9 I | |
0021 num ADD 0020 +1 | |
0022 > num LE 0021 +10 | |
0023 num MUL 0021 +0.1 | |
0024 > num SLOAD #8 T | |
0025 num MUL 0024 +21 | |
0026 num ADD 0025 0021 | |
0027 num ADD 0026 +430 | |
0028 fun SLOAD #0 R | |
0029 > fun EQ 0028 t.lua:84 | |
0030 > p32 UREFC matrix.lua:23 #1 | |
0031 > tab ULOAD 0030 | |
0032 int FLOAD 0031 tab.hmask | |
0033 > int EQ 0032 +31 | |
0034 p32 FLOAD 0031 tab.node | |
0035 > p32 HREFK 0034 "istype" @13 | |
0036 > fun HLOAD 0035 | |
0037 > fun EQ 0036 ffi.istype | |
0038 num MUL 0023 +0 | |
0039 num ADD 0023 +0 | |
0040 } cdt CNEW +16 | |
0041 p64 ADD 0040 +8 | |
0042 } num XSTORE 0041 0038 | |
0043 p64 ADD 0040 +16 | |
0044 } num XSTORE 0043 0039 | |
0045 > num SLOAD #2 T | |
0046 num ADD 0045 0038 | |
0047 num ADD 0039 +0 | |
0048 > cdt CNEW +16 | |
0049 p64 ADD 0048 +8 | |
0050 num XSTORE 0049 0046 | |
0051 p64 ADD 0048 +16 | |
0052 num XSTORE 0051 0047 | |
---- TRACE 20 mcode 721 | |
11721c9c5 add rsp, -0x40 | |
11721c9c9 mov dword [0x0b9b1410], 0x14 | |
11721c9d4 movsd [rsp+0x38], xmm6 | |
11721c9da movsd [rsp+0x40], xmm7 | |
11721c9e0 mov edi, [0x0b9b14b0] | |
11721c9e7 mov esi, 0x18 | |
11721c9ec call 0x10b991370 ->lj_mem_newgco | |
11721c9f1 movzx ecx, byte [0x0b9b13e0] | |
11721c9f9 and ecx, +0x03 | |
11721c9fc or ecx, 0x00100a00 | |
11721ca02 mov [rax+0x4], ecx | |
11721ca05 mov [rsp+0x30], eax | |
11721ca09 movsd xmm7, [rsp+0x40] | |
11721ca0f movsd xmm6, [rsp+0x38] | |
11721ca15 movsd [rax+0x8], xmm6 | |
11721ca1a movsd [rax+0x10], xmm7 | |
11721ca1f mov edi, [0x0b9b13d8] | |
11721ca26 cmp edi, [0x0b9b13dc] | |
11721ca2d jb 0x11721ca46 | |
11721ca2f mov esi, 0x2 | |
11721ca34 mov edi, 0x0b9b13b8 | |
11721ca39 call 0x10b991060 ->lj_gc_step_jit | |
11721ca3e test eax, eax | |
11721ca40 jnz 0x117210010 ->0 | |
11721ca46 mov edi, [0x0b9b14b0] | |
11721ca4d mov edx, [0x0b9b14b4] | |
11721ca54 mov eax, [rsp+0x30] | |
11721ca58 movsd xmm7, [0x0ba64ad0] | |
11721ca61 cmp dword [rdx+0x14], 0xfffeffff | |
11721ca68 jnb 0x117210010 ->0 | |
11721ca6e movsd xmm6, [rdx+0x10] | |
11721ca73 cmp dword [rdx-0x4], 0x0b9c6e60 | |
11721ca7a jnz 0x117210014 ->1 | |
11721ca80 add edx, -0x70 | |
11721ca83 mov [0x0b9b14b4], edx | |
11721ca8a cmp dword [rdx+0x4], -0x0b | |
11721ca8e jnz 0x117210018 ->2 | |
11721ca94 mov ebx, [rdx] | |
11721ca96 cmp dword [rdx+0x64], 0xfffeffff | |
11721ca9d jnb 0x117210018 ->2 | |
11721caa3 movzx ebp, word [rbx+0x6] | |
11721caa7 cmp ebp, 0x1381 | |
11721caad jnz 0x117210018 ->2 | |
11721cab3 cvttsd2si rbp, [rdx+0x60] | |
11721cab9 movsd [rbx+rbp*8+0x8], xmm6 | |
11721cabf movsd xmm6, [rdx+0x40] | |
11721cac4 addsd xmm6, [0x0ba64a80] | |
11721cacd movsd [rsp+0x20], xmm6 | |
11721cad3 ucomisd xmm7, xmm6 | |
11721cad7 jb 0x11721001c ->3 | |
11721cadd movaps xmm7, xmm6 | |
11721cae0 mulsd xmm7, [0x0ba64ae0] | |
11721cae9 movsd [rsp+0x28], xmm7 | |
11721caef cmp dword [rdx+0x3c], 0xfffeffff | |
11721caf6 jnb 0x117210020 ->4 | |
11721cafc movsd xmm5, [rdx+0x38] | |
11721cb01 mulsd xmm5, [0x0ba64af8] | |
11721cb0a addsd xmm5, xmm6 | |
11721cb0e addsd xmm5, [0x0ba20420] | |
11721cb17 movsd [rsp+0x18], xmm5 | |
11721cb1d cmp dword [rdx-0x8], 0x0bac9188 | |
11721cb24 jnz 0x117210020 ->4 | |
11721cb2a cmp dword [0x0ba09c34], -0x0c | |
11721cb32 jnz 0x117210020 ->4 | |
11721cb38 mov ebp, [0x0ba09c30] | |
11721cb3f cmp dword [rbp+0x1c], +0x1f | |
11721cb43 jnz 0x117210020 ->4 | |
11721cb49 mov ebp, [rbp+0x14] | |
11721cb4c mov rsi, 0xfffffffb0b9b28c8 | |
11721cb56 cmp rsi, [rbp+0x140] | |
11721cb5d jnz 0x117210020 ->4 | |
11721cb63 cmp dword [rbp+0x13c], -0x09 | |
11721cb6a jnz 0x117210020 ->4 | |
11721cb70 cmp dword [rbp+0x138], 0x0b9c2500 | |
11721cb7a jnz 0x117210020 ->4 | |
11721cb80 movaps xmm1, xmm7 | |
11721cb83 mulsd xmm1, [0x0ba64ac0] | |
11721cb8c movaps xmm2, xmm7 | |
11721cb8f addsd xmm2, [0x0ba64ac0] | |
11721cb98 cmp dword [rdx+0xc], 0xfffeffff | |
11721cb9f jnb 0x117210020 ->4 | |
11721cba5 addsd xmm1, [rdx+0x8] | |
11721cbaa movsd [rsp+0x8], xmm1 | |
11721cbb0 addsd xmm2, [0x0ba64ac0] | |
11721cbb9 movsd [rsp+0x10], xmm2 | |
11721cbbf mov esi, 0x18 | |
11721cbc4 call 0x10b991370 ->lj_mem_newgco | |
11721cbc9 movzx ecx, byte [0x0b9b13e0] | |
11721cbd1 and ecx, +0x03 | |
11721cbd4 or ecx, 0x00100a00 | |
11721cbda mov [rax+0x4], ecx | |
11721cbdd mov edx, [0x0b9b14b4] | |
11721cbe4 movsd xmm7, [rsp+0x28] | |
11721cbea movsd xmm6, [rsp+0x20] | |
11721cbf0 movsd xmm5, [rsp+0x18] | |
11721cbf6 movsd xmm4, [0x0ba20430] | |
11721cbff movsd xmm3, [0x0ba64a80] | |
11721cc08 movsd xmm2, [rsp+0x10] | |
11721cc0e movsd xmm1, [rsp+0x8] | |
11721cc14 movsd [rax+0x8], xmm1 | |
11721cc19 movsd [rax+0x10], xmm2 | |
11721cc1e movsd [rdx+0xa0], xmm3 | |
11721cc26 movsd [rdx+0x98], xmm3 | |
11721cc2e movsd [rdx+0x90], xmm4 | |
11721cc36 movsd [rdx+0x88], xmm3 | |
11721cc3e movsd [rdx+0x80], xmm4 | |
11721cc46 mov dword [rdx+0x7c], 0xfffffff5 | |
11721cc4d mov [rdx+0x78], eax | |
11721cc50 mov dword [rdx+0x74], 0xfffffff5 | |
11721cc57 mov [rdx+0x70], eax | |
11721cc5a mov dword [rdx+0x6c], 0x0b9c6e60 | |
11721cc61 mov dword [rdx+0x68], 0x0bac9148 | |
11721cc68 movsd [rdx+0x60], xmm5 | |
11721cc6d movsd [rdx+0x58], xmm6 | |
11721cc72 movsd [rdx+0x40], xmm6 | |
11721cc77 movsd [rdx+0x10], xmm7 | |
11721cc7c mov dword [rdx-0x8], 0x0bac9188 | |
11721cc83 add edx, +0x70 | |
11721cc86 mov [0x0b9b14b4], edx | |
11721cc8d add rsp, +0x40 | |
11721cc91 jmp 0x11721d4a7 | |
---- TRACE 20 stop -> 13 | |
---- TRACE 21 start 18/3 t.lua:88 | |
0030 FORL 4 => 0014 | |
0014 MULVN 1 7 0 ; 0.1 | |
0015 KSHORT 8 -10 | |
0016 KSHORT 9 10 | |
0017 KSHORT 10 1 | |
0018 FORI 8 => 0030 | |
0019 MULVN 2 11 0 ; 0.1 | |
0020 MULVN 12 7 1 ; 21 | |
0021 ADDVV 12 12 11 | |
0022 ADDVN 12 12 2 ; 430 | |
0023 UGET 13 1 ; mandel | |
0024 KCDATA 14 3 | |
0025 MULVV 14 14 2 | |
0000 . . FUNCC ; ffi.meta.__mul | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 7 ; matrix.lua:455 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0011 | |
0003 . . . MULVV 4 0 1 | |
0004 . . . MULVV 5 2 3 | |
0005 . . . SUBVV 4 4 5 | |
0006 . . . MULVV 5 0 3 | |
0007 . . . MULVV 6 2 1 | |
0008 . . . ADDVV 5 5 6 | |
0009 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0026 ADDVV 14 1 14 | |
0000 . . FUNCC ; ffi.meta.__add | |
0000 . . FUNCF 19 ; matrix.lua:469 | |
0001 . . UGET 2 0 ; get_typeid | |
0002 . . MOV 3 0 | |
0003 . . CALL 2 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . KPRI 1 2 | |
0007 . . . KPRI 2 2 | |
0008 . . . RET 1 3 | |
0004 . . UGET 4 0 ; get_typeid | |
0005 . . MOV 5 1 | |
0006 . . CALL 4 3 2 | |
0000 . . . JFUNCF 4 12 ; matrix.lua:23 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . UGET 1 1 ; ffi | |
0011 . . . TGETS 1 1 0 ; "istype" | |
0012 . . . UGET 2 2 ; gsl_complex | |
0013 . . . MOV 3 0 | |
0014 . . . CALL 1 2 3 | |
0000 . . . . FUNCC ; ffi.istype | |
0015 . . . ISF 1 | |
0016 . . . JMP 2 => 0021 | |
0017 . . . KPRI 1 1 | |
0018 . . . KPRI 2 2 | |
0019 . . . RET 1 3 | |
0007 . . IST 5 | |
0008 . . JMP 6 => 0015 | |
0015 . . ISF 3 | |
0016 . . JMP 6 => 0036 | |
0017 . . ISF 5 | |
0018 . . JMP 6 => 0036 | |
0019 . . UGET 6 2 ; cartesian | |
0020 . . MOV 7 0 | |
0021 . . CALL 6 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0008 . . . . KPRI 1 2 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0006 . . . MOV 1 0 | |
0007 . . . KSHORT 2 0 | |
0008 . . . RET 1 3 | |
0022 . . UGET 8 2 ; cartesian | |
0023 . . MOV 9 1 | |
0024 . . CALL 8 3 2 | |
0000 . . . JFUNCF 3 11 ; matrix.lua:36 | |
0001 . . . UGET 1 0 ; is_real | |
0002 . . . MOV 2 0 | |
0003 . . . CALL 1 2 2 | |
0000 . . . . JFUNCF 3 10 ; check.lua:15 | |
0001 . . . . UGET 1 0 ; type | |
0002 . . . . MOV 2 0 | |
0003 . . . . CALL 1 2 2 | |
0000 . . . . . FUNCC ; type | |
0004 . . . . ISEQS 1 0 ; "number" | |
0005 . . . . JMP 1 => 0008 | |
0006 . . . . KPRI 1 1 | |
0007 . . . . JMP 2 => 0009 | |
0009 . . . . RET1 1 2 | |
0004 . . . ISF 1 | |
0005 . . . JMP 2 => 0010 | |
0010 . . . TGETB 1 0 0 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETB 2 0 1 | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . RET 1 3 | |
0025 . . UGET 10 3 ; scalar_op | |
0026 . . MOV 11 6 | |
0027 . . MOV 12 8 | |
0028 . . MOV 13 7 | |
0029 . . MOV 14 9 | |
0030 . . CALL 10 3 5 | |
0000 . . . FUNCF 6 ; matrix.lua:447 | |
0001 . . . ISF 2 | |
0002 . . . JMP 4 => 0007 | |
0003 . . . ADDVV 4 0 1 | |
0004 . . . ADDVV 5 2 3 | |
0005 . . . RET 4 3 | |
0031 . . UGET 12 4 ; gsl_complex | |
0032 . . MOV 13 10 | |
0033 . . MOV 14 11 | |
0034 . . CALLT 12 3 | |
0000 . . FUNCC ; ffi.meta.__call | |
0027 CALL 13 2 2 | |
0000 . FUNCF 9 ; t.lua:73 | |
0001 . MOV 1 0 | |
0002 . KSHORT 2 80 | |
0003 . KSHORT 3 1 | |
0004 . MOV 4 2 | |
0005 . KSHORT 5 1 | |
0006 . JFORI 3 => 0018 | |
---- TRACE 21 IR | |
0001 num SLOAD #5 I | |
0002 num ADD 0001 +1 | |
0003 > num LE 0002 +5 | |
0004 num MUL 0002 +0.1 | |
0005 num MUL 0002 +21 | |
0006 num ADD 0005 -10 | |
0007 num ADD 0006 +430 | |
0008 fun SLOAD #0 R | |
0009 > fun EQ 0008 t.lua:84 | |
0010 > p32 UREFC matrix.lua:23 #1 | |
0011 > tab ULOAD 0010 | |
0012 int FLOAD 0011 tab.hmask | |
0013 > int EQ 0012 +31 | |
0014 p32 FLOAD 0011 tab.node | |
0015 > p32 HREFK 0014 "istype" @13 | |
0016 > fun HLOAD 0015 | |
0017 > fun EQ 0016 ffi.istype | |
0018 } cdt CNEW +16 | |
0019 p64 ADD 0018 +8 | |
0020 } num XSTORE 0019 -0 | |
0021 p64 ADD 0018 +16 | |
0022 } num XSTORE 0021 -1 | |
0023 num ADD 0004 -0 | |
0024 > cdt CNEW +16 | |
0025 p64 ADD 0024 +8 | |
0026 num XSTORE 0025 0023 | |
0027 p64 ADD 0024 +16 | |
0028 num XSTORE 0027 -1 | |
---- TRACE 21 mcode 569 | |
11721c789 mov eax, [0x0b9b14b0] | |
11721c790 mov eax, [rax+0x20] | |
11721c793 sub eax, [0x0b9b14b4] | |
11721c79a cmp eax, 0xb8 | |
11721c7a0 jb 0x11721001c ->3 | |
11721c7a6 mov dword [0x0b9b1410], 0x15 | |
11721c7b1 mov edi, [0x0b9b13d8] | |
11721c7b8 cmp edi, [0x0b9b13dc] | |
11721c7bf jb 0x11721c7d8 | |
11721c7c1 mov esi, 0x1 | |
11721c7c6 mov edi, 0x0b9b13b8 | |
11721c7cb call 0x10b991060 ->lj_gc_step_jit | |
11721c7d0 test eax, eax | |
11721c7d2 jnz 0x117210010 ->0 | |
11721c7d8 mov edi, [0x0b9b14b0] | |
11721c7df mov edx, [0x0b9b14b4] | |
11721c7e6 movsd xmm7, [0x0ba64ad8] | |
11721c7ef movsd xmm5, [rdx+0x20] | |
11721c7f4 addsd xmm5, [0x0ba64a80] | |
11721c7fd movsd [rsp+0x10], xmm5 | |
11721c803 ucomisd xmm7, xmm5 | |
11721c807 jb 0x117210014 ->1 | |
11721c80d movaps xmm7, xmm5 | |
11721c810 mulsd xmm7, [0x0ba64ae0] | |
11721c819 movsd [rsp+0x18], xmm7 | |
11721c81f movaps xmm1, xmm5 | |
11721c822 mulsd xmm1, [0x0ba64af8] | |
11721c82b addsd xmm1, [0x0ba64ae8] | |
11721c834 addsd xmm1, [0x0ba20420] | |
11721c83d movsd [rsp+0x8], xmm1 | |
11721c843 cmp dword [rdx-0x8], 0x0bac9188 | |
11721c84a jnz 0x117210018 ->2 | |
11721c850 cmp dword [0x0ba09c34], -0x0c | |
11721c858 jnz 0x117210018 ->2 | |
11721c85e mov ebp, [0x0ba09c30] | |
11721c865 cmp dword [rbp+0x1c], +0x1f | |
11721c869 jnz 0x117210018 ->2 | |
11721c86f mov ebp, [rbp+0x14] | |
11721c872 mov rsi, 0xfffffffb0b9b28c8 | |
11721c87c cmp rsi, [rbp+0x140] | |
11721c883 jnz 0x117210018 ->2 | |
11721c889 cmp dword [rbp+0x13c], -0x09 | |
11721c890 jnz 0x117210018 ->2 | |
11721c896 cmp dword [rbp+0x138], 0x0b9c2500 | |
11721c8a0 jnz 0x117210018 ->2 | |
11721c8a6 movaps xmm15, xmm7 | |
11721c8aa addsd xmm15, [0x0ba20428] | |
11721c8b4 movsd [rsp+0x20], xmm15 | |
11721c8bb mov esi, 0x18 | |
11721c8c0 call 0x10b991370 ->lj_mem_newgco | |
11721c8c5 movzx ecx, byte [0x0b9b13e0] | |
11721c8cd and ecx, +0x03 | |
11721c8d0 or ecx, 0x00100a00 | |
11721c8d6 mov [rax+0x4], ecx | |
11721c8d9 mov edx, [0x0b9b14b4] | |
11721c8e0 movsd xmm15, [rsp+0x20] | |
11721c8e7 movsd xmm7, [rsp+0x18] | |
11721c8ed movsd xmm6, [0x0ba64af0] | |
11721c8f6 movsd xmm5, [rsp+0x10] | |
11721c8fc movsd xmm4, [0x0ba64ae8] | |
11721c905 movsd xmm3, [0x0ba64ad0] | |
11721c90e movsd xmm2, [0x0ba64a80] | |
11721c917 movsd xmm1, [rsp+0x8] | |
11721c91d movsd xmm0, [0x0ba20430] | |
11721c926 movsd [rax+0x8], xmm15 | |
11721c92c movsd [rax+0x10], xmm6 | |
11721c931 movsd [rdx+0xa0], xmm2 | |
11721c939 movsd [rdx+0x98], xmm2 | |
11721c941 movsd [rdx+0x90], xmm0 | |
11721c949 movsd [rdx+0x88], xmm2 | |
11721c951 movsd [rdx+0x80], xmm0 | |
11721c959 mov dword [rdx+0x7c], 0xfffffff5 | |
11721c960 mov [rdx+0x78], eax | |
11721c963 mov dword [rdx+0x74], 0xfffffff5 | |
11721c96a mov [rdx+0x70], eax | |
11721c96d mov dword [rdx+0x6c], 0x0b9c6e60 | |
11721c974 mov dword [rdx+0x68], 0x0bac9148 | |
11721c97b movsd [rdx+0x60], xmm1 | |
11721c980 movsd [rdx+0x58], xmm4 | |
11721c985 movsd [rdx+0x50], xmm2 | |
11721c98a movsd [rdx+0x48], xmm3 | |
11721c98f movsd [rdx+0x40], xmm4 | |
11721c994 movsd [rdx+0x38], xmm5 | |
11721c999 movsd [rdx+0x20], xmm5 | |
11721c99e movsd [rdx+0x10], xmm6 | |
11721c9a3 movsd [rdx+0x8], xmm7 | |
11721c9a8 mov dword [rdx-0x8], 0x0bac9188 | |
11721c9af add edx, +0x70 | |
11721c9b2 mov [0x0b9b14b4], edx | |
11721c9b9 add rsp, +0x40 | |
11721c9bd jmp 0x11721d4a7 | |
---- TRACE 21 stop -> 13 | |
---- TRACE 22 start matrix.lua:455 | |
0001 ISF 2 | |
0002 JMP 4 => 0011 | |
0003 MULVV 4 0 1 | |
0004 MULVV 5 2 3 | |
0005 SUBVV 4 4 5 | |
0006 MULVV 5 0 3 | |
0007 MULVV 6 2 1 | |
0008 ADDVV 5 5 6 | |
0009 RET 4 3 | |
---- TRACE 22 IR | |
0001 > num SLOAD #3 T | |
0002 > num SLOAD #1 T | |
0003 > num SLOAD #2 T | |
0004 num MUL 0003 0002 | |
0005 > num SLOAD #4 T | |
0006 num MUL 0005 0001 | |
0007 num SUB 0004 0006 | |
0008 num MUL 0005 0002 | |
0009 num MUL 0003 0001 | |
0010 num ADD 0009 0008 | |
---- TRACE 22 mcode 140 | |
11721c6f6 mov dword [0x0b9b1410], 0x16 | |
11721c701 cmp dword [rdx+0x14], 0xfffeffff | |
11721c708 jnb 0x117210010 ->0 | |
11721c70e movsd xmm6, [rdx+0x10] | |
11721c713 cmp dword [rdx+0x4], 0xfffeffff | |
11721c71a jnb 0x117210010 ->0 | |
11721c720 movsd xmm5, [rdx] | |
11721c724 cmp dword [rdx+0xc], 0xfffeffff | |
11721c72b jnb 0x117210010 ->0 | |
11721c731 movsd xmm4, [rdx+0x8] | |
11721c736 movaps xmm7, xmm4 | |
11721c739 mulsd xmm7, xmm5 | |
11721c73d cmp dword [rdx+0x1c], 0xfffeffff | |
11721c744 jnb 0x117210010 ->0 | |
11721c74a movsd xmm3, [rdx+0x18] | |
11721c74f movaps xmm2, xmm3 | |
11721c752 mulsd xmm2, xmm6 | |
11721c756 subsd xmm7, xmm2 | |
11721c75a mulsd xmm5, xmm3 | |
11721c75e mulsd xmm6, xmm4 | |
11721c762 addsd xmm6, xmm5 | |
11721c766 movsd [rdx+0x28], xmm6 | |
11721c76b movsd [rdx+0x20], xmm7 | |
11721c770 xor eax, eax | |
11721c772 mov ebx, 0x0b9c44ec | |
11721c777 mov r14d, 0x0b9b1f98 | |
11721c77d jmp 0x10b98feb1 | |
---- TRACE 22 stop -> return | |
---- TRACE 23 start t.lua:101 | |
0048 TGETV 22 16 21 | |
0000 . . FUNCC ; ffi.meta.__index | |
0049 ADDVV 17 17 22 | |
0050 FORL 18 => 0048 | |
---- TRACE 23 IR | |
0001 int SLOAD #19 CI | |
0002 > cdt SLOAD #17 T | |
0003 u16 FLOAD 0002 cdata.ctypeid | |
0004 > int EQ 0003 +4993 | |
0005 i64 BSHL 0001 +3 | |
0006 p64 ADD 0005 0002 | |
0007 p64 ADD 0006 +8 | |
0008 num XLOAD 0007 | |
0009 > num SLOAD #18 T | |
0010 + num ADD 0009 0008 | |
0011 + int ADD 0001 +1 | |
0012 > int LE 0011 +545 | |
0013 ------ LOOP ------------ | |
0014 i64 BSHL 0011 +3 | |
0015 p64 ADD 0014 0002 | |
0016 p64 ADD 0015 +8 | |
0017 num XLOAD 0016 | |
0018 + num ADD 0017 0010 | |
0019 + int ADD 0011 +1 | |
0020 > int LE 0019 +545 | |
0021 int PHI 0011 0019 | |
0022 num PHI 0010 0018 | |
---- TRACE 23 mcode 121 | |
11721c67d mov dword [0x0b9b1410], 0x17 | |
11721c688 cvttsd2si ebp, [rdx+0x90] | |
11721c690 cmp dword [rdx+0x84], -0x0b | |
11721c697 jnz 0x117210010 ->0 | |
11721c69d mov eax, [rdx+0x80] | |
11721c6a3 movzx ecx, word [rax+0x6] | |
11721c6a7 cmp ecx, 0x1381 | |
11721c6ad jnz 0x117210010 ->0 | |
11721c6b3 movsd xmm7, [rax+rbp*8+0x8] | |
11721c6b9 cmp dword [rdx+0x8c], 0xfffeffff | |
11721c6c3 jnb 0x117210010 ->0 | |
11721c6c9 addsd xmm7, [rdx+0x88] | |
11721c6d1 add ebp, +0x01 | |
11721c6d4 cmp ebp, 0x221 | |
11721c6da jg 0x117210014 ->1 | |
->LOOP: | |
11721c6e0 addsd xmm7, [rax+rbp*8+0x8] | |
11721c6e6 add ebp, +0x01 | |
11721c6e9 cmp ebp, 0x221 | |
11721c6ef jle 0x11721c6e0 ->LOOP | |
11721c6f1 jmp 0x11721001c ->3 | |
---- TRACE 23 stop -> loop | |
---- TRACE 24 start matrix.lua:447 | |
0001 ISF 2 | |
0002 JMP 4 => 0007 | |
0003 ADDVV 4 0 1 | |
0004 ADDVV 5 2 3 | |
0005 RET 4 3 | |
---- TRACE 24 IR | |
0001 > num SLOAD #3 T | |
0002 > num SLOAD #1 T | |
0003 > num SLOAD #2 T | |
0004 num ADD 0003 0002 | |
0005 > num SLOAD #4 T | |
0006 num ADD 0005 0001 | |
---- TRACE 24 mcode 110 | |
11721c608 mov dword [0x0b9b1410], 0x18 | |
11721c613 cmp dword [rdx+0x14], 0xfffeffff | |
11721c61a jnb 0x117210010 ->0 | |
11721c620 movsd xmm6, [rdx+0x10] | |
11721c625 cmp dword [rdx+0x4], 0xfffeffff | |
11721c62c jnb 0x117210010 ->0 | |
11721c632 movsd xmm7, [rdx] | |
11721c636 cmp dword [rdx+0xc], 0xfffeffff | |
11721c63d jnb 0x117210010 ->0 | |
11721c643 addsd xmm7, [rdx+0x8] | |
11721c648 cmp dword [rdx+0x1c], 0xfffeffff | |
11721c64f jnb 0x117210010 ->0 | |
11721c655 addsd xmm6, [rdx+0x18] | |
11721c65a movsd [rdx+0x28], xmm6 | |
11721c65f movsd [rdx+0x20], xmm7 | |
11721c664 xor eax, eax | |
11721c666 mov ebx, 0x0b9c77a4 | |
11721c66b mov r14d, 0x0b9b1f98 | |
11721c671 jmp 0x10b98feb1 | |
---- TRACE 24 stop -> return | |
lua,mandel,0.24 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment