Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@tthtlc
Created January 26, 2020 16:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tthtlc/cae565bb594b02249b2ddf76fd72ee64 to your computer and use it in GitHub Desktop.
Save tthtlc/cae565bb594b02249b2ddf76fd72ee64 to your computer and use it in GitHub Desktop.
d8's print-all-code option
kind = BYTECODE_HANDLER
name = GetIteratorExtraWideHandler
compiler = turbofan
address = 0x4c90805a951
Trampoline (size = 1)
0x4c90805a990 0 cc int3l
Instructions (size = 160)
0x556963e3b140 0 55 push rbp
0x556963e3b141 1 4889e5 REX.W movq rbp,rsp
0x556963e3b144 4 6a1a push 0x1a
0x556963e3b146 6 4883ec08 REX.W subq rsp,0x8
0x556963e3b14a a 498d79ff REX.W leaq rdi,[r9-0x1]
0x556963e3b14e e 4c8b4500 REX.W movq r8,[rbp+0x0]
0x556963e3b152 12 d1e7 shll rdi, 1
0x556963e3b154 14 418978e0 movl [r8-0x20],rdi
0x556963e3b158 18 498b78f0 REX.W movq rdi,[r8-0x10]
0x556963e3b15c 1c 4f635c0e01 REX.W movsxlq r11,[r14+r9*1+0x1]
0x556963e3b161 21 8b7f13 movl rdi,[rdi+0x13]
0x556963e3b164 24 4903fd REX.W addq rdi,r13
0x556963e3b167 27 4d8b60f8 REX.W movq r12,[r8-0x8]
0x556963e3b16b 2b 4f8b1cd8 REX.W movq r11,[r8+r11*8]
0x556963e3b16f 2f 8b7f03 movl rdi,[rdi+0x3]
0x556963e3b172 32 4903fd REX.W addq rdi,r13
0x556963e3b175 35 8b47ff movl rax,[rdi-0x1]
0x556963e3b178 38 4c8945f0 REX.W movq [rbp-0x10],r8
0x556963e3b17c 3c 41398558010000 cmpl [r13+0x158] (root (feedback_vector_map)),rax
0x556963e3b183 43 7407 jz 0x556963e3b18c (GetIteratorExtraWideHandler)
0x556963e3b185 45 498bbda0000000 REX.W movq rdi,[r13+0xa0] (root (undefined_value))
0x556963e3b18c 4c 438b440e05 movl rax,[r14+r9*1+0x5]
0x556963e3b191 51 438b5c0e09 movl rbx,[r14+r9*1+0x9]
0x556963e3b196 56 8d0c1b leal rcx,[rbx+rbx*1]
0x556963e3b199 59 8d1c00 leal rbx,[rax+rax*1]
0x556963e3b19c 5c 498bc3 REX.W movq rax,r11
0x556963e3b19f 5f 4c89e6 REX.W movq rsi,r12
0x556963e3b1a2 62 488bd7 REX.W movq rdx,rdi
0x556963e3b1a5 65 e8f639f8ff call 0x556963dbeba0 (GetIteratorWithFeedback)
0x556963e3b1aa 6a 488b7df0 REX.W movq rdi,[rbp-0x10]
0x556963e3b1ae 6e 448b47e0 movl r8,[rdi-0x20]
0x556963e3b1b2 72 41d1f8 sarl r8, 1
0x556963e3b1b5 75 488b7fe8 REX.W movq rdi,[rdi-0x18]
0x556963e3b1b9 79 4d63c0 REX.W movsxlq r8,r8
0x556963e3b1bc 7c 4d8d480e REX.W leaq r9,[r8+0xe]
0x556963e3b1c0 80 450fb60439 movzxbl r8,[r9+rdi*1]
0x556963e3b1c5 85 4d8bbd50170000 REX.W movq r15,[r13+0x1750] (external reference (Interpreter::dispatch_table_address))
0x556963e3b1cc 8c 4b8b0cc7 REX.W movq rcx,[r15+r8*8]
0x556963e3b1d0 90 488b6d00 REX.W movq rbp,[rbp+0x0]
0x556963e3b1d4 94 4c8bf7 REX.W movq r14,rdi
0x556963e3b1d7 97 4883c418 REX.W addq rsp,0x18
0x556963e3b1db 9b ffe1 jmp rcx
0x556963e3b1dd 9d 90 nop
0x556963e3b1de 9e 6690 nop
Safepoints (size = 21)
0x556963e3b1aa 6a NA 0000 (sp -> fp) <none>
RelocInfo (size = 0)
kind = BYTECODE_HANDLER
name = IncBlockCounterExtraWideHandler
compiler = turbofan
address = 0x4c90805a9b1
Trampoline (size = 1)
0x4c90805a9f0 0 cc int3l
Instructions (size = 124)
0x556963e3b200 0 55 push rbp
0x556963e3b201 1 4889e5 REX.W movq rbp,rsp
0x556963e3b204 4 6a1a push 0x1a
0x556963e3b206 6 4883ec20 REX.W subq rsp,0x20
0x556963e3b20a a 488b5500 REX.W movq rdx,[rbp+0x0]
0x556963e3b20e e 488b7af0 REX.W movq rdi,[rdx-0x10]
0x556963e3b212 12 4d8d41ff REX.W leaq r8,[r9-0x1]
0x556963e3b216 16 478b5c0e01 movl r11,[r14+r9*1+0x1]
0x556963e3b21b 1b 41d1e0 shll r8, 1
0x556963e3b21e 1e 4c8b62f8 REX.W movq r12,[rdx-0x8]
0x556963e3b222 22 438d1c1b leal rbx,[r11+r11*1]
0x556963e3b226 26 448942e0 movl [rdx-0x20],r8
0x556963e3b22a 2a 4c897de8 REX.W movq [rbp-0x18],r15
0x556963e3b22e 2e 4c894de0 REX.W movq [rbp-0x20],r9
0x556963e3b232 32 488945f0 REX.W movq [rbp-0x10],rax
0x556963e3b236 36 488955d8 REX.W movq [rbp-0x28],rdx
0x556963e3b23a 3a 4c8bd0 REX.W movq r10,rax
0x556963e3b23d 3d 488bc7 REX.W movq rax,rdi
0x556963e3b240 40 498bfa REX.W movq rdi,r10
0x556963e3b243 43 4c89e6 REX.W movq rsi,r12
0x556963e3b246 46 e8d538f8ff call 0x556963dbeb20 (IncBlockCounter)
0x556963e3b24b 4b 488b55d8 REX.W movq rdx,[rbp-0x28]
0x556963e3b24f 4f 488b52e8 REX.W movq rdx,[rdx-0x18]
0x556963e3b253 53 488b7de0 REX.W movq rdi,[rbp-0x20]
0x556963e3b257 57 4c8d4f05 REX.W leaq r9,[rdi+0x5]
0x556963e3b25b 5b 410fb63c11 movzxbl rdi,[r9+rdx*1]
0x556963e3b260 60 4c8b7de8 REX.W movq r15,[rbp-0x18]
0x556963e3b264 64 498b0cff REX.W movq rcx,[r15+rdi*8]
0x556963e3b268 68 488b6d00 REX.W movq rbp,[rbp+0x0]
0x556963e3b26c 6c 4c8bf2 REX.W movq r14,rdx
0x556963e3b26f 6f 488b442418 REX.W movq rax,[rsp+0x18]
0x556963e3b274 74 4883c430 REX.W addq rsp,0x30
0x556963e3b278 78 ffe1 jmp rcx
0x556963e3b27a 7a 90 nop
0x556963e3b27b 7b 90 nop
Safepoints (size = 21)
0x556963e3b24b 4b NA 0001000 (sp -> fp) <none>
RelocInfo (size = 0)
kind = BYTECODE_HANDLER
name = AbortExtraWideHandler
compiler = turbofan
address = 0x4c90805aa11
Trampoline (size = 1)
0x4c90805aa50 0 cc int3l
Instructions (size = 48)
0x556963e3b2a0 0 55 push rbp
0x556963e3b2a1 1 4889e5 REX.W movq rbp,rsp
0x556963e3b2a4 4 6a1a push 0x1a
0x556963e3b2a6 6 498d51ff REX.W leaq rdx,[r9-0x1]
0x556963e3b2aa a 438b4c0e01 movl rcx,[r14+r9*1+0x1]
0x556963e3b2af f d1e2 shll rdx, 1
0x556963e3b2b1 11 488b7d00 REX.W movq rdi,[rbp+0x0]
0x556963e3b2b5 15 d1e1 shll rcx, 1
0x556963e3b2b7 17 8957e0 movl [rdi-0x20],rdx
0x556963e3b2ba 1a 51 push rcx
0x556963e3b2bb 1b 498b9d002c0000 REX.W movq rbx,[r13+0x2c00] (external reference (Runtime::Abort))
0x556963e3b2c2 22 b801000000 movl rax,0x1
0x556963e3b2c7 27 33f6 xorl rsi,rsi
0x556963e3b2c9 29 e832d3f4ff call 0x556963d88600 (CEntry_Return1_DontSaveFPRegs_ArgvOnStack_NoBuiltinExit)
0x556963e3b2ce 2e cc int3l
0x556963e3b2cf 2f 90 nop
Safepoints (size = 21)
0x556963e3b2ce 2e NA 000 (sp -> fp) <none>
RelocInfo (size = 0)
../../test/benchmarks/data/octane/base.js
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment