Created
September 7, 2015 21:12
-
-
Save evanlucas/2d16507851827731e27b to your computer and use it in GitHub Desktop.
disas
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
| Process 10089 launched: './out/Release/node' (x86_64) | |
| start | |
| Process 10089 stopped | |
| * thread #1: tid = 0x679c0f, 0x000000010015e4ff node`v8::Value::IntegerValue(this=<unavailable>, context=<unavailable>) const + 415 at api.cc:3272, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT) | |
| frame #0: 0x000000010015e4ff node`v8::Value::IntegerValue(this=<unavailable>, context=<unavailable>) const + 415 at api.cc:3272 | |
| 3269 RETURN_ON_FAILED_EXECUTION_PRIMITIVE(int64_t); | |
| 3270 } | |
| 3271 return Just(num->IsSmi() ? static_cast<int64_t>(i::Smi::cast(*num)->value()) | |
| -> 3272 : static_cast<int64_t>(num->Number())); | |
| 3273 } | |
| 3274 | |
| 3275 | |
| (lldb) disas | |
| node`v8::Value::IntegerValue: | |
| 0x10015e360 <+0>: pushq %rbp | |
| 0x10015e361 <+1>: movq %rsp, %rbp | |
| 0x10015e364 <+4>: pushq %r15 | |
| 0x10015e366 <+6>: pushq %r14 | |
| 0x10015e368 <+8>: pushq %r13 | |
| 0x10015e36a <+10>: pushq %r12 | |
| 0x10015e36c <+12>: pushq %rbx | |
| 0x10015e36d <+13>: subq $0x18, %rsp | |
| 0x10015e371 <+17>: movq %rsi, %r14 | |
| 0x10015e374 <+20>: movq %rdi, %r15 | |
| 0x10015e377 <+23>: movq (%r15), %rax | |
| 0x10015e37a <+26>: testb $0x1, %al | |
| 0x10015e37c <+28>: je 0x10015e4f7 ; <+407> [inlined] v8::internal::Handle<v8::internal::Object>::operator*() const at handles.h:124 | |
| 0x10015e382 <+34>: movq %rax, %rcx | |
| 0x10015e385 <+37>: andq $0x3, %rcx | |
| 0x10015e389 <+41>: cmpq $0x1, %rcx | |
| 0x10015e38d <+45>: jne 0x10015e3a2 ; <+66> at api.cc:3266 | |
| 0x10015e38f <+47>: movq -0x1(%rax), %rax | |
| 0x10015e393 <+51>: movzbl 0xb(%rax), %eax | |
| 0x10015e397 <+55>: cmpl $0x84, %eax | |
| 0x10015e39c <+60>: je 0x10015e4f7 ; <+407> [inlined] v8::internal::Handle<v8::internal::Object>::operator*() const at handles.h:124 | |
| 0x10015e3a2 <+66>: testq %r14, %r14 | |
| 0x10015e3a5 <+69>: je 0x10015e3bb ; <+91> [inlined] v8::internal::Isolate::Current() at api.cc:3266 | |
| 0x10015e3a7 <+71>: movq $-0x100000, %rax | |
| 0x10015e3ae <+78>: andq (%r14), %rax | |
| 0x10015e3b1 <+81>: movq 0x38(%rax), %rbx | |
| 0x10015e3b5 <+85>: addq $-0x20, %rbx | |
| 0x10015e3b9 <+89>: jmp 0x10015e3d4 ; <+116> [inlined] v8::internal::Isolate::has_scheduled_exception() at api.cc:299 | |
| 0x10015e3bb <+91>: leaq 0x947336(%rip), %rax ; v8::internal::Isolate::isolate_key_ | |
| 0x10015e3c2 <+98>: movslq (%rax), %rax | |
| 0x10015e3c5 <+101>: leaq 0x947574(%rip), %rcx ; v8::base::kMacTlsBaseOffset | |
| 0x10015e3cc <+108>: movq (%rcx), %rcx | |
| 0x10015e3cf <+111>: movq %gs:(%rcx,%rax,8), %rbx | |
| 0x10015e3d4 <+116>: movq 0x6ae8(%rbx), %rax | |
| 0x10015e3db <+123>: cmpq 0x68(%rbx), %rax | |
| 0x10015e3df <+127>: je 0x10015e3ee ; <+142> [inlined] v8::internal::HandleScope::HandleScope(v8::internal::Isolate*) at handles-inl.h:91 | |
| 0x10015e3e1 <+129>: cmpq 0x150(%rbx), %rax | |
| 0x10015e3e8 <+136>: je 0x10015e4f3 ; <+403> at handles-inl.h:124 | |
| 0x10015e3ee <+142>: movq 0x6b78(%rbx), %rax | |
| 0x10015e3f5 <+149>: movq %rax, -0x38(%rbp) | |
| 0x10015e3f9 <+153>: movq 0x6b80(%rbx), %rax | |
| 0x10015e400 <+160>: movq %rax, -0x30(%rbp) | |
| 0x10015e404 <+164>: incl 0x6b88(%rbx) | |
| 0x10015e40a <+170>: movq 0x6b90(%rbx), %rax | |
| 0x10015e411 <+177>: incl 0x40(%rax) | |
| 0x10015e414 <+180>: testq %r14, %r14 | |
| 0x10015e417 <+183>: je 0x10015e421 ; <+193> [inlined] v8::internal::Isolate::logger() at api.cc:3266 | |
| 0x10015e419 <+185>: movq %r14, %rdi | |
| 0x10015e41c <+188>: callq 0x100150650 ; v8::Context::Enter at api.cc:742 | |
| 0x10015e421 <+193>: movq 0x6a28(%rbx), %rdi | |
| 0x10015e428 <+200>: cmpb $0x0, 0x20(%rdi) | |
| 0x10015e42c <+204>: je 0x10015e43a ; <+218> [inlined] v8::internal::Isolate::current_vm_state() const at vm-state-inl.h:41 | |
| 0x10015e42e <+206>: leaq 0x5c1a90(%rip), %rsi ; "IntegerValue" | |
| 0x10015e435 <+213>: callq 0x100474e00 ; v8::internal::Logger::ApiEntryCall at log.cc:1060 | |
| 0x10015e43a <+218>: movl 0x6b30(%rbx), %r12d | |
| 0x10015e441 <+225>: movl $0x3, 0x6b30(%rbx) | |
| 0x10015e44b <+235>: movq %rbx, %rdi | |
| 0x10015e44e <+238>: movq %r15, %rsi | |
| 0x10015e451 <+241>: callq 0x1002edd80 ; v8::internal::Execution::ToInteger at execution.cc:559 | |
| 0x10015e456 <+246>: movq %rax, %r15 | |
| 0x10015e459 <+249>: xorl %r13d, %r13d | |
| 0x10015e45c <+252>: testq %r15, %r15 | |
| 0x10015e45f <+255>: movl $0x0, %eax | |
| 0x10015e464 <+260>: jne 0x10015e483 ; <+291> at api.cc:173 | |
| 0x10015e466 <+262>: movq 0x6b90(%rbx), %rax | |
| 0x10015e46d <+269>: decl 0x40(%rax) | |
| 0x10015e470 <+272>: sete %al | |
| 0x10015e473 <+275>: movzbl %al, %esi | |
| 0x10015e476 <+278>: movq %rbx, %rdi | |
| 0x10015e479 <+281>: callq 0x100443530 ; v8::internal::Isolate::OptionalRescheduleException at isolate.cc:1513 | |
| 0x10015e47e <+286>: movb $0x1, %r13b | |
| 0x10015e481 <+289>: movb $0x1, %al | |
| 0x10015e483 <+291>: movl %eax, -0x3c(%rbp) | |
| 0x10015e486 <+294>: testq %r14, %r14 | |
| 0x10015e489 <+297>: movl %r12d, 0x6b30(%rbx) | |
| 0x10015e490 <+304>: je 0x10015e49a ; <+314> [inlined] v8::(anonymous namespace)::CallDepthScope::~CallDepthScope() + 8 at api.cc:161 | |
| 0x10015e492 <+306>: movq %r14, %rdi | |
| 0x10015e495 <+309>: callq 0x1001507a0 ; v8::Context::Exit at api.cc:753 | |
| 0x10015e49a <+314>: testb %r13b, %r13b | |
| 0x10015e49d <+317>: jne 0x10015e4a9 ; <+329> [inlined] void std::swap<v8::internal::Object**>(v8::internal::Object**&, v8::internal::Object**&) at handles-inl.h:116 | |
| 0x10015e49f <+319>: movq 0x6b90(%rbx), %rax | |
| 0x10015e4a6 <+326>: decl 0x40(%rax) | |
| 0x10015e4a9 <+329>: movq 0x6b78(%rbx), %rsi | |
| 0x10015e4b0 <+336>: movq -0x38(%rbp), %rdi | |
| 0x10015e4b4 <+340>: movq %rdi, 0x6b78(%rbx) | |
| 0x10015e4bb <+347>: decl 0x6b88(%rbx) | |
| 0x10015e4c1 <+353>: movq -0x30(%rbp), %r14 | |
| 0x10015e4c5 <+357>: cmpq %r14, 0x6b80(%rbx) | |
| 0x10015e4cc <+364>: je 0x10015e4e7 ; <+391> [inlined] v8::internal::HandleScope::CloseScope(v8::internal::Isolate*, v8::internal::Object**, v8::internal::Object**) + 62 at handles-inl.h:104 | |
| 0x10015e4ce <+366>: movq %r14, 0x6b80(%rbx) | |
| 0x10015e4d5 <+373>: movq %rbx, %rdi | |
| 0x10015e4d8 <+376>: callq 0x100318090 ; v8::internal::HandleScope::DeleteExtensions at handles.cc:60 | |
| 0x10015e4dd <+381>: movq 0x6b78(%rbx), %rdi | |
| 0x10015e4e4 <+388>: movq %r14, %rsi | |
| 0x10015e4e7 <+391>: callq 0x100318150 ; v8::internal::HandleScope::ZapRange at handles.cc:67 | |
| 0x10015e4ec <+396>: movl -0x3c(%rbp), %eax | |
| 0x10015e4ef <+399>: testb %al, %al | |
| 0x10015e4f1 <+401>: je 0x10015e4f7 ; <+407> [inlined] v8::internal::Handle<v8::internal::Object>::operator*() const at handles.h:124 | |
| 0x10015e4f3 <+403>: xorl %eax, %eax | |
| 0x10015e4f5 <+405>: jmp 0x10015e50d ; <+429> at api.cc:3273 | |
| 0x10015e4f7 <+407>: movq (%r15), %rdx | |
| 0x10015e4fa <+410>: testb $0x1, %dl | |
| 0x10015e4fd <+413>: je 0x10015e507 ; <+423> at api.cc:3271 | |
| -> 0x10015e4ff <+415>: cvttsd2si 0x7(%rdx), %rdx | |
| 0x10015e505 <+421>: jmp 0x10015e50b ; <+427> at api.cc:3271 | |
| 0x10015e507 <+423>: sarq $0x20, %rdx | |
| 0x10015e50b <+427>: movb $0x1, %al | |
| 0x10015e50d <+429>: addq $0x18, %rsp | |
| 0x10015e511 <+433>: popq %rbx | |
| 0x10015e512 <+434>: popq %r12 | |
| 0x10015e514 <+436>: popq %r13 | |
| 0x10015e516 <+438>: popq %r14 | |
| 0x10015e518 <+440>: popq %r15 | |
| 0x10015e51a <+442>: popq %rbp | |
| 0x10015e51b <+443>: retq | |
| 0x10015e51c <+444>: nopl (%rax) | |
| (lldb) i r | |
| invalid command 'target modules r' | |
| (lldb) reg r | |
| General Purpose Registers: | |
| rax = 0x0000000000000000 | |
| rbx = 0x0000000101804c00 | |
| rcx = 0x0000000000000003 | |
| rdx = 0x1baddead0baddeaf | |
| rdi = 0x00000001018474a0 | |
| rsi = 0x1baddead0baddeaf | |
| rbp = 0x00007fff5fbfe3c0 | |
| rsp = 0x00007fff5fbfe380 | |
| r8 = 0x000000000000005b | |
| r9 = 0x0000000000000000 | |
| r10 = 0x000000010180b700 | |
| r11 = 0x00001a02210d2020 | |
| r12 = 0x0000000000000004 | |
| r13 = 0x0000000000000000 | |
| r14 = 0x0000000101848ff0 | |
| r15 = 0x0000000101847498 | |
| rip = 0x000000010015e4ff node`v8::Value::IntegerValue(v8::Local<v8::Context>) const + 415 at api.cc:3272 | |
| rflags = 0x0000000000010202 | |
| cs = 0x000000000000002b | |
| fs = 0x0000000000000000 | |
| gs = 0x0000000000000000 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment