Last active
August 29, 2015 14:02
-
-
Save lukego/8d9ac096529e5c6ad492 to your computer and use it in GitHub Desktop.
Snabb `loadgen` benchmark analysis
This file contains hidden or 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
Exerpt from `perf top`: | |
``` | |
25.29% perf-26553.map [.] TRACE_7::lib/virtio/net_device.lua:161 | |
22.10% perf-26553.map [.] TRACE_19::lib/virtio/net_device.lua:236 | |
7.63% perf-26553.map [.] TRACE_15::apps/intel/intel_app.lua:77 | |
6.37% snabb [.] lj_alloc_free | |
6.22% snabb [.] release_unused_segments | |
4.73% perf-26553.map [.] TRACE_14::apps/intel/intel_app.lua:92 | |
3.93% snabb [.] packet_reset | |
2.60% snabb [.] lj_mem_newgco | |
2.35% snabb [.] lj_alloc_malloc | |
2.19% snabb [.] link_receive | |
1.87% snabb [.] lj_cdata_free | |
1.69% snabb [.] gc_sweep | |
``` | |
Application and profiler output: | |
``` | |
Processed 200.0 million packets in 48.33 seconds | |
Made 386,587 breaths: 517.35 packets per breath; 125.01us per breath | |
Rate(Mpps): 4.138 | |
82% Compiled | |
-- 24% net_device.lua:vm_buffer | |
-- 24% tlb.lua:lookup | |
-- 9% net_device.lua:get_transmit_buffers_from_vm | |
-- 7% net_device.lua:transmit_packets_to_vm | |
-- 7% packet.lua:free | |
-- 5% buffer.lua:free | |
-- 4% packet.lua:add_iovec | |
-- 4% intel10g.lua:can_add_receive_buffer | |
-- 4% freelist.lua:add | |
16% Garbage Collector | |
-- 100% net_device.lua:transmit_packets_to_vm | |
``` | |
Output from `perf stat`: | |
``` | |
Performance counter stats for 'taskset -c 1 /home/luke/hacking/snabbswitch/src/snabb -jdump x /home/luke/hacking/snabbswitch/src/designs/nfv/nfv 200e6': | |
106,355,440 cache-misses # 2.279 M/sec [56.98%] | |
184,771,534 branch-misses # 3.959 M/sec [49.98%] | |
134,792,021 dTLB-misses # 2.888 M/sec [49.98%] | |
46667.143713 task-clock (msec) # 0.699 CPUs utilized | |
183,953,105,470 instructions # 1.42 insns per cycle | |
# 0.34 stalled cycles per insn [64.31%] | |
129,404,729,440 cycles # 2.773 GHz [64.31%] | |
63,190,494,263 stalled-cycles-frontend # 48.83% frontend cycles idle [64.30%] | |
35,301,420,053 stalled-cycles-backend # 27.28% backend cycles idle [64.29%] | |
7,190 context-switches # 0.154 K/sec | |
0 cpu-migrations # 0.000 K/sec | |
432,345 page-faults # 0.009 M/sec | |
66.730344885 seconds time elapsed | |
``` |
This file contains hidden or 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 19 start net_device.lua:236 | |
0018 UGET 3 0 ; link | |
0019 TGETS 3 3 5 ; "receive" | |
0020 MOV 4 1 | |
0021 CALL 3 2 2 | |
0000 . FUNCF 4 ; link.lua:21 | |
0001 . UGET 1 0 ; C | |
0002 . TGETS 1 1 0 ; "link_receive" | |
0000 . . . FUNCC ; ffi.clib.__index | |
0003 . MOV 2 0 | |
0004 . CALLT 1 2 | |
0000 . FUNCC ; ffi.meta.__call | |
0022 TGETS 4 3 6 ; "iovecs" | |
0000 . . FUNCC ; ffi.meta.__index | |
0023 TGETB 4 4 0 | |
0000 . . FUNCC ; ffi.meta.__index | |
0024 MOV 6 0 | |
0025 TGETS 5 0 7 ; "vm_buffer" | |
0026 MOV 7 4 | |
0027 CALL 5 3 3 | |
0000 . JFUNCF 10 18 ; net_device.lua:207 | |
0001 . KPRI 2 2 | |
0002 . TGETS 3 1 0 ; "buffer" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0003 . TGETS 4 3 1 ; "origin" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0004 . TGETS 4 4 2 ; "type" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0005 . UGET 5 0 ; C | |
0006 . TGETS 5 5 3 ; "BUFFER_ORIGIN_VIRTIO" | |
0000 . . . FUNCC ; ffi.clib.__index | |
0007 . ISEQV 4 5 | |
0008 . JMP 4 => 0034 | |
0000 . . . FUNCC ; ffi.meta.__eq | |
0034 . MOV 4 2 | |
0035 . MOV 5 3 | |
0036 . RET 4 3 | |
0028 GSET 6 8 ; "b" | |
0029 MOV 2 5 | |
0030 TGETS 5 0 9 ; "txring" | |
0031 TGETS 5 5 10 ; "used" | |
0032 TGETS 5 5 11 ; "ring" | |
0000 . . FUNCC ; ffi.meta.__index | |
0033 TGETS 6 0 12 ; "txused" | |
0034 TGETS 7 0 13 ; "tx_vring_num" | |
0035 MODVV 6 6 7 | |
0036 TGETV 5 5 6 | |
0000 . . FUNCC ; ffi.meta.__index | |
0037 GGET 6 8 ; "b" | |
0038 TGETS 6 6 14 ; "origin" | |
0000 . . FUNCC ; ffi.meta.__index | |
0039 TGETS 6 6 15 ; "info" | |
0000 . . FUNCC ; ffi.meta.__index | |
0040 TGETS 6 6 16 ; "virtio" | |
0000 . . FUNCC ; ffi.meta.__index | |
0041 TGETS 7 6 18 ; "header_id" | |
0000 . . FUNCC ; ffi.meta.__index | |
0042 TSETS 7 5 17 ; "id" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0043 UGET 7 1 ; virtio_net_hdr_size | |
0044 TGETS 8 4 20 ; "length" | |
0000 . . FUNCC ; ffi.meta.__index | |
0045 ADDVV 7 7 8 | |
0046 TSETS 7 5 19 ; "len" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0047 TGETS 7 0 12 ; "txused" | |
0048 ADDVN 7 7 0 ; 1 | |
0049 TSETS 7 0 12 ; "txused" | |
0050 TGETS 7 0 12 ; "txused" | |
0051 ISNEN 7 1 ; 65536 | |
0052 JMP 7 => 0055 | |
0055 UGET 7 2 ; packet | |
0056 TGETS 7 7 21 ; "deref" | |
0057 MOV 8 3 | |
0058 CALL 7 1 2 | |
0000 . FUNCF 4 ; packet.lua:189 | |
0001 . IST 1 | |
0002 . JMP 2 => 0004 | |
0003 . KSHORT 1 1 | |
0004 . TGETS 2 0 0 ; "refcount" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0005 . KSHORT 3 0 | |
0006 . ISGE 3 2 | |
0007 . JMP 2 => 0018 | |
0008 . TGETS 2 0 0 ; "refcount" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0009 . ISNEV 1 2 | |
0010 . JMP 2 => 0015 | |
0011 . GGET 2 1 ; "free" | |
0012 . MOV 3 0 | |
0013 . CALL 2 1 2 | |
0000 . . FUNCF 7 ; packet.lua:207 | |
0001 . . KSHORT 1 0 | |
0002 . . TGETS 2 0 0 ; "niovecs" | |
0000 . . . . FUNCC ; ffi.meta.__index | |
0003 . . SUBVN 2 2 0 ; 1 | |
0004 . . KSHORT 3 1 | |
0005 . . FORI 1 => 0013 | |
0006 . . UGET 5 0 ; buffer | |
0007 . . TGETS 5 5 1 ; "free" | |
0008 . . TGETS 6 0 2 ; "iovecs" | |
0000 . . . . FUNCC ; ffi.meta.__index | |
0009 . . TGETV 6 6 4 | |
0000 . . . . FUNCC ; ffi.meta.__index | |
0010 . . TGETS 6 6 3 ; "buffer" | |
0000 . . . . FUNCC ; ffi.meta.__index | |
0011 . . CALL 5 1 2 | |
0000 . . . FUNCF 4 ; buffer.lua:39 | |
0001 . . . TGETS 1 0 0 ; "origin" | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0002 . . . TGETS 1 1 1 ; "type" | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0003 . . . UGET 2 0 ; C | |
0004 . . . TGETS 2 2 2 ; "BUFFER_ORIGIN_VIRTIO" | |
0000 . . . . . FUNCC ; ffi.clib.__index | |
0005 . . . ISNEV 1 2 | |
0006 . . . JMP 1 => 0018 | |
0000 . . . . . FUNCC ; ffi.meta.__eq | |
0007 . . . GGET 1 3 ; "virtio_devices" | |
0008 . . . TGETS 2 0 0 ; "origin" | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0009 . . . TGETS 2 2 4 ; "info" | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0010 . . . TGETS 2 2 5 ; "virtio" | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0011 . . . TGETS 2 2 6 ; "device_id" | |
0000 . . . . . FUNCC ; ffi.meta.__index | |
0012 . . . TGETV 1 1 2 | |
0013 . . . MOV 2 1 | |
0014 . . . TGETS 1 1 7 ; "return_virtio_buffer" | |
0015 . . . MOV 3 0 | |
0016 . . . CALL 1 1 3 | |
0000 . . . . JFUNCF 5 16 ; net_device.lua:282 | |
0001 . . . . UGET 2 0 ; freelist | |
0002 . . . . TGETS 2 2 0 ; "add" | |
0003 . . . . TGETS 3 0 1 ; "buffer_recs" | |
0004 . . . . MOV 4 1 | |
0005 . . . . CALL 2 1 3 | |
0000 . . . . . JFUNCF 4 6 ; freelist.lua:12 | |
0001 . . . . . TGETS 2 0 0 ; "list" | |
0002 . . . . . TGETS 3 0 1 ; "nfree" | |
0003 . . . . . TSETV 1 2 3 | |
0000 . . . . . . . FUNCC ; ffi.meta.__newindex | |
0004 . . . . . TGETS 2 0 1 ; "nfree" | |
0005 . . . . . ADDVN 2 2 0 ; 1 | |
0006 . . . . . TSETS 2 0 1 ; "nfree" | |
0007 . . . . . RET0 0 1 | |
0006 . . . . TGETS 2 1 2 ; "origin" | |
0000 . . . . . . FUNCC ; ffi.meta.__index | |
0007 . . . . TGETS 2 2 3 ; "info" | |
0000 . . . . . . FUNCC ; ffi.meta.__index | |
0008 . . . . TGETS 2 2 4 ; "virtio" | |
0000 . . . . . . FUNCC ; ffi.meta.__index | |
0009 . . . . TGETS 2 2 5 ; "ring_id" | |
0000 . . . . . . FUNCC ; ffi.meta.__index | |
0010 . . . . ISNEN 2 0 ; 1 | |
0011 . . . . JMP 2 => 0040 | |
0040 . . . . RET0 0 1 | |
0017 . . . JMP 1 => 0023 | |
0023 . . . RET0 0 1 | |
0012 . . FORL 1 => 0006 | |
0013 . . UGET 1 1 ; C | |
0014 . . TGETS 1 1 4 ; "packet_reset" | |
0000 . . . . FUNCC ; ffi.clib.__index | |
0015 . . MOV 2 0 | |
0016 . . CALL 1 1 2 | |
0000 . . . FUNCC ; ffi.meta.__call | |
0017 . . JMP 1 => 0030 | |
0030 . . UGET 1 2 ; freelist | |
0031 . . TGETS 1 1 10 ; "add" | |
0032 . . GGET 2 11 ; "packets_fl" | |
0033 . . MOV 3 0 | |
0034 . . CALL 1 1 3 | |
0000 . . . JFUNCF 4 6 ; freelist.lua:12 | |
0001 . . . TGETS 2 0 0 ; "list" | |
0002 . . . TGETS 3 0 1 ; "nfree" | |
0003 . . . TSETV 1 2 3 | |
0000 . . . . . FUNCC ; ffi.meta.__newindex | |
0004 . . . TGETS 2 0 1 ; "nfree" | |
0005 . . . ADDVN 2 2 0 ; 1 | |
0006 . . . TSETS 2 0 1 ; "nfree" | |
0007 . . . RET0 0 1 | |
0035 . . RET0 0 1 | |
0014 . JMP 2 => 0018 | |
0018 . RET0 0 1 | |
0059 JMP 3 => 0009 | |
0009 UGET 3 0 ; link | |
0010 TGETS 3 3 4 ; "empty" | |
0011 MOV 4 1 | |
0012 CALL 3 2 2 | |
0000 . JFUNCF 3 8 ; link.lua:69 | |
0001 . TGETS 1 0 0 ; "read" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0002 . TGETS 2 0 1 ; "write" | |
0000 . . . FUNCC ; ffi.meta.__index | |
0003 . ISEQV 1 2 | |
0004 . JMP 1 => 0007 | |
0005 . KPRI 1 1 | |
0006 . JMP 2 => 0008 | |
0008 . RET1 1 2 | |
0013 IST 3 | |
0014 JMP 3 => 0060 | |
0015 ISF 2 | |
0016 JMP 3 => 0060 | |
0017 LOOP 3 => 0060 | |
---- TRACE 19 IR | |
0001 fun SLOAD #0 R | |
0002 > p32 UREFC 0001 #0 | |
0003 > tab ULOAD 0002 | |
0004 int FLOAD 0003 tab.hmask | |
0005 > int EQ 0004 +15 | |
0006 p32 FLOAD 0003 tab.node | |
0007 > p32 HREFK 0006 "receive" @1 | |
0008 > fun HLOAD 0007 | |
0009 > cdt SLOAD #2 T | |
0010 > fun EQ 0008 link.lua:21 | |
0011 > nil PROF | |
0012 > p32 UREFC link.lua:21 #0 | |
0013 > udt ULOAD 0012 | |
0014 > p32 EQ 0013 [0x411a2f38] | |
0015 u16 FLOAD 0009 cdata.ctypeid | |
0016 > int EQ 0015 +175 | |
0017 p64 ADD 0009 +8 | |
0018 p64 CALLXS [0x407765](0017) | |
0019 } cdt CNEWI +172 0018 | |
0020 > nil PROF | |
0022 } cdt CNEWI +600 0018 | |
0023 > tab SLOAD #1 T | |
0024 p32 HREF 0023 "vm_buffer" | |
0025 > p32 EQ 0024 [0x41196458] | |
0026 tab FLOAD 0023 tab.meta | |
0027 > tab NE 0026 [NULL] | |
0028 int FLOAD 0026 tab.hmask | |
0029 > int EQ 0028 +1 | |
0030 p32 FLOAD 0026 tab.node | |
0031 > p32 HREFK 0030 "__index" @1 | |
0032 > tab HLOAD 0031 | |
0033 int FLOAD 0032 tab.hmask | |
0034 > int EQ 0033 +31 | |
0035 p32 FLOAD 0032 tab.node | |
0036 > p32 HREFK 0035 "vm_buffer" @12 | |
0037 > fun HLOAD 0036 | |
0038 > fun EQ 0037 net_device.lua:207 | |
0039 > nil PROF | |
0040 p64 XLOAD 0018 | |
0041 > cdt CNEWI +212 0040 | |
0042 p64 ADD 0040 +24 | |
0044 u32 XLOAD 0042 | |
0046 > p32 UREFC net_device.lua:207 #0 | |
0047 > udt ULOAD 0046 | |
0048 > p32 EQ 0047 [0x411a2f38] | |
0049 > u32 EQ 0044 +1 | |
0050 > nil PROF | |
0051 tab FLOAD 0001 func.env | |
0052 int FLOAD 0051 tab.hmask | |
0053 > int EQ 0052 +7 | |
0054 p32 FLOAD 0051 tab.node | |
0055 > p32 HREFK 0054 "b" @5 | |
0056 > cdt HLOAD 0055 | |
0057 cdt HSTORE 0055 0041 | |
0058 nil TBAR 0051 | |
0059 int FLOAD 0023 tab.hmask | |
0060 > int EQ 0059 +15 | |
0061 p32 FLOAD 0023 tab.node | |
0062 > p32 HREFK 0061 "txring" @11 | |
0063 > tab HLOAD 0062 | |
0064 int FLOAD 0063 tab.hmask | |
0065 > int EQ 0064 +3 | |
0066 p32 FLOAD 0063 tab.node | |
0067 > p32 HREFK 0066 "used" @3 | |
0068 > cdt HLOAD 0067 | |
0069 u16 FLOAD 0068 cdata.ctypeid | |
0070 > int EQ 0069 +591 | |
0071 p64 FLOAD 0068 cdata.ptr | |
0074 > p32 HREFK 0061 "txused" @2 | |
0075 > num HLOAD 0074 | |
0076 > p32 HREFK 0061 "tx_vring_num" @14 | |
0077 > num HLOAD 0076 | |
0078 num DIV 0075 0077 | |
0079 num FPMATH 0078 floor | |
0080 num MUL 0079 0077 | |
0081 num SUB 0075 0080 | |
0082 i64 CONV 0081 i64.num | |
0083 i64 BSHL 0082 +3 | |
0084 p64 ADD 0083 0071 | |
0085 p64 ADD 0084 +4 | |
0086 } cdt CNEWI +603 0085 | |
0087 p64 ADD 0040 +32 | |
0089 } cdt CNEWI +597 0087 | |
0090 p64 ADD 0040 +36 | |
0091 i16 XLOAD 0090 | |
0092 u32 XSTORE 0085 0091 | |
0093 > fun EQ 0001 net_device.lua:231 | |
0094 p64 ADD 0018 +12 | |
0095 u32 XLOAD 0094 | |
0096 num CONV 0095 num.u32 | |
0097 num ADD 0096 +10 | |
0098 p64 ADD 0084 +8 | |
0099 u32 CONV 0097 u32.num | |
0100 u32 XSTORE 0098 0099 | |
0101 + num ADD 0075 +1 | |
0102 num HSTORE 0074 0101 | |
0103 > num NE 0101 +65536 | |
0104 > p32 UREFC net_device.lua:231 #2 | |
0105 > tab ULOAD 0104 | |
0106 int FLOAD 0105 tab.hmask | |
0107 > int EQ 0106 +31 | |
0108 p32 FLOAD 0105 tab.node | |
0109 > p32 HREFK 0108 "deref" @17 | |
0110 > fun HLOAD 0109 | |
0111 > fun EQ 0110 packet.lua:189 | |
0112 > nil PROF | |
0113 p64 ADD 0018 +256 | |
0114 int XLOAD 0113 | |
0115 > int GT 0114 +0 | |
0116 > int EQ 0114 +1 | |
0117 tab FLOAD packet.lua:189 func.env | |
0118 int FLOAD 0117 tab.hmask | |
0119 > int EQ 0118 +31 | |
0120 p32 FLOAD 0117 tab.node | |
0121 > p32 HREFK 0120 "free" @15 | |
0122 > fun HLOAD 0121 | |
0123 > fun EQ 0122 packet.lua:207 | |
0124 > nil PROF | |
0125 p64 ADD 0018 +272 | |
0126 int XLOAD 0125 | |
0127 > int SUBOV 0126 +1 | |
0128 > int LE 0127 +2147483646 | |
0129 > int GE 0127 +0 | |
0130 > p32 UREFC packet.lua:207 #0 | |
0131 > tab ULOAD 0130 | |
0132 int FLOAD 0131 tab.hmask | |
0133 > int EQ 0132 +31 | |
0134 p32 FLOAD 0131 tab.node | |
0135 > p32 HREFK 0134 "free" @3 | |
0136 > fun HLOAD 0135 | |
0137 > fun EQ 0136 buffer.lua:39 | |
0138 > nil PROF | |
0139 u32 XLOAD 0042 | |
0141 > p32 UREFC buffer.lua:39 #0 | |
0142 > udt ULOAD 0141 | |
0143 > p32 EQ 0142 [0x411a2f38] | |
0144 > u32 EQ 0139 +1 | |
0145 tab FLOAD buffer.lua:39 func.env | |
0146 int FLOAD 0145 tab.hmask | |
0147 > int EQ 0146 +31 | |
0148 p32 FLOAD 0145 tab.node | |
0149 > p32 HREFK 0148 "virtio_devices" @29 | |
0150 > tab HLOAD 0149 | |
0151 i16 XLOAD 0087 | |
0152 int FLOAD 0150 tab.asize | |
0153 > int ABC 0152 0151 | |
0154 p32 FLOAD 0150 tab.array | |
0155 p32 AREF 0154 0151 | |
0156 > tab ALOAD 0155 | |
0157 p32 HREF 0156 "return_virtio_buffer" | |
0158 > p32 EQ 0157 [0x41196458] | |
0159 tab FLOAD 0156 tab.meta | |
0160 > tab NE 0159 [NULL] | |
0161 int FLOAD 0159 tab.hmask | |
0162 > int EQ 0161 +1 | |
0163 p32 FLOAD 0159 tab.node | |
0164 > p32 HREFK 0163 "__index" @1 | |
0165 > tab HLOAD 0164 | |
0166 int FLOAD 0165 tab.hmask | |
0167 > int EQ 0166 +31 | |
0168 p32 FLOAD 0165 tab.node | |
0169 > p32 HREFK 0168 "return_virtio_buffer" @11 | |
0170 > fun HLOAD 0169 | |
0171 > fun EQ 0170 net_device.lua:282 | |
0172 > nil PROF | |
0173 > p32 UREFC net_device.lua:282 #0 | |
0174 > tab ULOAD 0173 | |
0175 int FLOAD 0174 tab.hmask | |
0176 > int EQ 0175 +7 | |
0177 p32 FLOAD 0174 tab.node | |
0178 > p32 HREFK 0177 "add" @5 | |
0179 > fun HLOAD 0178 | |
0180 int FLOAD 0156 tab.hmask | |
0181 > int EQ 0180 +15 | |
0182 p32 FLOAD 0156 tab.node | |
0183 > p32 HREFK 0182 "buffer_recs" @15 | |
0184 > tab HLOAD 0183 | |
0185 > fun EQ 0179 freelist.lua:12 | |
0186 > nil PROF | |
0187 int FLOAD 0184 tab.hmask | |
0188 > int EQ 0187 +3 | |
0189 p32 FLOAD 0184 tab.node | |
0190 > p32 HREFK 0189 "list" @2 | |
0191 > cdt HLOAD 0190 | |
0192 > p32 HREFK 0189 "nfree" @0 | |
0193 > num HLOAD 0192 | |
0194 u16 FLOAD 0191 cdata.ctypeid | |
0195 > int EQ 0194 +240 | |
0196 i64 CONV 0193 i64.num | |
0197 i64 BSHL 0196 +3 | |
0198 p64 ADD 0197 0191 | |
0199 p64 ADD 0198 +8 | |
0200 p64 XSTORE 0199 0040 | |
0201 num ADD 0193 +1 | |
0202 num HSTORE 0192 0201 | |
0203 > nil PROF | |
0204 p64 ADD 0040 +34 | |
0205 i16 XLOAD 0204 | |
0206 > int NE 0205 +1 | |
0207 > nil PROF | |
0208 > int LT 0127 +1 | |
0209 > p32 UREFC packet.lua:207 #1 | |
0210 > udt ULOAD 0209 | |
0211 > p32 EQ 0210 [0x411a2f38] | |
0212 nil CALLXS [0x4077ef](0018) | |
0213 > p32 UREFC packet.lua:207 #2 | |
0214 > tab ULOAD 0213 | |
0215 int FLOAD 0214 tab.hmask | |
0216 > int EQ 0215 +7 | |
0217 p32 FLOAD 0214 tab.node | |
0218 > p32 HREFK 0217 "add" @5 | |
0219 > fun HLOAD 0218 | |
0220 tab FLOAD packet.lua:207 func.env | |
0221 int FLOAD 0220 tab.hmask | |
0222 > int EQ 0221 +31 | |
0223 p32 FLOAD 0220 tab.node | |
0224 > p32 HREFK 0223 "packets_fl" @23 | |
0225 > tab HLOAD 0224 | |
0226 > fun EQ 0219 freelist.lua:12 | |
0227 > nil PROF | |
0228 int FLOAD 0225 tab.hmask | |
0229 > int EQ 0228 +3 | |
0230 p32 FLOAD 0225 tab.node | |
0231 > p32 HREFK 0230 "list" @2 | |
0232 > cdt HLOAD 0231 | |
0233 > p32 HREFK 0230 "nfree" @0 | |
0234 > num HLOAD 0233 | |
0235 u16 FLOAD 0232 cdata.ctypeid | |
0236 > int EQ 0235 +241 | |
0237 i64 CONV 0234 i64.num | |
0238 i64 BSHL 0237 +3 | |
0239 p64 ADD 0238 0232 | |
0240 p64 ADD 0239 +8 | |
0241 p64 XSTORE 0240 0018 | |
0242 num ADD 0234 +1 | |
0243 num HSTORE 0233 0242 | |
0244 > nil PROF | |
0245 > p32 UREFC net_device.lua:231 #0 | |
0246 > tab ULOAD 0245 | |
0247 int FLOAD 0246 tab.hmask | |
0248 > int EQ 0247 +15 | |
0249 p32 FLOAD 0246 tab.node | |
0250 > p32 HREFK 0249 "empty" @11 | |
0251 > fun HLOAD 0250 | |
0252 > fun EQ 0251 link.lua:69 | |
0253 > nil PROF | |
0254 int XLOAD 0017 | |
0255 p64 ADD 0009 +12 | |
0256 int XLOAD 0255 | |
0257 > int NE 0256 0254 | |
0258 > nil PROF | |
0259 ------ LOOP ------------ | |
0260 > p32 HREFK 0249 "receive" @1 | |
0261 > fun HLOAD 0260 | |
0262 > fun EQ 0261 link.lua:21 | |
0263 > nil PROF | |
0264 p64 CALLXS [0x407765](0017) | |
0265 } cdt CNEWI +172 0264 | |
0266 > nil PROF | |
0267 } cdt CNEWI +600 0264 | |
0268 > nil PROF | |
0269 p64 XLOAD 0264 | |
0270 > cdt CNEWI +212 0269 | |
0271 p64 ADD 0269 +24 | |
0272 u32 XLOAD 0271 | |
0273 > u32 EQ 0272 +1 | |
0274 > nil PROF | |
0275 tab FLOAD net_device.lua:231 func.env | |
0276 int FLOAD 0275 tab.hmask | |
0277 > int EQ 0276 +7 | |
0278 p32 FLOAD 0275 tab.node | |
0279 > p32 HREFK 0278 "b" @5 | |
0280 > cdt HLOAD 0279 | |
0281 cdt HSTORE 0279 0270 | |
0282 nil TBAR 0275 | |
0283 num DIV 0101 0077 | |
0284 num FPMATH 0283 floor | |
0285 num MUL 0284 0077 | |
0286 num SUB 0101 0285 | |
0287 i64 CONV 0286 i64.num | |
0288 i64 BSHL 0287 +3 | |
0289 p64 ADD 0288 0071 | |
0290 p64 ADD 0289 +4 | |
0291 } cdt CNEWI +603 0290 | |
0292 p64 ADD 0269 +32 | |
0293 } cdt CNEWI +597 0292 | |
0294 p64 ADD 0269 +36 | |
0295 i16 XLOAD 0294 | |
0296 u32 XSTORE 0290 0295 | |
0297 p64 ADD 0264 +12 | |
0298 u32 XLOAD 0297 | |
0299 num CONV 0298 num.u32 | |
0300 num ADD 0299 +10 | |
0301 p64 ADD 0289 +8 | |
0302 u32 CONV 0300 u32.num | |
0303 u32 XSTORE 0301 0302 | |
0304 + num ADD 0101 +1 | |
0305 num HSTORE 0074 0304 | |
0306 > num NE 0304 +65536 | |
0307 > nil PROF | |
0308 p64 ADD 0264 +256 | |
0309 int XLOAD 0308 | |
0310 > int GT 0309 +0 | |
0311 > int EQ 0309 +1 | |
0312 > nil PROF | |
0313 p64 ADD 0264 +272 | |
0314 int XLOAD 0313 | |
0315 > int SUBOV 0314 +1 | |
0316 > int LE 0315 +2147483646 | |
0317 > int GE 0315 +0 | |
0318 > nil PROF | |
0319 u32 XLOAD 0271 | |
0320 > u32 EQ 0319 +1 | |
0321 i16 XLOAD 0292 | |
0322 > int ABC 0152 0321 | |
0323 p32 AREF 0154 0321 | |
0324 > tab ALOAD 0323 | |
0325 p32 HREF 0324 "return_virtio_buffer" | |
0326 > p32 EQ 0325 [0x41196458] | |
0327 tab FLOAD 0324 tab.meta | |
0328 > tab NE 0327 [NULL] | |
0329 int FLOAD 0327 tab.hmask | |
0330 > int EQ 0329 +1 | |
0331 p32 FLOAD 0327 tab.node | |
0332 > p32 HREFK 0331 "__index" @1 | |
0333 > tab HLOAD 0332 | |
0334 int FLOAD 0333 tab.hmask | |
0335 > int EQ 0334 +31 | |
0336 p32 FLOAD 0333 tab.node | |
0337 > p32 HREFK 0336 "return_virtio_buffer" @11 | |
0338 > fun HLOAD 0337 | |
0339 > fun EQ 0338 net_device.lua:282 | |
0340 > nil PROF | |
0341 int FLOAD 0324 tab.hmask | |
0342 > int EQ 0341 +15 | |
0343 p32 FLOAD 0324 tab.node | |
0344 > p32 HREFK 0343 "buffer_recs" @15 | |
0345 > tab HLOAD 0344 | |
0346 > nil PROF | |
0347 int FLOAD 0345 tab.hmask | |
0348 > int EQ 0347 +3 | |
0349 p32 FLOAD 0345 tab.node | |
0350 > p32 HREFK 0349 "list" @2 | |
0351 > cdt HLOAD 0350 | |
0352 > p32 HREFK 0349 "nfree" @0 | |
0353 > num HLOAD 0352 | |
0354 u16 FLOAD 0351 cdata.ctypeid | |
0355 > int EQ 0354 +240 | |
0356 i64 CONV 0353 i64.num | |
0357 i64 BSHL 0356 +3 | |
0358 p64 ADD 0357 0351 | |
0359 p64 ADD 0358 +8 | |
0360 p64 XSTORE 0359 0269 | |
0361 num ADD 0353 +1 | |
0362 num HSTORE 0352 0361 | |
0363 > nil PROF | |
0364 p64 ADD 0269 +34 | |
0365 i16 XLOAD 0364 | |
0366 > int NE 0365 +1 | |
0367 > nil PROF | |
0368 > int LT 0315 +1 | |
0369 nil CALLXS [0x4077ef](0264) | |
0370 > nil PROF | |
0371 > num HLOAD 0233 | |
0372 i64 CONV 0371 i64.num | |
0373 i64 BSHL 0372 +3 | |
0374 p64 ADD 0373 0232 | |
0375 p64 ADD 0374 +8 | |
0376 p64 XSTORE 0375 0264 | |
0377 num ADD 0371 +1 | |
0378 num HSTORE 0233 0377 | |
0379 > nil PROF | |
0380 int XLOAD 0017 | |
0381 int XLOAD 0255 | |
0382 > int NE 0381 0380 | |
0383 > nil PROF | |
0384 num PHI 0101 0304 | |
---- TRACE 19 mcode 3678 | |
13319499 add rsp, -0x50 | |
1331949d mov dword [0x41196410], 0x13 | |
133194a8 mov edi, [0x411963d8] | |
133194af cmp edi, [0x411963dc] | |
133194b6 jb 0x133194cf | |
133194b8 mov esi, 0x1 | |
133194bd mov edi, 0x411963b8 | |
133194c2 call 0x00411ea0 ->lj_gc_step_jit | |
133194c7 test eax, eax | |
133194c9 jnz 0x13310010 | |
133194cf mov edx, [0x411964b4] | |
133194d6 mov r10d, [rdx-0x8] | |
133194da mov [rsp+0x54], r10d | |
133194df mov edi, [r10+0x14] | |
133194e3 cmp byte [rdi+0x6], 0x1 | |
133194e7 jnz 0x13310010 | |
133194ed lea eax, [rdi+0x8] | |
133194f0 cmp dword [rax+0x4], -0x0c | |
133194f4 jnz 0x13310010 | |
133194fa mov eax, [rax] | |
133194fc cmp dword [rax+0x1c], +0x0f | |
13319500 jnz 0x13310010 | |
13319506 mov eax, [rax+0x14] | |
13319509 mov rdi, 0xfffffffb411ac268 | |
13319513 cmp rdi, [rax+0x20] | |
13319517 jnz 0x13310010 | |
1331951d cmp dword [rax+0x1c], -0x09 | |
13319521 jnz 0x13310010 | |
13319527 cmp dword [rdx+0xc], -0x0b | |
1331952b jnz 0x13310010 | |
13319531 mov ebx, [rdx+0x8] | |
13319534 cmp dword [rax+0x18], 0x414ed748 | |
1331953b jnz 0x13310010 | |
13319541 test byte [0x41196435], 0x80 | |
13319549 jnz 0x13310010 | |
1331954f cmp dword [0x414ed77c], -0x0d | |
13319557 jnz 0x13310014 | |
1331955d cmp dword [0x414ed778], 0x411a2f38 | |
13319568 jnz 0x13310014 | |
1331956e movzx eax, word [rbx+0x6] | |
13319572 cmp eax, 0xaf | |
13319578 jnz 0x13310014 | |
1331957e mov edi, ebx | |
13319580 add rdi, +0x08 | |
13319584 mov [rsp+0x48], rdi | |
13319589 call 0x00407765 | |
1331958e mov rdi, rax | |
13319591 mov [rsp+0x58], rdi | |
13319596 mov edx, [0x411964b4] | |
1331959d test byte [0x41196435], 0x80 | |
133195a5 jnz 0x13310018 | |
133195ab cmp dword [rdx+0x4], -0x0c | |
133195af jnz 0x1331001c | |
133195b5 mov r9d, [rdx] | |
133195b8 mov [rsp+0x40], r9d | |
133195bd mov esi, [r9+0x1c] | |
133195c1 and esi, 0x463b350c | |
133195c7 lea esi, [rsi+rsi*2] | |
133195ca shl esi, 0x03 | |
133195cd add esi, [r9+0x14] | |
133195d1 cmp dword [rsi+0xc], -0x05 | |
133195d5 jnz 0x133195e4 | |
133195d7 cmp dword [rsi+0x8], 0x40e28c28 | |
133195de jz 0x1331001c | |
133195e4 mov esi, [rsi+0x10] | |
133195e7 test esi, esi | |
133195e9 jnz 0x133195d1 | |
133195eb mov eax, [r9+0x10] | |
133195ef test eax, eax | |
133195f1 jz 0x1331001c | |
133195f7 cmp dword [rax+0x1c], +0x01 | |
133195fb jnz 0x1331001c | |
13319601 mov eax, [rax+0x14] | |
13319604 mov rsi, 0xfffffffb41198458 | |
1331960e cmp rsi, [rax+0x20] | |
13319612 jnz 0x1331001c | |
13319618 cmp dword [rax+0x1c], -0x0c | |
1331961c jnz 0x1331001c | |
13319622 mov eax, [rax+0x18] | |
13319625 cmp dword [rax+0x1c], +0x1f | |
13319629 jnz 0x1331001c | |
1331962f mov eax, [rax+0x14] | |
13319632 mov rsi, 0xfffffffb40e28c28 | |
1331963c cmp rsi, [rax+0x128] | |
13319643 jnz 0x1331001c | |
13319649 cmp dword [rax+0x124], -0x09 | |
13319650 jnz 0x1331001c | |
13319656 cmp dword [rax+0x120], 0x5323e770 | |
13319660 jnz 0x1331001c | |
13319666 test byte [0x41196435], 0x80 | |
1331966e jnz 0x1331001c | |
13319674 mov rbp, [rdi] | |
13319677 mov edi, [0x411964b0] | |
1331967e mov esi, 0x10 | |
13319683 call 0x00412100 ->lj_mem_newgco | |
13319688 movzx ecx, byte [0x411963e0] | |
13319690 and ecx, +0x03 | |
13319693 or ecx, 0x00d40a00 | |
13319699 mov [rax+0x4], ecx | |
1331969c mov [rax+0x8], rbp | |
133196a0 mov ecx, eax | |
133196a2 mov r10d, [rsp+0x54] | |
133196a7 mov r9d, [rsp+0x40] | |
133196ac mov rdi, [rsp+0x58] | |
133196b1 cmp dword [0x5323e5fc], -0x0d | |
133196b9 jnz 0x13310020 | |
133196bf cmp dword [0x5323e5f8], 0x411a2f38 | |
133196ca jnz 0x13310020 | |
133196d0 cmp dword [rbp+0x18], +0x01 | |
133196d4 jnz 0x13310024 | |
133196da test byte [0x41196435], 0x80 | |
133196e2 jnz 0x13310028 | |
133196e8 mov eax, [r10+0x8] | |
133196ec cmp dword [rax+0x1c], +0x07 | |
133196f0 jnz 0x1331002c | |
133196f6 mov edx, [rax+0x14] | |
133196f9 mov rsi, 0xfffffffb41146c78 | |
13319703 cmp rsi, [rdx+0x80] | |
1331970a jnz 0x1331002c | |
13319710 cmp dword [rdx+0x7c], -0x0b | |
13319714 jnz 0x1331002c | |
1331971a mov dword [rdx+0x7c], 0xfffffff5 | |
13319721 mov [rdx+0x78], ecx | |
13319724 test byte [rax+0x4], 0x4 | |
13319728 jz 0x1331973f | |
1331972a and byte [rax+0x4], 0xfb | |
1331972e mov esi, [0x411963f4] | |
13319735 mov [0x411963f4], eax | |
1331973c mov [rax+0xc], esi | |
1331973f cmp dword [r9+0x1c], +0x0f | |
13319744 jnz 0x13310030 | |
1331974a mov eax, [r9+0x14] | |
1331974e mov rsi, 0xfffffffb40e28608 | |
13319758 cmp rsi, [rax+0x110] | |
1331975f jnz 0x13310030 | |
13319765 cmp dword [rax+0x10c], -0x0c | |
1331976c jnz 0x13310030 | |
13319772 mov edx, [rax+0x108] | |
13319778 cmp dword [rdx+0x1c], +0x03 | |
1331977c jnz 0x13310030 | |
13319782 mov edx, [rdx+0x14] | |
13319785 mov rsi, 0xfffffffb411b2d70 | |
1331978f cmp rsi, [rdx+0x50] | |
13319793 jnz 0x13310030 | |
13319799 cmp dword [rdx+0x4c], -0x0b | |
1331979d jnz 0x13310030 | |
133197a3 mov edx, [rdx+0x48] | |
133197a6 movzx esi, word [rdx+0x6] | |
133197aa cmp esi, 0x24f | |
133197b0 jnz 0x13310030 | |
133197b6 mov r8, [rdx+0x8] | |
133197ba mov [rsp+0x38], r8 | |
133197bf mov rsi, 0xfffffffb40e28c08 | |
133197c9 cmp rsi, [rax+0x38] | |
133197cd jnz 0x13310030 | |
133197d3 lea esi, [rax+0x30] | |
133197d6 mov [rsp+0x50], esi | |
133197da cmp dword [rax+0x34], 0xfffeffff | |
133197e1 jnb 0x13310030 | |
133197e7 movsd xmm7, [rax+0x30] | |
133197ec mov rsi, 0xfffffffb40e27a98 | |
133197f6 cmp rsi, [rax+0x158] | |
133197fd jnz 0x13310030 | |
13319803 cmp dword [rax+0x154], 0xfffeffff | |
1331980d jnb 0x13310030 | |
13319813 movsd xmm0, [rax+0x150] | |
1331981b movsd [rsp+0x18], xmm0 | |
13319821 movaps xmm1, xmm7 | |
13319824 divsd xmm1, xmm0 | |
13319828 roundsd xmm1, xmm1, 0x09 | |
1331982e mulsd xmm1, xmm0 | |
13319832 movaps xmm0, xmm7 | |
13319835 subsd xmm0, xmm1 | |
13319839 cvttsd2si rsi, xmm0 | |
1331983e mov rdx, rsi | |
13319841 shl rdx, 0x03 | |
13319845 add rdx, r8 | |
13319848 add rdx, +0x04 | |
1331984c mov r9, rbp | |
1331984f add r9, +0x20 | |
13319853 movsx r11d, word [rbp+0x24] | |
13319858 mov [rdx], r11d | |
1331985b cmp r10d, 0x5323e7c0 | |
13319862 jnz 0x13310034 | |
13319868 mov edx, [rdi+0xc] | |
1331986b xorps xmm0, xmm0 | |
1331986e cvtsi2sd xmm0, rdx | |
13319873 addsd xmm0, [0x534546e0] | |
1331987c cvttsd2si rdx, xmm0 | |
13319881 mov edx, edx | |
13319883 mov [r8+rsi*8+0x8], edx | |
13319888 addsd xmm7, [0x411b4da0] | |
13319891 movsd [rsp+0x20], xmm7 | |
13319897 movsd [rax+0x30], xmm7 | |
1331989c ucomisd xmm7, [0x4064ef40] | |
133198a5 jpe 0x133198ad | |
133198a7 jz 0x13310038 | |
133198ad cmp dword [0x40e2cfa4], -0x0c | |
133198b5 jnz 0x1331003c | |
133198bb mov eax, [0x40e2cfa0] | |
133198c2 cmp dword [rax+0x1c], +0x1f | |
133198c6 jnz 0x1331003c | |
133198cc mov eax, [rax+0x14] | |
133198cf mov rsi, 0xfffffffb411a28a0 | |
133198d9 cmp rsi, [rax+0x1a0] | |
133198e0 jnz 0x1331003c | |
133198e6 cmp dword [rax+0x19c], -0x09 | |
133198ed jnz 0x1331003c | |
133198f3 cmp dword [rax+0x198], 0x411a71b0 | |
133198fd jnz 0x1331003c | |
13319903 test byte [0x41196435], 0x80 | |
1331990b jnz 0x1331003c | |
13319911 mov eax, [rdi+0x100] | |
13319917 test eax, eax | |
13319919 jle 0x13310044 | |
1331991f cmp eax, +0x01 | |
13319922 jnz 0x13310048 | |
13319928 mov eax, [0x411a71b8] | |
1331992f cmp dword [rax+0x1c], +0x1f | |
13319933 jnz 0x1331004c | |
13319939 mov eax, [rax+0x14] | |
1331993c mov rsi, 0xfffffffb41199dc8 | |
13319946 cmp rsi, [rax+0x170] | |
1331994d jnz 0x1331004c | |
13319953 cmp dword [rax+0x16c], -0x09 | |
1331995a jnz 0x1331004c | |
13319960 cmp dword [rax+0x168], 0x411a71f0 | |
1331996a jnz 0x1331004c | |
13319970 test byte [0x41196435], 0x80 | |
13319978 jnz 0x1331004c | |
1331997e mov eax, [rdi+0x110] | |
13319984 sub eax, +0x01 | |
13319987 jo 0x13310050 | |
1331998d cmp eax, 0x7ffffffe | |
13319993 jg 0x13310050 | |
13319999 test eax, eax | |
1331999b jl 0x13310054 | |
133199a1 cmp dword [0x411a7324], -0x0c | |
133199a9 jnz 0x13310058 | |
133199af mov edx, [0x411a7320] | |
133199b6 cmp dword [rdx+0x1c], +0x1f | |
133199ba jnz 0x13310058 | |
133199c0 mov edx, [rdx+0x14] | |
133199c3 mov rsi, 0xfffffffb41199dc8 | |
133199cd cmp rsi, [rdx+0x50] | |
133199d1 jnz 0x13310058 | |
133199d7 cmp dword [rdx+0x4c], -0x09 | |
133199db jnz 0x13310058 | |
133199e1 cmp dword [rdx+0x48], 0x411a7128 | |
133199e8 jnz 0x13310058 | |
133199ee test byte [0x41196435], 0x80 | |
133199f6 jnz 0x13310058 | |
133199fc cmp dword [0x414efc84], -0x0d | |
13319a04 jnz 0x1331005c | |
13319a0a cmp dword [0x414efc80], 0x411a2f38 | |
13319a15 jnz 0x1331005c | |
13319a1b cmp dword [rbp+0x18], +0x01 | |
13319a1f jnz 0x13310060 | |
13319a25 mov edx, [0x411a7130] | |
13319a2c cmp dword [rdx+0x1c], +0x1f | |
13319a30 jnz 0x13310064 | |
13319a36 mov edx, [rdx+0x14] | |
13319a39 mov rsi, 0xfffffffb411b22d0 | |
13319a43 cmp rsi, [rdx+0x2c0] | |
13319a4a jnz 0x13310064 | |
13319a50 cmp dword [rdx+0x2bc], -0x0c | |
13319a57 jnz 0x13310064 | |
13319a5d mov edx, [rdx+0x2b8] | |
13319a63 movsx esi, word [rbp+0x20] | |
13319a67 mov r15d, [rdx+0x18] | |
13319a6b mov [rsp+0x2c], r15d | |
13319a70 cmp esi, [rdx+0x18] | |
13319a73 jnb 0x13310064 | |
13319a79 mov edx, [rdx+0x8] | |
13319a7c mov [rsp+0x28], edx | |
13319a80 cmp dword [rdx+rsi*8+0x4], -0x0c | |
13319a85 jnz 0x13310064 | |
13319a8b mov edx, [rdx+rsi*8] | |
13319a8e mov esi, [rdx+0x1c] | |
13319a91 and esi, 0x0f10cc4b | |
13319a97 lea esi, [rsi+rsi*2] | |
13319a9a shl esi, 0x03 | |
13319a9d add esi, [rdx+0x14] | |
13319aa0 cmp dword [rsi+0xc], -0x05 | |
13319aa4 jnz 0x13319ab3 | |
13319aa6 cmp dword [rsi+0x8], 0x411b2238 | |
13319aad jz 0x13310064 | |
13319ab3 mov esi, [rsi+0x10] | |
13319ab6 test esi, esi | |
13319ab8 jnz 0x13319aa0 | |
13319aba mov esi, [rdx+0x10] | |
13319abd test esi, esi | |
13319abf jz 0x13310064 | |
13319ac5 cmp dword [rsi+0x1c], +0x01 | |
13319ac9 jnz 0x13310064 | |
13319acf mov esi, [rsi+0x14] | |
13319ad2 mov r15, 0xfffffffb41198458 | |
13319adc cmp r15, [rsi+0x20] | |
13319ae0 jnz 0x13310064 | |
13319ae6 cmp dword [rsi+0x1c], -0x0c | |
13319aea jnz 0x13310064 | |
13319af0 mov esi, [rsi+0x18] | |
13319af3 cmp dword [rsi+0x1c], +0x1f | |
13319af7 jnz 0x13310064 | |
13319afd mov esi, [rsi+0x14] | |
13319b00 mov r15, 0xfffffffb411b2238 | |
13319b0a cmp r15, [rsi+0x110] | |
13319b11 jnz 0x13310064 | |
13319b17 cmp dword [rsi+0x10c], -0x09 | |
13319b1e jnz 0x13310064 | |
13319b24 cmp dword [rsi+0x108], 0x5323e810 | |
13319b2e jnz 0x13310064 | |
13319b34 test byte [0x41196435], 0x80 | |
13319b3c jnz 0x13310064 | |
13319b42 cmp dword [0x40e2ce7c], -0x0c | |
13319b4a jnz 0x13310068 | |
13319b50 mov esi, [0x40e2ce78] | |
13319b57 cmp dword [rsi+0x1c], +0x07 | |
13319b5b jnz 0x13310068 | |
13319b61 mov esi, [rsi+0x14] | |
13319b64 mov r15, 0xfffffffb411a06f0 | |
13319b6e cmp r15, [rsi+0x80] | |
13319b75 jnz 0x13310068 | |
13319b7b cmp dword [rsi+0x7c], -0x09 | |
13319b7f jnz 0x13310068 | |
13319b85 cmp dword [rdx+0x1c], +0x0f | |
13319b89 jnz 0x13310068 | |
13319b8f mov r8d, [rdx+0x14] | |
13319b93 mov r15, 0xfffffffb40e27960 | |
13319b9d cmp r15, [r8+0x170] | |
13319ba4 jnz 0x13310068 | |
13319baa cmp dword [r8+0x16c], -0x0c | |
13319bb2 jnz 0x13310068 | |
13319bb8 mov r8d, [r8+0x168] | |
13319bbf cmp dword [rsi+0x78], 0x414eeb08 | |
13319bc6 jnz 0x13310068 | |
13319bcc test byte [0x41196435], 0x80 | |
13319bd4 jnz 0x13310068 | |
13319bda cmp dword [r8+0x1c], +0x03 | |
13319bdf jnz 0x1331006c | |
13319be5 mov esi, [r8+0x14] | |
13319be9 mov r15, 0xfffffffb414ee638 | |
13319bf3 cmp r15, [rsi+0x38] | |
13319bf7 jnz 0x1331006c | |
13319bfd cmp dword [rsi+0x34], -0x0b | |
13319c01 jnz 0x1331006c | |
13319c07 mov r9d, [rsi+0x30] | |
13319c0b mov r15, 0xfffffffb411b2518 | |
13319c15 cmp r15, [rsi+0x8] | |
13319c19 jnz 0x1331006c | |
13319c1f cmp dword [rsi+0x4], 0xfffeffff | |
13319c26 jnb 0x1331006c | |
13319c2c movsd xmm0, [rsi] | |
13319c30 movzx r10d, word [r9+0x6] | |
13319c35 cmp r10d, 0xf0 | |
13319c3c jnz 0x1331006c | |
13319c42 cvttsd2si r8, xmm0 | |
13319c47 mov [r9+r8*8+0x8], rbp | |
13319c4c addsd xmm0, [0x411b4da0] | |
13319c55 movsd [rsi], xmm0 | |
13319c59 test byte [0x41196435], 0x80 | |
13319c61 jnz 0x13310070 | |
13319c67 cmp word [rbp+0x22], +0x01 | |
13319c6c jz 0x13310078 | |
13319c72 test byte [0x41196435], 0x80 | |
13319c7a jnz 0x1331007c | |
13319c80 cmp eax, +0x01 | |
13319c83 jge 0x13310080 | |
13319c89 cmp dword [0x411a7304], -0x0d | |
13319c91 jnz 0x13310084 | |
13319c97 cmp dword [0x411a7300], 0x411a2f38 | |
13319ca2 jnz 0x13310084 | |
13319ca8 call 0x004077ef | |
13319cad mov rax, [rsp+0x58] | |
13319cb2 movsd xmm7, [rsp+0x20] | |
13319cb8 cmp dword [0x411a5cec], -0x0c | |
13319cc0 jnz 0x13310088 | |
13319cc6 mov ecx, [0x411a5ce8] | |
13319ccd cmp dword [rcx+0x1c], +0x07 | |
13319cd1 jnz 0x13310088 | |
13319cd7 mov ecx, [rcx+0x14] | |
13319cda mov rdi, 0xfffffffb411a06f0 | |
13319ce4 cmp rdi, [rcx+0x80] | |
13319ceb jnz 0x13310088 | |
13319cf1 cmp dword [rcx+0x7c], -0x09 | |
13319cf5 jnz 0x13310088 | |
13319cfb mov edx, [0x411a71f8] | |
13319d02 cmp dword [rdx+0x1c], +0x1f | |
13319d06 jnz 0x13310088 | |
13319d0c mov edx, [rdx+0x14] | |
13319d0f mov rdi, 0xfffffffb411abbc0 | |
13319d19 cmp rdi, [rdx+0x230] | |
13319d20 jnz 0x13310088 | |
13319d26 cmp dword [rdx+0x22c], -0x0c | |
13319d2d jnz 0x13310088 | |
13319d33 mov r14d, [rdx+0x228] | |
13319d3a cmp dword [rcx+0x78], 0x414eeb08 | |
13319d41 jnz 0x13310088 | |
13319d47 test byte [0x41196435], 0x80 | |
13319d4f jnz 0x13310088 | |
13319d55 cmp dword [r14+0x1c], +0x03 | |
13319d5a jnz 0x1331008c | |
13319d60 mov ecx, [r14+0x14] | |
13319d64 mov rdi, 0xfffffffb414ee638 | |
13319d6e cmp rdi, [rcx+0x38] | |
13319d72 jnz 0x1331008c | |
13319d78 cmp dword [rcx+0x34], -0x0b | |
13319d7c jnz 0x1331008c | |
13319d82 mov r13d, [rcx+0x30] | |
13319d86 mov rdi, 0xfffffffb411b2518 | |
13319d90 cmp rdi, [rcx+0x8] | |
13319d94 jnz 0x1331008c | |
13319d9a mov r12d, ecx | |
13319d9d cmp dword [r12+0x4], 0xfffeffff | |
13319da6 jnb 0x1331008c | |
13319dac movsd xmm0, [r12] | |
13319db2 movzx ecx, word [r13+0x6] | |
13319db7 cmp ecx, 0xf1 | |
13319dbd jnz 0x1331008c | |
13319dc3 cvttsd2si rcx, xmm0 | |
13319dc8 mov [r13+rcx*8+0x8], rax | |
13319dcd addsd xmm0, [0x411b4da0] | |
13319dd6 movsd [r12], xmm0 | |
13319ddc test byte [0x41196435], 0x80 | |
13319de4 jnz 0x1331009d | |
13319dea cmp dword [0x5323e63c], -0x0c | |
13319df2 jnz 0x133100a1 | |
13319df8 mov ecx, [0x5323e638] | |
13319dff cmp dword [rcx+0x1c], +0x0f | |
13319e03 jnz 0x133100a1 | |
13319e09 mov ecx, [rcx+0x14] | |
13319e0c mov [rsp+0x44], ecx | |
13319e10 mov rdi, 0xfffffffb411a77d8 | |
13319e1a cmp rdi, [rcx+0x110] | |
13319e21 jnz 0x133100a1 | |
13319e27 cmp dword [rcx+0x10c], -0x09 | |
13319e2e jnz 0x133100a1 | |
13319e34 cmp dword [rcx+0x108], 0x414ed818 | |
13319e3e jnz 0x133100a1 | |
13319e44 test byte [0x41196435], 0x80 | |
13319e4c jnz 0x133100a1 | |
13319e52 mov eax, [rbx+0x8] | |
13319e55 cmp eax, [rbx+0xc] | |
13319e58 jz 0x133100a9 | |
13319e5e test byte [0x41196435], 0x80 | |
13319e66 jnz 0x133100ad | |
->LOOP: | |
13319e6c movsd [rsp+0x20], xmm7 | |
13319e72 mov ebp, [rsp+0x50] | |
13319e76 mov edi, [0x411963d8] | |
13319e7d cmp edi, [0x411963dc] | |
13319e84 jb 0x13319e9d | |
13319e86 mov esi, 0x1 | |
13319e8b mov edi, 0x411963b8 | |
13319e90 call 0x00411ea0 ->lj_gc_step_jit | |
13319e95 test eax, eax | |
13319e97 jnz 0x133100b1 | |
13319e9d mov rdi, [rsp+0x48] | |
13319ea2 mov eax, [rsp+0x44] | |
13319ea6 mov rsi, 0xfffffffb411ac268 | |
13319eb0 cmp rsi, [rax+0x20] | |
13319eb4 jnz 0x133100b1 | |
13319eba cmp dword [rax+0x1c], -0x09 | |
13319ebe jnz 0x133100b1 | |
13319ec4 cmp dword [rax+0x18], 0x414ed748 | |
13319ecb jnz 0x133100b1 | |
13319ed1 test byte [0x41196435], 0x80 | |
13319ed9 jnz 0x133100b1 | |
13319edf call 0x00407765 | |
13319ee4 mov rdi, rax | |
13319ee7 mov [rsp+0x10], rdi | |
13319eec test byte [0x41196435], 0x80 | |
13319ef4 jnz 0x133100b9 | |
13319efa test byte [0x41196435], 0x80 | |
13319f02 jnz 0x133100bd ->40 | |
13319f08 mov r15, [rdi] | |
13319f0b mov edi, [0x411964b0] | |
13319f12 mov [rsp+0x30], r15 | |
13319f17 mov esi, 0x10 | |
13319f1c call 0x00412100 ->lj_mem_newgco | |
13319f21 movzx ecx, byte [0x411963e0] | |
13319f29 and ecx, +0x03 | |
13319f2c or ecx, 0x00d40a00 | |
13319f32 mov [rax+0x4], ecx | |
13319f35 mov [rax+0x8], r15 | |
13319f39 mov r8, [rsp+0x38] | |
13319f3e mov rdi, [rsp+0x10] | |
13319f43 mov rsi, [rsp+0x30] | |
13319f48 mov edx, [rsp+0x2c] | |
13319f4c mov ecx, [rsp+0x28] | |
13319f50 movsd xmm7, [rsp+0x20] | |
13319f56 movsd xmm0, [rsp+0x18] | |
13319f5c cmp dword [rsi+0x18], +0x01 | |
13319f60 jnz 0x133100c5 ->42 | |
13319f66 test byte [0x41196435], 0x80 | |
13319f6e jnz 0x133100c9 ->43 | |
13319f74 mov r15d, [0x5323e7c8] | |
13319f7c cmp dword [r15+0x1c], +0x07 | |
13319f81 jnz 0x133100cd ->44 | |
13319f87 mov r11d, [r15+0x14] | |
13319f8b mov r10, 0xfffffffb41146c78 | |
13319f95 cmp r10, [r11+0x80] | |
13319f9c jnz 0x133100cd ->44 | |
13319fa2 cmp dword [r11+0x7c], -0x0b | |
13319fa7 jnz 0x133100cd ->44 | |
13319fad mov dword [r11+0x7c], 0xfffffff5 | |
13319fb5 mov [r11+0x78], eax | |
13319fb9 test byte [r15+0x4], 0x4 | |
13319fbe jz 0x13319fd9 | |
13319fc0 and byte [r15+0x4], 0xfb | |
13319fc5 mov r11d, [0x411963f4] | |
13319fcd mov [0x411963f4], r15d | |
13319fd5 mov [r15+0xc], r11d | |
13319fd9 movaps xmm6, xmm7 | |
13319fdc divsd xmm6, xmm0 | |
13319fe0 roundsd xmm5, xmm6, 0x09 | |
13319fe6 mulsd xmm5, xmm0 | |
13319fea movaps xmm6, xmm7 | |
13319fed subsd xmm6, xmm5 | |
13319ff1 cvttsd2si r11, xmm6 | |
13319ff6 movsx r15d, word [rsi+0x24] | |
13319ffb mov [r8+r11*8+0x4], r15d | |
1331a000 mov r15d, [rdi+0xc] | |
1331a004 xorps xmm6, xmm6 | |
1331a007 cvtsi2sd xmm6, r15 | |
1331a00c addsd xmm6, [0x534546e0] | |
1331a015 cvttsd2si r15, xmm6 | |
1331a01a mov r15d, r15d | |
1331a01d mov [r8+r11*8+0x8], r15d | |
1331a022 addsd xmm7, [0x411b4da0] | |
1331a02b movsd [rsp+0x8], xmm7 | |
1331a031 movsd [rbp+0x0], xmm7 | |
1331a036 ucomisd xmm7, [0x4064ef40] | |
1331a03f jpe 0x1331a047 | |
1331a041 jz 0x133100d5 ->46 | |
1331a047 test byte [0x41196435], 0x80 | |
1331a04f jnz 0x133100d9 ->47 | |
1331a055 mov ebp, [rdi+0x100] | |
1331a05b test ebp, ebp | |
1331a05d jle 0x133100dd ->48 | |
1331a063 cmp ebp, +0x01 | |
1331a066 jnz 0x133100e1 ->49 | |
1331a06c test byte [0x41196435], 0x80 | |
1331a074 jnz 0x133100e5 ->50 | |
1331a07a mov ebp, [rdi+0x110] | |
1331a080 sub ebp, +0x01 | |
1331a083 jo 0x133100e9 ->51 | |
1331a089 cmp ebp, 0x7ffffffe | |
1331a08f jg 0x133100e9 ->51 | |
1331a095 test ebp, ebp | |
1331a097 jl 0x133100ed ->52 | |
1331a09d test byte [0x41196435], 0x80 | |
1331a0a5 jnz 0x133100f1 ->53 | |
1331a0ab cmp dword [rsi+0x18], +0x01 | |
1331a0af jnz 0x133100f5 ->54 | |
1331a0b5 movsx r15d, word [rsi+0x20] | |
1331a0ba cmp r15d, edx | |
1331a0bd jnb 0x133100f9 ->55 | |
1331a0c3 cmp dword [rcx+r15*8+0x4], -0x0c | |
1331a0c9 jnz 0x133100f9 ->55 | |
1331a0cf mov r15d, [rcx+r15*8] | |
1331a0d3 mov edx, [r15+0x1c] | |
1331a0d7 and edx, 0x0f10cc4b | |
1331a0dd lea edx, [rdx+rdx*2] | |
1331a0e0 shl edx, 0x03 | |
1331a0e3 add edx, [r15+0x14] | |
1331a0e7 cmp dword [rdx+0xc], -0x05 | |
1331a0eb jnz 0x1331a0fa | |
1331a0ed cmp dword [rdx+0x8], 0x411b2238 | |
1331a0f4 jz 0x133100f9 ->55 | |
1331a0fa mov edx, [rdx+0x10] | |
1331a0fd test edx, edx | |
1331a0ff jnz 0x1331a0e7 | |
1331a101 mov edx, [r15+0x10] | |
1331a105 test edx, edx | |
1331a107 jz 0x133100f9 ->55 | |
1331a10d cmp dword [rdx+0x1c], +0x01 | |
1331a111 jnz 0x133100f9 ->55 | |
1331a117 mov edx, [rdx+0x14] | |
1331a11a mov rcx, 0xfffffffb41198458 | |
1331a124 cmp rcx, [rdx+0x20] | |
1331a128 jnz 0x133100f9 ->55 | |
1331a12e cmp dword [rdx+0x1c], -0x0c | |
1331a132 jnz 0x133100f9 ->55 | |
1331a138 mov edx, [rdx+0x18] | |
1331a13b cmp dword [rdx+0x1c], +0x1f | |
1331a13f jnz 0x133100f9 ->55 | |
1331a145 mov edx, [rdx+0x14] | |
1331a148 mov rcx, 0xfffffffb411b2238 | |
1331a152 cmp rcx, [rdx+0x110] | |
1331a159 jnz 0x133100f9 ->55 | |
1331a15f cmp dword [rdx+0x10c], -0x09 | |
1331a166 jnz 0x133100f9 ->55 | |
1331a16c cmp dword [rdx+0x108], 0x5323e810 | |
1331a176 jnz 0x133100f9 ->55 | |
1331a17c test byte [0x41196435], 0x80 | |
1331a184 jnz 0x133100f9 ->55 | |
1331a18a cmp dword [r15+0x1c], +0x0f | |
1331a18f jnz 0x133100fd ->56 | |
1331a195 mov edx, [r15+0x14] | |
1331a199 mov rcx, 0xfffffffb40e27960 | |
1331a1a3 cmp rcx, [rdx+0x170] | |
1331a1aa jnz 0x133100fd ->56 | |
1331a1b0 cmp dword [rdx+0x16c], -0x0c | |
1331a1b7 jnz 0x133100fd ->56 | |
1331a1bd mov ecx, [rdx+0x168] | |
1331a1c3 test byte [0x41196435], 0x80 | |
1331a1cb jnz 0x133100fd ->56 | |
1331a1d1 cmp dword [rcx+0x1c], +0x03 | |
1331a1d5 jnz 0x13310101 ->57 | |
1331a1db mov edx, [rcx+0x14] | |
1331a1de mov r11, 0xfffffffb414ee638 | |
1331a1e8 cmp r11, [rdx+0x38] | |
1331a1ec jnz 0x13310101 ->57 | |
1331a1f2 cmp dword [rdx+0x34], -0x0b | |
1331a1f6 jnz 0x13310101 ->57 | |
1331a1fc mov r11d, [rdx+0x30] | |
1331a200 mov r10, 0xfffffffb411b2518 | |
1331a20a cmp r10, [rdx+0x8] | |
1331a20e jnz 0x13310101 ->57 | |
1331a214 cmp dword [rdx+0x4], 0xfffeffff | |
1331a21b jnb 0x13310101 ->57 | |
1331a221 movsd xmm7, [rdx] | |
1331a225 movzx r10d, word [r11+0x6] | |
1331a22a cmp r10d, 0xf0 | |
1331a231 jnz 0x13310101 ->57 | |
1331a237 cvttsd2si rcx, xmm7 | |
1331a23c mov [r11+rcx*8+0x8], rsi | |
1331a241 addsd xmm7, [0x411b4da0] | |
1331a24a movsd [rdx], xmm7 | |
1331a24e test byte [0x41196435], 0x80 | |
1331a256 jnz 0x13310105 ->58 | |
1331a25c cmp word [rsi+0x22], +0x01 | |
1331a261 jz 0x13310109 ->59 | |
1331a267 test byte [0x41196435], 0x80 | |
1331a26f jnz 0x1331010d ->60 | |
1331a275 cmp ebp, +0x01 | |
1331a278 jge 0x13310111 ->61 | |
1331a27e call 0x004077ef | |
1331a283 mov rax, [rsp+0x10] | |
1331a288 movsd xmm7, [rsp+0x8] | |
1331a28e test byte [0x41196435], 0x80 | |
1331a296 jnz 0x13310115 ->62 | |
1331a29c cmp dword [r12+0x4], 0xfffeffff | |
1331a2a5 jnb 0x13310119 ->63 | |
1331a2ab movsd xmm6, [r12] | |
1331a2b1 cvttsd2si rbp, xmm6 | |
1331a2b6 mov [r13+rbp*8+0x8], rax | |
1331a2bb addsd xmm6, [0x411b4da0] | |
1331a2c4 movsd [r12], xmm6 | |
1331a2ca test byte [0x41196435], 0x80 | |
1331a2d2 jnz 0x1331012a ->64 | |
1331a2d8 mov ebp, [rbx+0x8] | |
1331a2db cmp ebp, [rbx+0xc] | |
1331a2de jz 0x1331012e ->65 | |
1331a2e4 test byte [0x41196435], 0x80 | |
1331a2ec jz 0x13319e6c ->LOOP | |
1331a2f2 jmp 0x13310132 ->66 | |
---- TRACE 19 stop -> loop |
This file contains hidden or 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 7 start net_device.lua:161 | |
0008 ISNEN 2 0 ; 0 | |
0009 JMP 3 => 0012 | |
0012 SUBVN 2 2 2 ; 1 | |
0013 TGETS 3 0 1 ; "txring" | |
0014 TGETS 3 3 2 ; "avail" | |
0015 TGETS 3 3 4 ; "ring" | |
0000 . . FUNCC ; ffi.meta.__index | |
0016 TGETS 4 0 5 ; "tx_vring_num" | |
0017 MODVV 4 2 4 | |
0018 TGETV 3 3 4 | |
0000 . . FUNCC ; ffi.meta.__index | |
0019 TGETS 4 0 1 ; "txring" | |
0020 TGETS 4 4 6 ; "desc" | |
0021 TGETV 4 4 3 | |
0000 . . FUNCC ; ffi.meta.__index | |
0022 UGET 5 0 ; ffi | |
0023 TGETS 5 5 7 ; "cast" | |
0024 UGET 6 1 ; char_ptr_t | |
0025 MOV 8 0 | |
0026 TGETS 7 0 8 ; "map_from_guest" | |
0027 TGETS 9 4 9 ; "addr" | |
0000 . . FUNCC ; ffi.meta.__index | |
0028 CALL 7 0 3 | |
0000 . FUNCF 12 ; net_device.lua:334 | |
0001 . UGET 2 0 ; tlb | |
0002 . TGETS 2 2 0 ; "lookup" | |
0003 . UGET 3 1 ; guest_tlb | |
0004 . MOV 4 1 | |
0005 . CALL 2 2 3 | |
0000 . . FUNCF 8 ; tlb.lua:24 | |
0001 . . UGET 2 0 ; u64 | |
0002 . . MOV 3 1 | |
0003 . . CALL 2 2 2 | |
0000 . . . FUNCF 4 ; tlb.lua:14 | |
0001 . . . UGET 1 0 ; ffi | |
0002 . . . TGETS 1 1 0 ; "cast" | |
0003 . . . KSTR 2 1 ; "uint64_t" | |
0004 . . . MOV 3 0 | |
0005 . . . CALLT 1 3 | |
0000 . . . FUNCC ; ffi.cast | |
0004 . . GGET 3 0 ; "tonumber" | |
0005 . . GGET 4 1 ; "bit" | |
0006 . . TGETS 4 4 2 ; "rshift" | |
0007 . . MOV 5 2 | |
0008 . . TGETS 6 0 3 ; "pagesize" | |
0009 . . CALL 4 0 3 | |
0000 . . . FUNCC ; bit.rshift | |
0010 . . CALLM 3 2 0 | |
0000 . . . FUNCC ; tonumber | |
0011 . . TGETV 4 0 3 | |
0012 . . ISF 4 | |
0013 . . JMP 5 => 0027 | |
0014 . . UGET 4 0 ; u64 | |
0015 . . MOV 5 1 | |
0016 . . CALL 4 2 2 | |
0000 . . . FUNCF 4 ; tlb.lua:14 | |
0001 . . . UGET 1 0 ; ffi | |
0002 . . . TGETS 1 1 0 ; "cast" | |
0003 . . . KSTR 2 1 ; "uint64_t" | |
0004 . . . MOV 3 0 | |
0005 . . . CALLT 1 3 | |
0000 . . . FUNCC ; ffi.cast | |
0017 . . TGETV 5 0 3 | |
0018 . . ADDVV 4 4 5 | |
0000 . . . . FUNCC ; ffi.meta.__add | |
0019 . . UGET 5 1 ; ffi | |
0020 . . TGETS 5 5 4 ; "cast" | |
0021 . . UGET 6 1 ; ffi | |
0022 . . TGETS 6 6 5 ; "typeof" | |
0023 . . MOV 7 1 | |
0024 . . CALL 6 2 2 | |
0000 . . . FUNCC ; ffi.typeof | |
0025 . . MOV 7 4 | |
0026 . . CALLT 5 3 | |
0000 . . FUNCC ; ffi.cast | |
0006 . ISEQP 2 0 | |
0007 . JMP 3 => 0009 | |
0000 . . . FUNCC ; ffi.meta.__eq | |
0008 . RET1 2 2 | |
0029 CALLM 5 2 1 | |
0000 . FUNCC ; ffi.cast | |
0030 UGET 6 2 ; virtio_net_hdr_size | |
0031 MOV 7 4 | |
0032 TGETS 8 0 1 ; "txring" | |
0033 TGETS 8 8 6 ; "desc" | |
0034 TGETS 9 7 10 ; "next" | |
0000 . . FUNCC ; ffi.meta.__index | |
0035 TGETV 7 8 9 | |
0000 . . FUNCC ; ffi.meta.__index | |
0036 UGET 8 3 ; freelist | |
0037 TGETS 8 8 11 ; "remove" | |
0038 TGETS 9 0 12 ; "buffer_recs" | |
0039 CALL 8 2 2 | |
0000 . JFUNCF 3 4 ; freelist.lua:19 | |
0001 . TGETS 1 0 0 ; "nfree" | |
0002 . ISNEN 1 0 ; 0 | |
0003 . JMP 1 => 0007 | |
0007 . TGETS 1 0 0 ; "nfree" | |
0008 . SUBVN 1 1 1 ; 1 | |
0009 . TSETS 1 0 0 ; "nfree" | |
0010 . TGETS 1 0 1 ; "list" | |
0011 . TGETS 2 0 0 ; "nfree" | |
0012 . TGETV 1 1 2 | |
0000 . . . FUNCC ; ffi.meta.__index | |
0013 . RET1 1 2 | |
0040 IST 8 | |
0041 JMP 9 => 0046 | |
0046 MOV 10 0 | |
0047 TGETS 9 0 8 ; "map_from_guest" | |
0048 TGETS 11 7 9 ; "addr" | |
0000 . . FUNCC ; ffi.meta.__index | |
0049 CALL 9 2 3 | |
0000 . FUNCF 12 ; net_device.lua:334 | |
0001 . UGET 2 0 ; tlb | |
0002 . TGETS 2 2 0 ; "lookup" | |
0003 . UGET 3 1 ; guest_tlb | |
0004 . MOV 4 1 | |
0005 . CALL 2 2 3 | |
0000 . . FUNCF 8 ; tlb.lua:24 | |
0001 . . UGET 2 0 ; u64 | |
0002 . . MOV 3 1 | |
0003 . . CALL 2 2 2 | |
0000 . . . FUNCF 4 ; tlb.lua:14 | |
0001 . . . UGET 1 0 ; ffi | |
0002 . . . TGETS 1 1 0 ; "cast" | |
0003 . . . KSTR 2 1 ; "uint64_t" | |
0004 . . . MOV 3 0 | |
0005 . . . CALLT 1 3 | |
0000 . . . FUNCC ; ffi.cast | |
0004 . . GGET 3 0 ; "tonumber" | |
0005 . . GGET 4 1 ; "bit" | |
0006 . . TGETS 4 4 2 ; "rshift" | |
0007 . . MOV 5 2 | |
0008 . . TGETS 6 0 3 ; "pagesize" | |
0009 . . CALL 4 0 3 | |
0000 . . . FUNCC ; bit.rshift | |
0010 . . CALLM 3 2 0 | |
0000 . . . FUNCC ; tonumber | |
0011 . . TGETV 4 0 3 | |
0012 . . ISF 4 | |
0013 . . JMP 5 => 0027 | |
0014 . . UGET 4 0 ; u64 | |
0015 . . MOV 5 1 | |
0016 . . CALL 4 2 2 | |
0000 . . . FUNCF 4 ; tlb.lua:14 | |
0001 . . . UGET 1 0 ; ffi | |
0002 . . . TGETS 1 1 0 ; "cast" | |
0003 . . . KSTR 2 1 ; "uint64_t" | |
0004 . . . MOV 3 0 | |
0005 . . . CALLT 1 3 | |
0000 . . . FUNCC ; ffi.cast | |
0017 . . TGETV 5 0 3 | |
0018 . . ADDVV 4 4 5 | |
0000 . . . . FUNCC ; ffi.meta.__add | |
0019 . . UGET 5 1 ; ffi | |
0020 . . TGETS 5 5 4 ; "cast" | |
0021 . . UGET 6 1 ; ffi | |
0022 . . TGETS 6 6 5 ; "typeof" | |
0023 . . MOV 7 1 | |
0024 . . CALL 6 2 2 | |
0000 . . . FUNCC ; ffi.typeof | |
0025 . . MOV 7 4 | |
0026 . . CALLT 5 3 | |
0000 . . FUNCC ; ffi.cast | |
0006 . ISEQP 2 0 | |
0007 . JMP 3 => 0009 | |
0000 . . . FUNCC ; ffi.meta.__eq | |
0008 . RET1 2 2 | |
0050 UGET 10 0 ; ffi | |
0051 TGETS 10 10 7 ; "cast" | |
0052 UGET 11 1 ; char_ptr_t | |
0053 MOV 12 9 | |
0054 CALL 10 2 3 | |
0000 . FUNCC ; ffi.cast | |
0055 TSETS 10 8 15 ; "pointer" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0056 MOV 11 0 | |
0057 TGETS 10 0 17 ; "translate_physical_addr" | |
0058 MOV 12 9 | |
0059 CALL 10 2 3 | |
0000 . JFUNCF 4 3 ; net_device.lua:311 | |
0001 . UGET 2 0 ; memory | |
0002 . TGETS 2 2 0 ; "virtual_to_physical" | |
0003 . MOV 3 1 | |
0004 . CALLT 2 2 | |
0000 . FUNCF 9 ; memory.lua:91 | |
0001 . UGET 1 0 ; tlb | |
0002 . TGETS 1 1 0 ; "lookup" | |
0003 . UGET 2 1 ; phystlb | |
0004 . MOV 3 0 | |
0005 . CALL 1 2 3 | |
0000 . . FUNCF 8 ; tlb.lua:24 | |
0001 . . UGET 2 0 ; u64 | |
0002 . . MOV 3 1 | |
0003 . . CALL 2 2 2 | |
0000 . . . FUNCF 4 ; tlb.lua:14 | |
0001 . . . UGET 1 0 ; ffi | |
0002 . . . TGETS 1 1 0 ; "cast" | |
0003 . . . KSTR 2 1 ; "uint64_t" | |
0004 . . . MOV 3 0 | |
0005 . . . CALLT 1 3 | |
0000 . . . FUNCC ; ffi.cast | |
0004 . . GGET 3 0 ; "tonumber" | |
0005 . . GGET 4 1 ; "bit" | |
0006 . . TGETS 4 4 2 ; "rshift" | |
0007 . . MOV 5 2 | |
0008 . . TGETS 6 0 3 ; "pagesize" | |
0009 . . CALL 4 0 3 | |
0000 . . . FUNCC ; bit.rshift | |
0010 . . CALLM 3 2 0 | |
0000 . . . FUNCC ; tonumber | |
0011 . . TGETV 4 0 3 | |
0012 . . ISF 4 | |
0013 . . JMP 5 => 0027 | |
0014 . . UGET 4 0 ; u64 | |
0015 . . MOV 5 1 | |
0016 . . CALL 4 2 2 | |
0000 . . . FUNCF 4 ; tlb.lua:14 | |
0001 . . . UGET 1 0 ; ffi | |
0002 . . . TGETS 1 1 0 ; "cast" | |
0003 . . . KSTR 2 1 ; "uint64_t" | |
0004 . . . MOV 3 0 | |
0005 . . . CALLT 1 3 | |
0000 . . . FUNCC ; ffi.cast | |
0017 . . TGETV 5 0 3 | |
0018 . . ADDVV 4 4 5 | |
0000 . . . . FUNCC ; ffi.meta.__add | |
0019 . . UGET 5 1 ; ffi | |
0020 . . TGETS 5 5 4 ; "cast" | |
0021 . . UGET 6 1 ; ffi | |
0022 . . TGETS 6 6 5 ; "typeof" | |
0023 . . MOV 7 1 | |
0024 . . CALL 6 2 2 | |
0000 . . . FUNCC ; ffi.typeof | |
0025 . . MOV 7 4 | |
0026 . . CALLT 5 3 | |
0000 . . FUNCC ; ffi.cast | |
0006 . ISF 1 | |
0007 . JMP 2 => 0009 | |
0008 . RET1 1 2 | |
0060 TSETS 10 8 16 ; "physical" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0061 TGETS 10 7 19 ; "len" | |
0000 . . FUNCC ; ffi.meta.__index | |
0062 TSETS 10 8 18 ; "size" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0063 TGETS 10 8 18 ; "size" | |
0000 . . FUNCC ; ffi.meta.__index | |
0064 ADDVV 6 6 10 | |
0065 TGETS 10 8 20 ; "origin" | |
0000 . . FUNCC ; ffi.meta.__index | |
0066 UGET 11 5 ; C | |
0067 TGETS 11 11 22 ; "BUFFER_ORIGIN_VIRTIO" | |
0000 . . FUNCC ; ffi.clib.__index | |
0068 TSETS 11 10 21 ; "type" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0069 TGETS 10 8 20 ; "origin" | |
0000 . . FUNCC ; ffi.meta.__index | |
0070 TGETS 10 10 23 ; "info" | |
0000 . . FUNCC ; ffi.meta.__index | |
0071 TGETS 10 10 24 ; "virtio" | |
0000 . . FUNCC ; ffi.meta.__index | |
0072 TGETS 11 0 26 ; "virtio_device_id" | |
0073 TSETS 11 10 25 ; "device_id" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0074 KSHORT 11 0 | |
0075 TSETS 11 10 27 ; "ring_id" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0076 TSETS 3 10 28 ; "header_id" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0077 TSETS 5 10 29 ; "header_pointer" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0078 TSETS 6 10 30 ; "total_size" | |
0000 . . FUNCC ; ffi.meta.__newindex | |
0079 UGET 11 3 ; freelist | |
0080 TGETS 11 11 31 ; "add" | |
0081 TGETS 12 0 32 ; "vring_transmit_buffers" | |
0082 MOV 13 8 | |
0083 CALL 11 1 3 | |
0000 . JFUNCF 4 6 ; freelist.lua:12 | |
0001 . TGETS 2 0 0 ; "list" | |
0002 . TGETS 3 0 1 ; "nfree" | |
0003 . TSETV 1 2 3 | |
0000 . . . FUNCC ; ffi.meta.__newindex | |
0004 . TGETS 2 0 1 ; "nfree" | |
0005 . ADDVN 2 2 0 ; 1 | |
0006 . TSETS 2 0 1 ; "nfree" | |
0007 . RET0 0 1 | |
0084 TGETS 11 0 0 ; "txavail" | |
0085 ADDVN 11 11 2 ; 1 | |
0086 MODVN 11 11 3 ; 65536 | |
0087 TSETS 11 0 0 ; "txavail" | |
0088 JMP 3 => 0005 | |
0005 ISEQV 2 1 | |
0006 JMP 3 => 0089 | |
0007 LOOP 3 => 0089 | |
---- TRACE 7 IR | |
0001 > num SLOAD #3 T | |
0002 > num NE 0001 +0 | |
0003 + num SUB 0001 +1 | |
0004 > tab SLOAD #1 T | |
0005 int FLOAD 0004 tab.hmask | |
0006 > int EQ 0005 +15 | |
0007 p32 FLOAD 0004 tab.node | |
0008 > p32 HREFK 0007 "txring" @11 | |
0009 > tab HLOAD 0008 | |
0010 int FLOAD 0009 tab.hmask | |
0011 > int EQ 0010 +3 | |
0012 p32 FLOAD 0009 tab.node | |
0013 > p32 HREFK 0012 "avail" @2 | |
0014 > cdt HLOAD 0013 | |
0015 u16 FLOAD 0014 cdata.ctypeid | |
0016 > int EQ 0015 +592 | |
0017 p64 FLOAD 0014 cdata.ptr | |
0020 > p32 HREFK 0007 "tx_vring_num" @14 | |
0021 > num HLOAD 0020 | |
0022 num DIV 0003 0021 | |
0023 num FPMATH 0022 floor | |
0024 num MUL 0023 0021 | |
0025 num SUB 0003 0024 | |
0026 i64 CONV 0025 i64.num | |
0027 i64 ADD 0026 0026 | |
0028 p64 ADD 0027 0017 | |
0029 p64 ADD 0028 +4 | |
0030 u16 XLOAD 0029 | |
0031 > p32 HREFK 0012 "desc" @0 | |
0032 > cdt HLOAD 0031 | |
0033 u16 FLOAD 0032 cdata.ctypeid | |
0034 > int EQ 0033 +590 | |
0035 p64 FLOAD 0032 cdata.ptr | |
0036 i64 BSHL 0030 +4 | |
0037 p64 ADD 0036 0035 | |
0038 } cdt CNEWI +594 0037 | |
0039 fun SLOAD #0 R | |
0040 > p32 UREFC 0039 #0 | |
0041 > tab ULOAD 0040 | |
0042 int FLOAD 0041 tab.hmask | |
0043 > int EQ 0042 +31 | |
0044 p32 FLOAD 0041 tab.node | |
0045 > p32 HREFK 0044 "cast" @6 | |
0046 > fun HLOAD 0045 | |
0047 > fun EQ 0039 net_device.lua:157 | |
0048 p32 HREF 0004 "map_from_guest" | |
0049 > p32 EQ 0048 [0x41196458] | |
0050 tab FLOAD 0004 tab.meta | |
0051 > tab NE 0050 [NULL] | |
0052 int FLOAD 0050 tab.hmask | |
0053 > int EQ 0052 +1 | |
0054 p32 FLOAD 0050 tab.node | |
0055 > p32 HREFK 0054 "__index" @1 | |
0056 > tab HLOAD 0055 | |
0057 int FLOAD 0056 tab.hmask | |
0058 > int EQ 0057 +31 | |
0059 p32 FLOAD 0056 tab.node | |
0060 > p32 HREFK 0059 "map_from_guest" @25 | |
0061 > fun HLOAD 0060 | |
0062 u64 XLOAD 0037 | |
0063 } cdt CNEWI +12 0062 | |
0064 > fun EQ 0061 net_device.lua:334 | |
0065 > nil PROF | |
0066 > p32 UREFC net_device.lua:334 #0 | |
0067 > tab ULOAD 0066 | |
0068 int FLOAD 0067 tab.hmask | |
0069 > int EQ 0068 +7 | |
0070 p32 FLOAD 0067 tab.node | |
0071 > p32 HREFK 0070 "lookup" @6 | |
0072 > fun HLOAD 0071 | |
0073 > p32 UREFC net_device.lua:334 #1 | |
0074 > tab ULOAD 0073 | |
0075 > fun EQ 0072 tlb.lua:24 | |
0076 > nil PROF | |
0077 > p32 UREFC tlb.lua:14 #0 | |
0078 > tab ULOAD 0077 | |
0079 int FLOAD 0078 tab.hmask | |
0080 > int EQ 0079 +31 | |
0081 p32 FLOAD 0078 tab.node | |
0082 > p32 HREFK 0081 "cast" @6 | |
0083 > fun HLOAD 0082 | |
0084 > fun EQ 0083 ffi.cast | |
0085 > nil PROF | |
0086 tab FLOAD tlb.lua:24 func.env | |
0087 p32 HREF 0086 "tonumber" | |
0088 > p32 EQ 0087 [0x41196458] | |
0089 tab FLOAD 0086 tab.meta | |
0090 > tab NE 0089 [NULL] | |
0091 int FLOAD 0089 tab.hmask | |
0092 > int EQ 0091 +1 | |
0093 p32 FLOAD 0089 tab.node | |
0094 > p32 HREFK 0093 "__index" @1 | |
0095 > tab HLOAD 0094 | |
0096 int FLOAD 0095 tab.hmask | |
0097 > int EQ 0096 +63 | |
0098 p32 FLOAD 0095 tab.node | |
0099 > p32 HREFK 0098 "tonumber" @8 | |
0100 > fun HLOAD 0099 | |
0101 p32 HREF 0086 "bit" | |
0102 > p32 EQ 0101 [0x41196458] | |
0103 > p32 HREFK 0098 "bit" @38 | |
0104 > tab HLOAD 0103 | |
0105 int FLOAD 0104 tab.hmask | |
0106 > int EQ 0105 +15 | |
0107 p32 FLOAD 0104 tab.node | |
0108 > p32 HREFK 0107 "rshift" @5 | |
0109 > fun HLOAD 0108 | |
0110 int FLOAD 0074 tab.hmask | |
0111 > int EQ 0110 +15 | |
0112 p32 FLOAD 0074 tab.node | |
0113 > p32 HREFK 0112 "pagesize" @14 | |
0114 > num HLOAD 0113 | |
0115 > fun EQ 0109 bit.rshift | |
0116 int TOBIT 0114 bias | |
0117 u64 BSHR 0062 0116 | |
0119 > fun EQ 0100 tonumber | |
0120 num CONV 0117 num.u64 | |
0121 > int CONV 0120 int.num | |
0122 int FLOAD 0074 tab.asize | |
0123 > int ULE 0122 0121 | |
0124 p32 HREF 0074 0120 | |
0125 > cdt HLOAD 0124 | |
0126 > nil PROF | |
0127 u16 FLOAD 0125 cdata.ctypeid | |
0128 > int EQ 0127 +12 | |
0129 u64 FLOAD 0125 cdata.int64 | |
0130 u64 ADD 0129 0062 | |
0131 } cdt CNEWI +12 0130 | |
0132 > p32 HREFK 0081 "typeof" @7 | |
0133 > fun HLOAD 0132 | |
0134 > fun EQ 0133 ffi.typeof | |
0136 > nil PROF | |
0137 > fun EQ 0046 ffi.cast | |
0138 } cdt CNEWI +96 0130 | |
0139 p64 ADD 0037 +14 | |
0140 u16 XLOAD 0139 | |
0141 i64 BSHL 0140 +4 | |
0142 p64 ADD 0141 0035 | |
0143 } cdt CNEWI +594 0142 | |
0144 > p32 UREFC net_device.lua:157 #3 | |
0145 > tab ULOAD 0144 | |
0146 int FLOAD 0145 tab.hmask | |
0147 > int EQ 0146 +7 | |
0148 p32 FLOAD 0145 tab.node | |
0149 > p32 HREFK 0148 "remove" @2 | |
0150 > fun HLOAD 0149 | |
0151 > p32 HREFK 0007 "buffer_recs" @15 | |
0152 > tab HLOAD 0151 | |
0153 > fun EQ 0150 freelist.lua:19 | |
0154 > nil PROF | |
0155 int FLOAD 0152 tab.hmask | |
0156 > int EQ 0155 +3 | |
0157 p32 FLOAD 0152 tab.node | |
0158 > p32 HREFK 0157 "nfree" @0 | |
0159 > num HLOAD 0158 | |
0160 > num NE 0159 +0 | |
0161 num SUB 0159 +1 | |
0162 num HSTORE 0158 0161 | |
0163 > p32 HREFK 0157 "list" @2 | |
0164 > cdt HLOAD 0163 | |
0165 u16 FLOAD 0164 cdata.ctypeid | |
0166 > int EQ 0165 +240 | |
0167 i64 CONV 0159 i64.num | |
0169 i64 BSHL 0167 +3 | |
0170 p64 ADD 0169 0164 | |
0171 p64 XLOAD 0170 | |
0172 } cdt CNEWI +212 0171 | |
0173 > nil PROF | |
0174 u64 XLOAD 0142 | |
0175 } cdt CNEWI +12 0174 | |
0176 > nil PROF | |
0177 u64 BSHR 0174 0116 | |
0179 num CONV 0177 num.u64 | |
0180 > int CONV 0179 int.num | |
0181 > int UGE 0180 0122 | |
0182 p32 HREF 0074 0179 | |
0183 > cdt HLOAD 0182 | |
0184 > nil PROF | |
0185 u16 FLOAD 0183 cdata.ctypeid | |
0186 > int EQ 0185 +12 | |
0187 u64 FLOAD 0183 cdata.int64 | |
0188 u64 ADD 0187 0174 | |
0189 } cdt CNEWI +12 0188 | |
0190 > nil PROF | |
0191 > p32 UREFC net_device.lua:157 #0 | |
0192 > tab ULOAD 0191 | |
0193 int FLOAD 0192 tab.hmask | |
0194 > int EQ 0193 +31 | |
0195 p32 FLOAD 0192 tab.node | |
0196 > p32 HREFK 0195 "cast" @6 | |
0197 > fun HLOAD 0196 | |
0198 > fun EQ 0197 ffi.cast | |
0200 p64 XSTORE 0171 0188 | |
0201 p32 HREF 0004 "translate_physical_a"~ | |
0202 > p32 EQ 0201 [0x41196458] | |
0203 > p32 HREFK 0059 "translate_physical_a"~ @24 | |
0204 > fun HLOAD 0203 | |
0205 > fun EQ 0204 net_device.lua:311 | |
0206 > nil PROF | |
0207 > p32 UREFC net_device.lua:311 #0 | |
0208 > tab ULOAD 0207 | |
0209 int FLOAD 0208 tab.hmask | |
0210 > int EQ 0209 +31 | |
0211 p32 FLOAD 0208 tab.node | |
0212 > p32 HREFK 0211 "virtual_to_physical" @20 | |
0213 > fun HLOAD 0212 | |
0214 > fun EQ 0213 memory.lua:91 | |
0215 > nil PROF | |
0216 > p32 UREFC memory.lua:91 #0 | |
0217 > tab ULOAD 0216 | |
0218 int FLOAD 0217 tab.hmask | |
0219 > int EQ 0218 +7 | |
0220 p32 FLOAD 0217 tab.node | |
0221 > p32 HREFK 0220 "lookup" @6 | |
0222 > fun HLOAD 0221 | |
0223 > p32 UREFC memory.lua:91 #1 | |
0224 > tab ULOAD 0223 | |
0225 > fun EQ 0222 tlb.lua:24 | |
0226 > nil PROF | |
0227 int FLOAD 0224 tab.hmask | |
0228 > int EQ 0227 +15 | |
0229 p32 FLOAD 0224 tab.node | |
0230 > p32 HREFK 0229 "pagesize" @15 | |
0231 > num HLOAD 0230 | |
0232 int TOBIT 0231 bias | |
0233 u64 BSHR 0188 0232 | |
0235 num CONV 0233 num.u64 | |
0236 > int CONV 0235 int.num | |
0237 int FLOAD 0224 tab.asize | |
0238 > int ULE 0237 0236 | |
0239 p32 HREF 0224 0235 | |
0240 > cdt HLOAD 0239 | |
0241 > nil PROF | |
0242 u16 FLOAD 0240 cdata.ctypeid | |
0243 > int EQ 0242 +12 | |
0244 u64 FLOAD 0240 cdata.int64 | |
0245 u64 ADD 0244 0188 | |
0246 } cdt CNEWI +12 0245 | |
0247 > nil PROF | |
0248 p64 ADD 0171 +8 | |
0249 u64 XSTORE 0248 0245 | |
0250 p64 ADD 0142 +8 | |
0251 u32 XLOAD 0250 | |
0252 num CONV 0251 num.u32 | |
0253 p64 ADD 0171 +16 | |
0254 u32 XSTORE 0253 0251 | |
0255 num ADD 0252 +10 | |
0256 p64 ADD 0171 +24 | |
0258 > p32 UREFC net_device.lua:157 #5 | |
0259 > udt ULOAD 0258 | |
0260 > p32 EQ 0259 [0x411a2f38] | |
0261 u32 XSTORE 0256 +1 | |
0262 p64 ADD 0171 +32 | |
0265 > p32 HREFK 0007 "virtio_device_id" @10 | |
0266 > num HLOAD 0265 | |
0267 int CONV 0266 int.num | |
0268 i16 XSTORE 0262 0267 | |
0269 p64 ADD 0171 +34 | |
0270 i16 XSTORE 0269 +0 | |
0271 p64 ADD 0171 +36 | |
0272 i16 XSTORE 0271 0030 | |
0273 p64 ADD 0171 +40 | |
0274 p64 XSTORE 0273 0130 | |
0275 p64 ADD 0171 +48 | |
0276 u32 CONV 0255 u32.num | |
0277 u32 XSTORE 0275 0276 | |
0278 > p32 HREFK 0148 "add" @5 | |
0279 > fun HLOAD 0278 | |
0280 > p32 HREFK 0007 "vring_transmit_buffe"~ @9 | |
0281 > tab HLOAD 0280 | |
0282 > fun EQ 0279 freelist.lua:12 | |
0283 > nil PROF | |
0284 int FLOAD 0281 tab.hmask | |
0285 > int EQ 0284 +3 | |
0286 p32 FLOAD 0281 tab.node | |
0287 > p32 HREFK 0286 "list" @2 | |
0288 > cdt HLOAD 0287 | |
0289 > p32 HREFK 0286 "nfree" @0 | |
0290 > num HLOAD 0289 | |
0291 u16 FLOAD 0288 cdata.ctypeid | |
0292 > int EQ 0291 +240 | |
0293 i64 CONV 0290 i64.num | |
0294 i64 BSHL 0293 +3 | |
0295 p64 ADD 0294 0288 | |
0296 p64 ADD 0295 +8 | |
0297 p64 XSTORE 0296 0171 | |
0298 num ADD 0290 +1 | |
0299 num HSTORE 0289 0298 | |
0300 > nil PROF | |
0301 > p32 HREFK 0007 "txavail" @13 | |
0302 > num HLOAD 0301 | |
0303 num ADD 0302 +1 | |
0304 num MUL 0303 +1.52587890625e-05 | |
0305 num FPMATH 0304 floor | |
0306 num MUL 0305 +65536 | |
0307 + num SUB 0303 0306 | |
0308 num HSTORE 0301 0307 | |
0309 > num SLOAD #2 T | |
0310 > num NE 0309 0003 | |
0311 ------ LOOP ------------ | |
0312 > num NE 0003 +0 | |
0313 + num SUB 0003 +1 | |
0314 num DIV 0313 0021 | |
0315 num FPMATH 0314 floor | |
0316 num MUL 0315 0021 | |
0317 num SUB 0313 0316 | |
0318 i64 CONV 0317 i64.num | |
0319 i64 ADD 0318 0318 | |
0320 p64 ADD 0319 0017 | |
0321 p64 ADD 0320 +4 | |
0322 u16 XLOAD 0321 | |
0323 i64 BSHL 0322 +4 | |
0324 p64 ADD 0323 0035 | |
0325 } cdt CNEWI +594 0324 | |
0326 u64 XLOAD 0324 | |
0327 } cdt CNEWI +12 0326 | |
0328 > nil PROF | |
0329 u64 BSHR 0326 0116 | |
0330 num CONV 0329 num.u64 | |
0331 > int CONV 0330 int.num | |
0332 > int UGE 0331 0122 | |
0333 p32 HREF 0074 0330 | |
0334 > cdt HLOAD 0333 | |
0335 > nil PROF | |
0336 u16 FLOAD 0334 cdata.ctypeid | |
0337 > int EQ 0336 +12 | |
0338 u64 FLOAD 0334 cdata.int64 | |
0339 u64 ADD 0338 0326 | |
0340 } cdt CNEWI +12 0339 | |
0341 > nil PROF | |
0342 } cdt CNEWI +96 0339 | |
0343 p64 ADD 0324 +14 | |
0344 u16 XLOAD 0343 | |
0345 i64 BSHL 0344 +4 | |
0346 p64 ADD 0345 0035 | |
0347 } cdt CNEWI +594 0346 | |
0348 > nil PROF | |
0349 > num HLOAD 0158 | |
0350 > num NE 0349 +0 | |
0351 num SUB 0349 +1 | |
0352 num HSTORE 0158 0351 | |
0353 i64 CONV 0349 i64.num | |
0354 i64 BSHL 0353 +3 | |
0355 p64 ADD 0354 0164 | |
0356 p64 XLOAD 0355 | |
0357 } cdt CNEWI +212 0356 | |
0358 > nil PROF | |
0359 u64 XLOAD 0346 | |
0360 } cdt CNEWI +12 0359 | |
0361 > nil PROF | |
0362 u64 BSHR 0359 0116 | |
0363 num CONV 0362 num.u64 | |
0364 > int CONV 0363 int.num | |
0365 > int UGE 0364 0122 | |
0366 p32 HREF 0074 0363 | |
0367 > cdt HLOAD 0366 | |
0368 > nil PROF | |
0369 u16 FLOAD 0367 cdata.ctypeid | |
0370 > int EQ 0369 +12 | |
0371 u64 FLOAD 0367 cdata.int64 | |
0372 u64 ADD 0371 0359 | |
0373 } cdt CNEWI +12 0372 | |
0374 > nil PROF | |
0375 p64 XSTORE 0356 0372 | |
0376 > nil PROF | |
0377 u64 BSHR 0372 0232 | |
0378 num CONV 0377 num.u64 | |
0379 > int CONV 0378 int.num | |
0380 > int UGE 0379 0237 | |
0381 p32 HREF 0224 0378 | |
0382 > cdt HLOAD 0381 | |
0383 > nil PROF | |
0384 u16 FLOAD 0382 cdata.ctypeid | |
0385 > int EQ 0384 +12 | |
0386 u64 FLOAD 0382 cdata.int64 | |
0387 u64 ADD 0386 0372 | |
0388 } cdt CNEWI +12 0387 | |
0389 > nil PROF | |
0390 p64 ADD 0356 +8 | |
0391 u64 XSTORE 0390 0387 | |
0392 p64 ADD 0346 +8 | |
0393 u32 XLOAD 0392 | |
0394 num CONV 0393 num.u32 | |
0395 p64 ADD 0356 +16 | |
0396 u32 XSTORE 0395 0393 | |
0397 num ADD 0394 +10 | |
0398 p64 ADD 0356 +24 | |
0399 u32 XSTORE 0398 +1 | |
0400 p64 ADD 0356 +32 | |
0401 i16 XSTORE 0400 0267 | |
0402 p64 ADD 0356 +34 | |
0403 i16 XSTORE 0402 +0 | |
0404 p64 ADD 0356 +36 | |
0405 i16 XSTORE 0404 0322 | |
0406 p64 ADD 0356 +40 | |
0407 p64 XSTORE 0406 0339 | |
0408 p64 ADD 0356 +48 | |
0409 u32 CONV 0397 u32.num | |
0410 u32 XSTORE 0408 0409 | |
0411 > nil PROF | |
0412 > num HLOAD 0289 | |
0413 i64 CONV 0412 i64.num | |
0414 i64 BSHL 0413 +3 | |
0415 p64 ADD 0414 0288 | |
0416 p64 ADD 0415 +8 | |
0417 p64 XSTORE 0416 0356 | |
0418 num ADD 0412 +1 | |
0419 num HSTORE 0289 0418 | |
0420 > nil PROF | |
0421 num ADD 0307 +1 | |
0422 num MUL 0421 +1.52587890625e-05 | |
0423 num FPMATH 0422 floor | |
0424 num MUL 0423 +65536 | |
0425 + num SUB 0421 0424 | |
0426 num HSTORE 0301 0425 | |
0427 > num NE 0313 0309 | |
0428 num PHI 0003 0313 | |
0429 num PHI 0307 0425 | |
---- TRACE 7 mcode 4506 | |
1331cc87 add rsp, -0x70 | |
1331cc8b mov dword [0x41196410], 0x7 | |
1331cc96 mov ecx, edx | |
1331cc98 xorps xmm9, xmm9 | |
1331cc9c movsd xmm8, [0x534546e0] | |
1331cca6 movsd xmm3, [0x411b4da0] | |
1331ccaf movsd xmm2, [0x4064ef48] | |
1331ccb8 movsd xmm1, [0x4064ef40] | |
1331ccc1 cmp dword [rcx+0x14], 0xfffeffff | |
1331ccc8 jnb 0x13310010 | |
1331ccce movsd xmm6, [rcx+0x10] | |
1331ccd3 ucomisd xmm6, xmm9 | |
1331ccd8 jpe 0x1331cce0 | |
1331ccda jz 0x13310014 | |
1331cce0 subsd xmm6, xmm3 | |
1331cce4 cmp dword [rcx+0x4], -0x0c | |
1331cce8 jnz 0x13310018 | |
1331ccee mov r10d, [rcx] | |
1331ccf1 mov [rsp+0xc], r10d | |
1331ccf6 cmp dword [r10+0x1c], +0x0f | |
1331ccfb jnz 0x13310018 | |
1331cd01 mov eax, [r10+0x14] | |
1331cd05 mov rdi, 0xfffffffb40e28608 | |
1331cd0f cmp rdi, [rax+0x110] | |
1331cd16 jnz 0x13310018 | |
1331cd1c cmp dword [rax+0x10c], -0x0c | |
1331cd23 jnz 0x13310018 | |
1331cd29 mov edx, [rax+0x108] | |
1331cd2f cmp dword [rdx+0x1c], +0x03 | |
1331cd33 jnz 0x13310018 | |
1331cd39 mov edx, [rdx+0x14] | |
1331cd3c mov rdi, 0xfffffffb40e25950 | |
1331cd46 cmp rdi, [rdx+0x38] | |
1331cd4a jnz 0x13310018 | |
1331cd50 cmp dword [rdx+0x34], -0x0b | |
1331cd54 jnz 0x13310018 | |
1331cd5a mov ebx, [rdx+0x30] | |
1331cd5d movzx ebp, word [rbx+0x6] | |
1331cd61 cmp ebp, 0x250 | |
1331cd67 jnz 0x13310018 | |
1331cd6d mov r13, [rbx+0x8] | |
1331cd71 mov [rsp+0x60], r13 | |
1331cd76 mov rdi, 0xfffffffb40e27a98 | |
1331cd80 cmp rdi, [rax+0x158] | |
1331cd87 jnz 0x13310018 | |
1331cd8d cmp dword [rax+0x154], 0xfffeffff | |
1331cd97 jnb 0x13310018 | |
1331cd9d movsd xmm10, [rax+0x150] | |
1331cda6 movaps xmm0, xmm6 | |
1331cda9 divsd xmm0, xmm10 | |
1331cdae roundsd xmm4, xmm0, 0x09 | |
1331cdb4 mulsd xmm4, xmm10 | |
1331cdb9 movaps xmm0, xmm6 | |
1331cdbc subsd xmm0, xmm4 | |
1331cdc0 cvttsd2si rbx, xmm0 | |
1331cdc5 movzx esi, word [r13+rbx*2+0x4] | |
1331cdcb mov rdi, 0xfffffffb40e259d0 | |
1331cdd5 cmp rdi, [rdx+0x8] | |
1331cdd9 jnz 0x13310018 | |
1331cddf cmp dword [rdx+0x4], -0x0b | |
1331cde3 jnz 0x13310018 | |
1331cde9 mov edx, [rdx] | |
1331cdeb movzx ebx, word [rdx+0x6] | |
1331cdef cmp ebx, 0x24e | |
1331cdf5 jnz 0x13310018 | |
1331cdfb mov r9, [rdx+0x8] | |
1331cdff mov [rsp+0x48], r9 | |
1331ce04 mov edx, esi | |
1331ce06 shl rdx, 0x04 | |
1331ce0a mov r11, rdx | |
1331ce0d add r11, r9 | |
1331ce10 mov [rsp+0x68], r11 | |
1331ce15 mov ecx, [rcx-0x8] | |
1331ce18 mov edi, [rcx+0x14] | |
1331ce1b cmp byte [rdi+0x6], 0x1 | |
1331ce1f jnz 0x13310018 | |
1331ce25 lea ebx, [rdi+0x8] | |
1331ce28 cmp dword [rbx+0x4], -0x0c | |
1331ce2c jnz 0x13310018 | |
1331ce32 mov ebx, [rbx] | |
1331ce34 cmp dword [rbx+0x1c], +0x1f | |
1331ce38 jnz 0x13310018 | |
1331ce3e mov ebx, [rbx+0x14] | |
1331ce41 mov rdi, 0xfffffffb4119b618 | |
1331ce4b cmp rdi, [rbx+0x98] | |
1331ce52 jnz 0x13310018 | |
1331ce58 cmp dword [rbx+0x94], -0x09 | |
1331ce5f jnz 0x13310018 | |
1331ce65 mov edi, [rbx+0x90] | |
1331ce6b cmp ecx, 0x5323e650 | |
1331ce71 jnz 0x13310018 | |
1331ce77 mov ebp, [r10+0x1c] | |
1331ce7b and ebp, 0xfa0f9e99 | |
1331ce81 lea ebp, [rbp+rbp*2+0x0] | |
1331ce85 shl ebp, 0x03 | |
1331ce88 add ebp, [r10+0x14] | |
1331ce8c cmp dword [rbp+0xc], -0x05 | |
1331ce90 jnz 0x1331ce9f | |
1331ce92 cmp dword [rbp+0x8], 0x40e28200 | |
1331ce99 jz 0x13310018 | |
1331ce9f mov ebp, [rbp+0x10] | |
1331cea2 test ebp, ebp | |
1331cea4 jnz 0x1331ce8c | |
1331cea6 mov ecx, [r10+0x10] | |
1331ceaa test ecx, ecx | |
1331ceac jz 0x13310018 | |
1331ceb2 cmp dword [rcx+0x1c], +0x01 | |
1331ceb6 jnz 0x13310018 | |
1331cebc mov ecx, [rcx+0x14] | |
1331cebf mov rbp, 0xfffffffb41198458 | |
1331cec9 cmp rbp, [rcx+0x20] | |
1331cecd jnz 0x13310018 | |
1331ced3 cmp dword [rcx+0x1c], -0x0c | |
1331ced7 jnz 0x13310018 | |
1331cedd mov ecx, [rcx+0x18] | |
1331cee0 cmp dword [rcx+0x1c], +0x1f | |
1331cee4 jnz 0x13310018 | |
1331ceea mov ecx, [rcx+0x14] | |
1331ceed mov [rsp+0x70], ecx | |
1331cef1 mov rbp, 0xfffffffb40e28200 | |
1331cefb cmp rbp, [rcx+0x260] | |
1331cf02 jnz 0x13310018 | |
1331cf08 cmp dword [rcx+0x25c], -0x09 | |
1331cf0f jnz 0x13310018 | |
1331cf15 mov r14, [r9+rdx] | |
1331cf19 cmp dword [rcx+0x258], 0x5323e9f8 | |
1331cf23 jnz 0x13310018 | |
1331cf29 test byte [0x41196435], 0x80 | |
1331cf31 jnz 0x13310018 | |
1331cf37 cmp dword [0x5323ea2c], -0x0c | |
1331cf3f jnz 0x1331001c | |
1331cf45 mov ecx, [0x5323ea28] | |
1331cf4c cmp dword [rcx+0x1c], +0x07 | |
1331cf50 jnz 0x1331001c | |
1331cf56 mov ecx, [rcx+0x14] | |
1331cf59 mov rbp, 0xfffffffb411b3798 | |
1331cf63 cmp rbp, [rcx+0x98] | |
1331cf6a jnz 0x1331001c | |
1331cf70 cmp dword [rcx+0x94], -0x09 | |
1331cf77 jnz 0x1331001c | |
1331cf7d cmp dword [0x5323ea4c], -0x0c | |
1331cf85 jnz 0x1331001c | |
1331cf8b mov r12d, [0x5323ea48] | |
1331cf93 mov [rsp+0x18], r12d | |
1331cf98 cmp dword [rcx+0x90], 0x411a7910 | |
1331cfa2 jnz 0x1331001c | |
1331cfa8 test byte [0x41196435], 0x80 | |
1331cfb0 jnz 0x1331001c | |
1331cfb6 cmp dword [0x411a78bc], -0x0c | |
1331cfbe jnz 0x13310020 | |
1331cfc4 mov ecx, [0x411a78b8] | |
1331cfcb cmp dword [rcx+0x1c], +0x1f | |
1331cfcf jnz 0x13310020 | |
1331cfd5 mov ebx, [rcx+0x14] | |
1331cfd8 mov rbp, 0xfffffffb4119b618 | |
1331cfe2 cmp rbp, [rbx+0x98] | |
1331cfe9 jnz 0x13310020 | |
1331cfef cmp dword [rbx+0x94], -0x09 | |
1331cff6 jnz 0x13310020 | |
1331cffc cmp dword [rbx+0x90], 0x4119b118 | |
1331d006 jnz 0x13310020 | |
1331d00c test byte [0x41196435], 0x80 | |
1331d014 jnz 0x13310020 | |
1331d01a mov ecx, [0x411a7918] | |
1331d021 mov ebp, [rcx+0x1c] | |
1331d024 and ebp, 0xb42be888 | |
1331d02a lea ebp, [rbp+rbp*2+0x0] | |
1331d02e shl ebp, 0x03 | |
1331d031 add ebp, [rcx+0x14] | |
1331d034 cmp dword [rbp+0xc], -0x05 | |
1331d038 jnz 0x1331d047 | |
1331d03a cmp dword [rbp+0x8], 0x41199310 | |
1331d041 jz 0x13310024 | |
1331d047 mov ebp, [rbp+0x10] | |
1331d04a test ebp, ebp | |
1331d04c jnz 0x1331d034 | |
1331d04e mov ebp, [rcx+0x10] | |
1331d051 test ebp, ebp | |
1331d053 jz 0x13310024 | |
1331d059 cmp dword [rbp+0x1c], +0x01 | |
1331d05d jnz 0x13310024 | |
1331d063 mov ebp, [rbp+0x14] | |
1331d066 mov r15, 0xfffffffb41198458 | |
1331d070 cmp r15, [rbp+0x20] | |
1331d074 jnz 0x13310024 | |
1331d07a cmp dword [rbp+0x1c], -0x0c | |
1331d07e jnz 0x13310024 | |
1331d084 mov ebp, [rbp+0x18] | |
1331d087 cmp dword [rbp+0x1c], +0x3f | |
1331d08b jnz 0x13310024 | |
1331d091 mov r8d, [rbp+0x14] | |
1331d095 mov rbp, 0xfffffffb41199310 | |
1331d09f cmp rbp, [r8+0xc8] | |
1331d0a6 jnz 0x13310024 | |
1331d0ac cmp dword [r8+0xc4], -0x09 | |
1331d0b4 jnz 0x13310024 | |
1331d0ba mov ebp, [rcx+0x1c] | |
1331d0bd and ebp, 0x2b20685a | |
1331d0c3 lea ebp, [rbp+rbp*2+0x0] | |
1331d0c7 shl ebp, 0x03 | |
1331d0ca add ebp, [rcx+0x14] | |
1331d0cd cmp dword [rbp+0xc], -0x05 | |
1331d0d1 jnz 0x1331d0e0 | |
1331d0d3 cmp dword [rbp+0x8], 0x4119cfb8 | |
1331d0da jz 0x13310024 | |
1331d0e0 mov ebp, [rbp+0x10] | |
1331d0e3 test ebp, ebp | |
1331d0e5 jnz 0x1331d0cd | |
1331d0e7 mov rbp, 0xfffffffb4119cfb8 | |
1331d0f1 cmp rbp, [r8+0x398] | |
1331d0f8 jnz 0x13310024 | |
1331d0fe cmp dword [r8+0x394], -0x0c | |
1331d106 jnz 0x13310024 | |
1331d10c mov ecx, [r8+0x390] | |
1331d113 cmp dword [rcx+0x1c], +0x0f | |
1331d117 jnz 0x13310024 | |
1331d11d mov ecx, [rcx+0x14] | |
1331d120 mov rbp, 0xfffffffb4119d2d0 | |
1331d12a cmp rbp, [rcx+0x80] | |
1331d131 jnz 0x13310024 | |
1331d137 cmp dword [rcx+0x7c], -0x09 | |
1331d13b jnz 0x13310024 | |
1331d141 cmp dword [r12+0x1c], +0x0f | |
1331d147 jnz 0x13310024 | |
1331d14d mov ebp, [r12+0x14] | |
1331d152 mov r15, 0xfffffffb4119f928 | |
1331d15c cmp r15, [rbp+0x158] | |
1331d163 jnz 0x13310024 | |
1331d169 cmp dword [rbp+0x154], 0xfffeffff | |
1331d173 jnb 0x13310024 | |
1331d179 movsd xmm0, [rbp+0x150] | |
1331d181 cmp dword [rcx+0x78], 0x4119d2a8 | |
1331d188 jnz 0x13310024 | |
1331d18e addsd xmm0, [0x4095db20] | |
1331d197 movd ecx, xmm0 | |
1331d19b mov [rsp+0x44], ecx | |
1331d19f mov rbp, r14 | |
1331d1a2 shr rbp, cl | |
1331d1a5 cmp dword [r8+0xc0], 0x411992e8 | |
1331d1b0 jnz 0x13310024 | |
1331d1b6 xorps xmm0, xmm0 | |
1331d1b9 cvtsi2sd xmm0, rbp | |
1331d1be test rbp, rbp | |
1331d1c1 jns 0x1331d1cc | |
1331d1c3 addsd xmm0, [0x4064ef00] | |
1331d1cc cvttsd2si ebp, xmm0 | |
1331d1d0 xorps xmm7, xmm7 | |
1331d1d3 cvtsi2sd xmm7, ebp | |
1331d1d7 ucomisd xmm0, xmm7 | |
1331d1db jnz 0x13310024 | |
1331d1e1 jpe 0x13310024 | |
1331d1e7 mov r11d, [r12+0x18] | |
1331d1ec mov [rsp+0x54], r11d | |
1331d1f1 cmp ebp, r11d | |
1331d1f4 jb 0x13310024 | |
1331d1fa movq rbp, xmm0 | |
1331d1ff mov r15d, ebp | |
1331d202 shr rbp, 0x20 | |
1331d206 add ebp, ebp | |
1331d208 xor r15d, ebp | |
1331d20b rol ebp, 0x0e | |
1331d20e sub r15d, ebp | |
1331d211 rol ebp, 0x05 | |
1331d214 xor ebp, r15d | |
1331d217 rol r15d, 0x0d | |
1331d21b sub ebp, r15d | |
1331d21e and ebp, [r12+0x1c] | |
1331d223 lea ebp, [rbp+rbp*2+0x0] | |
1331d227 shl ebp, 0x03 | |
1331d22a add ebp, [r12+0x14] | |
1331d22f cmp dword [rbp+0xc], 0xfffeffff | |
1331d236 jnb 0x1331d241 | |
1331d238 ucomisd xmm0, [rbp+0x8] | |
1331d23d jpe 0x1331d241 | |
1331d23f jz 0x1331d24d | |
1331d241 mov ebp, [rbp+0x10] | |
1331d244 test ebp, ebp | |
1331d246 jnz 0x1331d22f | |
1331d248 mov ebp, 0x41196458 | |
1331d24d cmp dword [rbp+0x4], -0x0b | |
1331d251 jnz 0x13310024 | |
1331d257 mov ebp, [rbp+0x0] | |
1331d25a test byte [0x41196435], 0x80 | |
1331d262 jnz 0x13310024 | |
1331d268 cmp word [rbp+0x6], +0x0c | |
1331d26d jnz 0x13310028 | |
1331d273 mov rbp, [rbp+0x8] | |
1331d277 add rbp, r14 | |
1331d27a mov r15, 0xfffffffb4119c978 | |
1331d284 cmp r15, [rbx+0xb0] | |
1331d28b jnz 0x13310028 | |
1331d291 cmp dword [rbx+0xac], -0x09 | |
1331d298 jnz 0x13310028 | |
1331d29e cmp dword [rbx+0xa8], 0x4119bcb0 | |
1331d2a8 jnz 0x13310028 | |
1331d2ae test byte [0x41196435], 0x80 | |
1331d2b6 jnz 0x13310028 | |
1331d2bc cmp edi, 0x4119b118 | |
1331d2c2 jnz 0x1331002c | |
1331d2c8 movzx r8d, word [r9+rdx+0xe] | |
1331d2ce shl r8, 0x04 | |
1331d2d2 mov r13, r8 | |
1331d2d5 add r13, r9 | |
1331d2d8 cmp dword [0x40e2ce7c], -0x0c | |
1331d2e0 jnz 0x1331002c | |
1331d2e6 mov edx, [0x40e2ce78] | |
1331d2ed cmp dword [rdx+0x1c], +0x07 | |
1331d2f1 jnz 0x1331002c | |
1331d2f7 mov edx, [rdx+0x14] | |
1331d2fa mov rbx, 0xfffffffb4119a578 | |
1331d304 cmp rbx, [rdx+0x38] | |
1331d308 jnz 0x1331002c | |
1331d30e cmp dword [rdx+0x34], -0x09 | |
1331d312 jnz 0x1331002c | |
1331d318 mov rbx, 0xfffffffb40e27960 | |
1331d322 cmp rbx, [rax+0x170] | |
1331d329 jnz 0x1331002c | |
1331d32f cmp dword [rax+0x16c], -0x0c | |
1331d336 jnz 0x1331002c | |
1331d33c mov ebx, [rax+0x168] | |
1331d342 mov [rsp+0x40], ebx | |
1331d346 cmp dword [rdx+0x30], 0x414eea28 | |
1331d34d jnz 0x1331002c | |
1331d353 test byte [0x41196435], 0x80 | |
1331d35b jnz 0x1331002c | |
1331d361 cmp dword [rbx+0x1c], +0x03 | |
1331d365 jnz 0x13310030 | |
1331d36b mov ebx, [rbx+0x14] | |
1331d36e mov rdi, 0xfffffffb411b2518 | |
1331d378 cmp rdi, [rbx+0x8] | |
1331d37c jnz 0x13310030 | |
1331d382 mov edi, ebx | |
1331d384 mov [rsp+0x50], edi | |
1331d388 cmp dword [rbx+0x4], 0xfffeffff | |
1331d38f jnb 0x13310030 | |
1331d395 movsd xmm4, [rbx] | |
1331d399 ucomisd xmm4, xmm9 | |
1331d39e jpe 0x1331d3a6 | |
1331d3a0 jz 0x13310034 | |
1331d3a6 movaps xmm0, xmm4 | |
1331d3a9 subsd xmm0, xmm3 | |
1331d3ad movsd [rbx], xmm0 | |
1331d3b1 mov rdi, 0xfffffffb414ee638 | |
1331d3bb cmp rdi, [rbx+0x38] | |
1331d3bf jnz 0x13310038 | |
1331d3c5 cmp dword [rbx+0x34], -0x0b | |
1331d3c9 jnz 0x13310038 | |
1331d3cf mov edi, [rbx+0x30] | |
1331d3d2 mov [rsp+0x5c], edi | |
1331d3d6 movzx ebx, word [rdi+0x6] | |
1331d3da cmp ebx, 0xf0 | |
1331d3e0 jnz 0x13310038 | |
1331d3e6 cvttsd2si rbx, xmm4 | |
1331d3eb mov rbx, [rdi+rbx*8] | |
1331d3ef test byte [0x41196435], 0x80 | |
1331d3f7 jnz 0x13310038 | |
1331d3fd mov r15, [r13+0x0] | |
1331d401 test byte [0x41196435], 0x80 | |
1331d409 jnz 0x1331003c | |
1331d40f mov rdi, r15 | |
1331d412 shr rdi, cl | |
1331d415 mov ecx, [rsp+0x70] | |
1331d419 xorps xmm0, xmm0 | |
1331d41c cvtsi2sd xmm0, rdi | |
1331d421 test rdi, rdi | |
1331d424 jns 0x1331d42f | |
1331d426 addsd xmm0, [0x4064ef00] | |
1331d42f cvttsd2si edi, xmm0 | |
1331d433 xorps xmm7, xmm7 | |
1331d436 cvtsi2sd xmm7, edi | |
1331d43a ucomisd xmm0, xmm7 | |
1331d43e jnz 0x13310040 | |
1331d444 jpe 0x13310040 | |
1331d44a cmp edi, r11d | |
1331d44d jb 0x13310040 | |
1331d453 movq rdi, xmm0 | |
1331d458 mov r14d, edi | |
1331d45b shr rdi, 0x20 | |
1331d45f add edi, edi | |
1331d461 xor r14d, edi | |
1331d464 rol edi, 0x0e | |
1331d467 sub r14d, edi | |
1331d46a rol edi, 0x05 | |
1331d46d xor edi, r14d | |
1331d470 rol r14d, 0x0d | |
1331d474 sub edi, r14d | |
1331d477 and edi, [r12+0x1c] | |
1331d47c lea edi, [rdi+rdi*2] | |
1331d47f shl edi, 0x03 | |
1331d482 add edi, [r12+0x14] | |
1331d487 cmp dword [rdi+0xc], 0xfffeffff | |
1331d48e jnb 0x1331d499 | |
1331d490 ucomisd xmm0, [rdi+0x8] | |
1331d495 jpe 0x1331d499 | |
1331d497 jz 0x1331d4a5 | |
1331d499 mov edi, [rdi+0x10] | |
1331d49c test edi, edi | |
1331d49e jnz 0x1331d487 | |
1331d4a0 mov edi, 0x41196458 | |
1331d4a5 cmp dword [rdi+0x4], -0x0b | |
1331d4a9 jnz 0x13310040 | |
1331d4af mov edi, [rdi] | |
1331d4b1 test byte [0x41196435], 0x80 | |
1331d4b9 jnz 0x13310040 | |
1331d4bf cmp word [rdi+0x6], +0x0c | |
1331d4c4 jnz 0x13310044 | |
1331d4ca mov r14, [rdi+0x8] | |
1331d4ce add r14, r15 | |
1331d4d1 test byte [0x41196435], 0x80 | |
1331d4d9 jnz 0x13310044 | |
1331d4df cmp dword [0x40e2ce9c], -0x0c | |
1331d4e7 jnz 0x13310048 | |
1331d4ed mov edi, [0x40e2ce98] | |
1331d4f4 cmp dword [rdi+0x1c], +0x1f | |
1331d4f8 jnz 0x13310048 | |
1331d4fe mov edi, [rdi+0x14] | |
1331d501 mov r11, 0xfffffffb4119b618 | |
1331d50b cmp r11, [rdi+0x98] | |
1331d512 jnz 0x13310048 | |
1331d518 cmp dword [rdi+0x94], -0x09 | |
1331d51f jnz 0x13310048 | |
1331d525 mov r11d, [rdi+0x90] | |
1331d52c mov [rsp+0x34], r11d | |
1331d531 cmp dword [rdi+0x90], 0x4119b118 | |
1331d53b jnz 0x13310048 | |
1331d541 xor edi, edi | |
1331d543 mov [rbx], r14 | |
1331d546 mov r15d, [r10+0x1c] | |
1331d54a and r15d, 0x007ec958 | |
1331d551 lea r15d, [r15+r15*2] | |
1331d555 shl r15d, 0x03 | |
1331d559 add r15d, [r10+0x14] | |
1331d55d cmp dword [r15+0xc], -0x05 | |
1331d562 jnz 0x1331d572 | |
1331d564 cmp dword [r15+0x8], 0x40e281d0 | |
1331d56c jz 0x1331004c | |
1331d572 mov r15d, [r15+0x10] | |
1331d576 test r15d, r15d | |
1331d579 jnz 0x1331d55d | |
1331d57b mov r15, 0xfffffffb40e281d0 | |
1331d585 cmp r15, [rcx+0x248] | |
1331d58c jnz 0x1331004c | |
1331d592 cmp dword [rcx+0x244], -0x09 | |
1331d599 jnz 0x1331004c | |
1331d59f cmp dword [rcx+0x240], 0x5323e6b0 | |
1331d5a9 jnz 0x1331004c | |
1331d5af test byte [0x41196435], 0x80 | |
1331d5b7 jnz 0x1331004c | |
1331d5bd cmp dword [0x5323e6dc], -0x0c | |
1331d5c5 jnz 0x13310050 | |
1331d5cb mov ecx, [0x5323e6d8] | |
1331d5d2 cmp dword [rcx+0x1c], +0x1f | |
1331d5d6 jnz 0x13310050 | |
1331d5dc mov ecx, [rcx+0x14] | |
1331d5df mov r15, 0xfffffffb411b3d40 | |
1331d5e9 cmp r15, [rcx+0x1e8] | |
1331d5f0 jnz 0x13310050 | |
1331d5f6 cmp dword [rcx+0x1e4], -0x09 | |
1331d5fd jnz 0x13310050 | |
1331d603 cmp dword [rcx+0x1e0], 0x414ee2a0 | |
1331d60d jnz 0x13310050 | |
1331d613 test byte [0x41196435], 0x80 | |
1331d61b jnz 0x13310050 | |
1331d621 cmp dword [0x411a7964], -0x0c | |
1331d629 jnz 0x13310054 | |
1331d62f mov ecx, [0x411a7960] | |
1331d636 cmp dword [rcx+0x1c], +0x07 | |
1331d63a jnz 0x13310054 | |
1331d640 mov ecx, [rcx+0x14] | |
1331d643 mov r15, 0xfffffffb411b3798 | |
1331d64d cmp r15, [rcx+0x98] | |
1331d654 jnz 0x13310054 | |
1331d65a cmp dword [rcx+0x94], -0x09 | |
1331d661 jnz 0x13310054 | |
1331d667 cmp dword [0x414ee2dc], -0x0c | |
1331d66f jnz 0x13310054 | |
1331d675 mov r10d, [0x414ee2d8] | |
1331d67d cmp dword [rcx+0x90], 0x411a7910 | |
1331d687 jnz 0x13310054 | |
1331d68d test byte [0x41196435], 0x80 | |
1331d695 jnz 0x13310054 | |
1331d69b cmp dword [r10+0x1c], +0x0f | |
1331d6a0 jnz 0x13310058 | |
1331d6a6 mov ecx, [r10+0x14] | |
1331d6aa mov r15, 0xfffffffb4119f928 | |
1331d6b4 cmp r15, [rcx+0x170] | |
1331d6bb jnz 0x13310058 | |
1331d6c1 cmp dword [rcx+0x16c], 0xfffeffff | |
1331d6cb jnb 0x13310058 | |
1331d6d1 movsd xmm0, [rcx+0x168] | |
1331d6d9 addsd xmm0, [0x4095db20] | |
1331d6e2 movd ecx, xmm0 | |
1331d6e6 mov [rsp+0x30], ecx | |
1331d6ea mov r11, r14 | |
1331d6ed shr r11, cl | |
1331d6f0 mov ecx, [0x411964b4] | |
1331d6f7 xorps xmm0, xmm0 | |
1331d6fa cvtsi2sd xmm0, r11 | |
1331d6ff test r11, r11 | |
1331d702 jns 0x1331d70d | |
1331d704 addsd xmm0, [0x4064ef00] | |
1331d70d cvttsd2si r11d, xmm0 | |
1331d712 xorps xmm7, xmm7 | |
1331d715 cvtsi2sd xmm7, r11d | |
1331d71a ucomisd xmm0, xmm7 | |
1331d71e jnz 0x13310058 | |
1331d724 jpe 0x13310058 | |
1331d72a mov r15d, [r10+0x18] | |
1331d72e mov [rsp+0x58], r15d | |
1331d733 cmp r11d, [r10+0x18] | |
1331d737 jb 0x13310058 | |
1331d73d movq r11, xmm0 | |
1331d742 mov r15d, r11d | |
1331d745 shr r11, 0x20 | |
1331d749 add r11d, r11d | |
1331d74c xor r15d, r11d | |
1331d74f rol r11d, 0x0e | |
1331d753 sub r15d, r11d | |
1331d756 rol r11d, 0x05 | |
1331d75a xor r11d, r15d | |
1331d75d rol r15d, 0x0d | |
1331d761 sub r11d, r15d | |
1331d764 and r11d, [r10+0x1c] | |
1331d768 lea r11d, [r11+r11*2] | |
1331d76c shl r11d, 0x03 | |
1331d770 add r11d, [r10+0x14] | |
1331d774 cmp dword [r11+0xc], 0xfffeffff | |
1331d77c jnb 0x1331d788 | |
1331d77e ucomisd xmm0, [r11+0x8] | |
1331d784 jpe 0x1331d788 | |
1331d786 jz 0x1331d797 | |
1331d788 mov r11d, [r11+0x10] | |
1331d78c test r11d, r11d | |
1331d78f jnz 0x1331d774 | |
1331d791 mov r11d, 0x41196458 | |
1331d797 cmp dword [r11+0x4], -0x0b | |
1331d79c jnz 0x13310058 | |
1331d7a2 mov r11d, [r11] | |
1331d7a5 test byte [0x41196435], 0x80 | |
1331d7ad jnz 0x13310058 | |
1331d7b3 cmp word [r11+0x6], +0x0c | |
1331d7b9 jnz 0x1331005c | |
1331d7bf mov r11, [r11+0x8] | |
1331d7c3 add r11, r14 | |
1331d7c6 test byte [0x41196435], 0x80 | |
1331d7ce jnz 0x1331005c | |
1331d7d4 mov [rbx+0x8], r11 | |
1331d7d8 mov r8d, [r9+r8+0x8] | |
1331d7dd xorps xmm14, xmm14 | |
1331d7e1 cvtsi2sd xmm14, r8 | |
1331d7e6 mov [rbx+0x10], r8d | |
1331d7ea addsd xmm14, xmm8 | |
1331d7ef cmp dword [0x5323e5fc], -0x0d | |
1331d7f7 jnz 0x13310064 | |
1331d7fd cmp dword [0x5323e5f8], 0x411a2f38 | |
1331d808 jnz 0x13310064 | |
1331d80e mov dword [rbx+0x18], 0x1 | |
1331d815 mov r15, 0xfffffffb40e28170 | |
1331d81f cmp r15, [rax+0xf8] | |
1331d826 jnz 0x13310068 | |
1331d82c cmp dword [rax+0xf4], 0xfffeffff | |
1331d836 jnb 0x13310068 | |
1331d83c cvttsd2si r8d, [rax+0xf0] | |
1331d845 mov [rbx+0x20], r8w | |
1331d84a mov [rbx+0x22], di | |
1331d84e mov [rbx+0x24], si | |
1331d852 mov [rbx+0x28], rbp | |
1331d856 cvttsd2si rbp, xmm14 | |
1331d85b mov ebp, ebp | |
1331d85d mov [rbx+0x30], ebp | |
1331d860 mov rdi, 0xfffffffb411a06f0 | |
1331d86a cmp rdi, [rdx+0x80] | |
1331d871 jnz 0x1331006c | |
1331d877 cmp dword [rdx+0x7c], -0x09 | |
1331d87b jnz 0x1331006c | |
1331d881 mov rdi, 0xfffffffb40e27930 | |
1331d88b cmp rdi, [rax+0xe0] | |
1331d892 jnz 0x1331006c | |
1331d898 cmp dword [rax+0xdc], -0x0c | |
1331d89f jnz 0x1331006c | |
1331d8a5 mov esi, [rax+0xd8] | |
1331d8ab mov [rsp+0x1c], esi | |
1331d8af cmp dword [rdx+0x78], 0x414eeb08 | |
1331d8b6 jnz 0x1331006c | |
1331d8bc test byte [0x41196435], 0x80 | |
1331d8c4 jnz 0x1331006c | |
1331d8ca cmp dword [rsi+0x1c], +0x03 | |
1331d8ce jnz 0x13310070 | |
1331d8d4 mov ebp, [rsi+0x14] | |
1331d8d7 mov rdi, 0xfffffffb414ee638 | |
1331d8e1 cmp rdi, [rbp+0x38] | |
1331d8e5 jnz 0x13310070 | |
1331d8eb cmp dword [rbp+0x34], -0x0b | |
1331d8ef jnz 0x13310070 | |
1331d8f5 mov edx, [rbp+0x30] | |
1331d8f8 mov rdi, 0xfffffffb411b2518 | |
1331d902 cmp rdi, [rbp+0x8] | |
1331d906 jnz 0x13310070 | |
1331d90c mov edi, ebp | |
1331d90e mov [rsp+0x8], edi | |
1331d912 cmp dword [rbp+0x4], 0xfffeffff | |
1331d919 jnb 0x13310070 | |
1331d91f movsd xmm13, [rbp+0x0] | |
1331d925 movzx esi, word [rdx+0x6] | |
1331d929 cmp esi, 0xf0 | |
1331d92f jnz 0x13310070 | |
1331d935 cvttsd2si rsi, xmm13 | |
1331d93a mov [rdx+rsi*8+0x8], rbx | |
1331d93f addsd xmm13, xmm3 | |
1331d944 movsd [rbp+0x0], xmm13 | |
1331d94a test byte [0x41196435], 0x80 | |
1331d952 jnz 0x13310074 | |
1331d958 mov rdi, 0xfffffffb40e28628 | |
1331d962 cmp rdi, [rax+0x140] | |
1331d969 jnz 0x13310078 | |
1331d96f add eax, 0x138 | |
1331d975 cmp dword [rax+0x4], 0xfffeffff | |
1331d97c jnb 0x13310078 | |
1331d982 movsd xmm7, [rax] | |
1331d986 addsd xmm7, xmm3 | |
1331d98a movaps xmm12, xmm7 | |
1331d98e mulsd xmm12, xmm2 | |
1331d993 roundsd xmm11, xmm12, 0x09 | |
1331d99a mulsd xmm11, xmm1 | |
1331d99f subsd xmm7, xmm11 | |
1331d9a4 movsd [rax], xmm7 | |
1331d9a8 cmp dword [rcx+0xc], 0xfffeffff | |
1331d9af jnb 0x1331007c | |
1331d9b5 movsd xmm0, [rcx+0x8] | |
1331d9ba ucomisd xmm0, xmm6 | |
1331d9be jpe 0x1331d9c6 ->LOOP | |
1331d9c0 jz 0x13310080 | |
->LOOP: | |
1331d9c6 mov r13, [rsp+0x60] | |
1331d9cb mov r11d, [rsp+0x5c] | |
1331d9d0 mov r9, [rsp+0x48] | |
1331d9d5 mov edi, [rsp+0x58] | |
1331d9d9 mov esi, [rsp+0x54] | |
1331d9dd mov ebp, [rsp+0x50] | |
1331d9e1 mov ecx, [rsp+0x44] | |
1331d9e5 ucomisd xmm6, xmm9 | |
1331d9ea jpe 0x1331d9f2 | |
1331d9ec jz 0x13310088 | |
1331d9f2 movaps xmm5, xmm6 | |
1331d9f5 subsd xmm6, xmm3 | |
1331d9f9 movaps xmm4, xmm6 | |
1331d9fc divsd xmm4, xmm10 | |
1331da01 roundsd xmm15, xmm4, 0x09 | |
1331da08 mulsd xmm15, xmm10 | |
1331da0d movaps xmm4, xmm6 | |
1331da10 subsd xmm4, xmm15 | |
1331da15 cvttsd2si rbx, xmm4 | |
1331da1a movzx r15d, word [r13+rbx*2+0x4] | |
1331da20 mov r14d, r15d | |
1331da23 shl r14, 0x04 | |
1331da27 mov r13, r14 | |
1331da2a add r13, r9 | |
1331da2d mov [rsp+0x28], r13 | |
1331da32 mov rbx, [r9+r14] | |
1331da36 mov [rsp+0x38], rbx | |
1331da3b test byte [0x41196435], 0x80 | |
1331da43 jnz 0x1331008c | |
1331da49 mov r13, rbx | |
1331da4c shr r13, cl | |
1331da4f xorps xmm4, xmm4 | |
1331da52 cvtsi2sd xmm4, r13 | |
1331da57 test r13, r13 | |
1331da5a jns 0x1331da65 | |
1331da5c addsd xmm4, [0x4064ef00] | |
1331da65 cvttsd2si r13d, xmm4 | |
1331da6a xorps xmm15, xmm15 | |
1331da6e cvtsi2sd xmm15, r13d | |
1331da73 ucomisd xmm4, xmm15 | |
1331da78 jnz 0x1331009d | |
1331da7e jpe 0x1331009d | |
1331da84 cmp r13d, esi | |
1331da87 jb 0x1331009d | |
1331da8d movq r13, xmm4 | |
1331da92 mov r9d, r13d | |
1331da95 shr r13, 0x20 | |
1331da99 add r13d, r13d | |
1331da9c xor r9d, r13d | |
1331da9f rol r13d, 0x0e | |
1331daa3 sub r9d, r13d | |
1331daa6 rol r13d, 0x05 | |
1331daaa xor r13d, r9d | |
1331daad rol r9d, 0x0d | |
1331dab1 sub r13d, r9d | |
1331dab4 and r13d, [r12+0x1c] | |
1331dab9 lea r13d, [r13+r13*2+0x0] | |
1331dabe shl r13d, 0x03 | |
1331dac2 add r13d, [r12+0x14] | |
1331dac7 cmp dword [r13+0xc], 0xfffeffff | |
1331dacf jnb 0x1331dadb | |
1331dad1 ucomisd xmm4, [r13+0x8] | |
1331dad7 jpe 0x1331dadb | |
1331dad9 jz 0x1331daea | |
1331dadb mov r13d, [r13+0x10] | |
1331dadf test r13d, r13d | |
1331dae2 jnz 0x1331dac7 | |
1331dae4 mov r13d, 0x41196458 | |
1331daea mov r9, [rsp+0x48] | |
1331daef cmp dword [r13+0x4], -0x0b | |
1331daf4 jnz 0x1331009d | |
1331dafa mov r13d, [r13+0x0] | |
1331dafe test byte [0x41196435], 0x80 | |
1331db06 jnz 0x1331009d | |
1331db0c cmp word [r13+0x6], +0x0c | |
1331db12 jnz 0x133100a1 | |
1331db18 mov r13, [r13+0x8] | |
1331db1c add rbx, r13 | |
1331db1f test byte [0x41196435], 0x80 | |
1331db27 jnz 0x133100a1 | |
1331db2d movzx r14d, word [r9+r14+0xe] | |
1331db33 shl r14, 0x04 | |
1331db37 mov r13, r14 | |
1331db3a add r13, r9 | |
1331db3d mov [rsp+0x20], r13 | |
1331db42 test byte [0x41196435], 0x80 | |
1331db4a jnz 0x133100a5 | |
1331db50 cmp dword [rbp+0x4], 0xfffeffff | |
1331db57 jnb 0x133100a9 | |
1331db5d movsd xmm15, [rbp+0x0] | |
1331db63 ucomisd xmm15, xmm9 | |
1331db68 jpe 0x1331db70 | |
1331db6a jz 0x133100ad | |
1331db70 movaps xmm4, xmm15 | |
1331db74 subsd xmm4, xmm3 | |
1331db78 movsd [rbp+0x0], xmm4 | |
1331db7d cvttsd2si rbp, xmm15 | |
1331db82 mov rbp, [r11+rbp*8] | |
1331db86 test byte [0x41196435], 0x80 | |
1331db8e jnz 0x133100b1 | |
1331db94 mov r11, [r9+r14] | |
1331db98 mov [rsp+0x10], r11 | |
1331db9d test byte [0x41196435], 0x80 | |
1331dba5 jnz 0x133100b5 | |
1331dbab mov r13, r11 | |
1331dbae shr r13, cl | |
1331dbb1 mov ecx, [rsp+0x30] | |
1331dbb5 xorps xmm4, xmm4 | |
1331dbb8 cvtsi2sd xmm4, r13 | |
1331dbbd test r13, r13 | |
1331dbc0 jns 0x1331dbcb | |
1331dbc2 addsd xmm4, [0x4064ef00] | |
1331dbcb cvttsd2si r13d, xmm4 | |
1331dbd0 xorps xmm15, xmm15 | |
1331dbd4 cvtsi2sd xmm15, r13d | |
1331dbd9 ucomisd xmm4, xmm15 | |
1331dbde jnz 0x133100b9 | |
1331dbe4 jpe 0x133100b9 | |
1331dbea cmp r13d, esi | |
1331dbed jb 0x133100b9 | |
1331dbf3 movq rsi, xmm4 | |
1331dbf8 mov r13d, esi | |
1331dbfb shr rsi, 0x20 | |
1331dbff add esi, esi | |
1331dc01 xor r13d, esi | |
1331dc04 rol esi, 0x0e | |
1331dc07 sub r13d, esi | |
1331dc0a rol esi, 0x05 | |
1331dc0d xor esi, r13d | |
1331dc10 rol r13d, 0x0d | |
1331dc14 sub esi, r13d | |
1331dc17 and esi, [r12+0x1c] | |
1331dc1c lea esi, [rsi+rsi*2] | |
1331dc1f shl esi, 0x03 | |
1331dc22 add esi, [r12+0x14] | |
1331dc27 cmp dword [rsi+0xc], 0xfffeffff | |
1331dc2e jnb 0x1331dc39 | |
1331dc30 ucomisd xmm4, [rsi+0x8] | |
1331dc35 jpe 0x1331dc39 | |
1331dc37 jz 0x1331dc45 | |
1331dc39 mov esi, [rsi+0x10] | |
1331dc3c test esi, esi | |
1331dc3e jnz 0x1331dc27 | |
1331dc40 mov esi, 0x41196458 | |
1331dc45 cmp dword [rsi+0x4], -0x0b | |
1331dc49 jnz 0x133100b9 | |
1331dc4f mov esi, [rsi] | |
1331dc51 test byte [0x41196435], 0x80 | |
1331dc59 jnz 0x133100b9 | |
1331dc5f cmp word [rsi+0x6], +0x0c | |
1331dc64 jnz 0x133100bd ->40 | |
1331dc6a mov rsi, [rsi+0x8] | |
1331dc6e add r11, rsi | |
1331dc71 test byte [0x41196435], 0x80 | |
1331dc79 jnz 0x133100bd ->40 | |
1331dc7f mov [rbp+0x0], r11 | |
1331dc83 test byte [0x41196435], 0x80 | |
1331dc8b jnz 0x133100c1 ->41 | |
1331dc91 mov r13, r11 | |
1331dc94 shr r13, cl | |
1331dc97 mov ecx, [rsp+0x8] | |
1331dc9b xorps xmm4, xmm4 | |
1331dc9e cvtsi2sd xmm4, r13 | |
1331dca3 test r13, r13 | |
1331dca6 jns 0x1331dcb1 | |
1331dca8 addsd xmm4, [0x4064ef00] | |
1331dcb1 cvttsd2si r13d, xmm4 | |
1331dcb6 xorps xmm15, xmm15 | |
1331dcba cvtsi2sd xmm15, r13d | |
1331dcbf ucomisd xmm4, xmm15 | |
1331dcc4 jnz 0x133100c5 ->42 | |
1331dcca jpe 0x133100c5 ->42 | |
1331dcd0 cmp r13d, edi | |
1331dcd3 jb 0x133100c5 ->42 | |
1331dcd9 movq r13, xmm4 | |
1331dcde mov edi, r13d | |
1331dce1 shr r13, 0x20 | |
1331dce5 add r13d, r13d | |
1331dce8 xor edi, r13d | |
1331dceb rol r13d, 0x0e | |
1331dcef sub edi, r13d | |
1331dcf2 rol r13d, 0x05 | |
1331dcf6 xor r13d, edi | |
1331dcf9 rol edi, 0x0d | |
1331dcfc sub r13d, edi | |
1331dcff and r13d, [r10+0x1c] | |
1331dd03 lea r13d, [r13+r13*2+0x0] | |
1331dd08 shl r13d, 0x03 | |
1331dd0c add r13d, [r10+0x14] | |
1331dd10 cmp dword [r13+0xc], 0xfffeffff | |
1331dd18 jnb 0x1331dd24 | |
1331dd1a ucomisd xmm4, [r13+0x8] | |
1331dd20 jpe 0x1331dd24 | |
1331dd22 jz 0x1331dd33 | |
1331dd24 mov r13d, [r13+0x10] | |
1331dd28 test r13d, r13d | |
1331dd2b jnz 0x1331dd10 | |
1331dd2d mov r13d, 0x41196458 | |
1331dd33 xor edi, edi | |
1331dd35 cmp dword [r13+0x4], -0x0b | |
1331dd3a jnz 0x133100c5 ->42 | |
1331dd40 mov r13d, [r13+0x0] | |
1331dd44 test byte [0x41196435], 0x80 | |
1331dd4c jnz 0x133100c5 ->42 | |
1331dd52 cmp word [r13+0x6], +0x0c | |
1331dd58 jnz 0x133100c9 ->43 | |
1331dd5e mov r13, [r13+0x8] | |
1331dd62 add r13, r11 | |
1331dd65 test byte [0x41196435], 0x80 | |
1331dd6d jnz 0x133100c9 ->43 | |
1331dd73 mov [rbp+0x8], r13 | |
1331dd77 mov r14d, [r9+r14+0x8] | |
1331dd7c xorps xmm4, xmm4 | |
1331dd7f cvtsi2sd xmm4, r14 | |
1331dd84 mov [rbp+0x10], r14d | |
1331dd88 addsd xmm4, xmm8 | |
1331dd8d mov dword [rbp+0x18], 0x1 | |
1331dd94 mov [rbp+0x20], r8w | |
1331dd99 mov [rbp+0x22], di | |
1331dd9d mov [rbp+0x24], r15w | |
1331dda2 mov [rbp+0x28], rbx | |
1331dda6 cvttsd2si rbx, xmm4 | |
1331ddab mov ebx, ebx | |
1331ddad mov [rbp+0x30], ebx | |
1331ddb0 test byte [0x41196435], 0x80 | |
1331ddb8 jnz 0x133100cd ->44 | |
1331ddbe cmp dword [rcx+0x4], 0xfffeffff | |
1331ddc5 jnb 0x133100d1 ->45 | |
1331ddcb movsd xmm4, [rcx] | |
1331ddcf cvttsd2si rbx, xmm4 | |
1331ddd4 mov [rdx+rbx*8+0x8], rbp | |
1331ddd9 addsd xmm4, xmm3 | |
1331dddd movsd [rcx], xmm4 | |
1331dde1 test byte [0x41196435], 0x80 | |
1331dde9 jnz 0x133100d5 ->46 | |
1331ddef addsd xmm7, xmm3 | |
1331ddf3 movaps xmm4, xmm7 | |
1331ddf6 mulsd xmm4, xmm2 | |
1331ddfa roundsd xmm4, xmm4, 0x09 | |
1331de00 mulsd xmm4, xmm1 | |
1331de04 subsd xmm7, xmm4 | |
1331de08 movsd [rax], xmm7 | |
1331de0c ucomisd xmm6, xmm0 | |
1331de10 jpe 0x1331d9c6 ->LOOP | |
1331de16 jnz 0x1331d9c6 ->LOOP | |
1331de1c jmp 0x133100d9 ->47 | |
---- TRACE 7 stop -> loop |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment