Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trace/breakpoint trap on an asm.js test #12

Open
vivanishin opened this issue Mar 31, 2016 · 0 comments
Open

Trace/breakpoint trap on an asm.js test #12

vivanishin opened this issue Mar 31, 2016 · 0 comments
Labels

Comments

@vivanishin
Copy link
Member

Reproduce:

d8 --noturbo-asm --llvm-filter=* llv8-regtests/c++/407.js --noturbo-asm --llvm-filter=*

(cd llv8-regtests/c++ && make 407.js if you lack the file)

(gdb) disass $pc - 130, $pc + 30

   ...
   0x000026939469bf82:  call   0x2693942060a0
   0x000026939469bf87:  call   0x2693942060aa
   0x000026939469bf8c:  call   0x2693942060b4
   0x000026939469bf91:  call   0x2693942060c8
   0x000026939469bf96:  call   0x26939420605a
   0x000026939469bf9b:  int3   
   0x000026939469bf9c:  int3   
   0x000026939469bf9d:  int3   
=> 0x000026939469bf9e:  int3   
   0x000026939469bf9f:  int3   
   0x000026939469bfa0:  add    al,BYTE PTR [rax]
   0x000026939469bfa2:  add    BYTE PTR [rax],al
   0x000026939469bfa4:  add    eax,DWORD PTR [rax]
   0x000026939469bfa6:  add    BYTE PTR [rax],al

These int3 bytes are the alignment between the code and its safepoint table (see Code::CopyFrom). Control is not supposed to reach there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant