From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Sam Steingold Newsgroups: gmane.emacs.bugs Subject: bug#19303: 25.0.50; infinite loop (stack overflow) in mark_object Date: Tue, 09 Dec 2014 16:39:44 -0500 Message-ID: References: <54873191.1040201@yandex.ru> Reply-To: sds@gnu.org NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1418161221 26118 80.91.229.3 (9 Dec 2014 21:40:21 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 9 Dec 2014 21:40:21 +0000 (UTC) Cc: 19303@debbugs.gnu.org To: Dmitry Antipov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Dec 09 22:40:16 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XySVz-0007Rr-IC for geb-bug-gnu-emacs@m.gmane.org; Tue, 09 Dec 2014 22:40:15 +0100 Original-Received: from localhost ([::1]:42585 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XySVz-0002cp-6B for geb-bug-gnu-emacs@m.gmane.org; Tue, 09 Dec 2014 16:40:15 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38819) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XySVr-0002aN-Ox for bug-gnu-emacs@gnu.org; Tue, 09 Dec 2014 16:40:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XySVn-0003WG-Ly for bug-gnu-emacs@gnu.org; Tue, 09 Dec 2014 16:40:07 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:34550) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XySVn-0003Vc-Hh for bug-gnu-emacs@gnu.org; Tue, 09 Dec 2014 16:40:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XySVm-0007Yq-Sl for bug-gnu-emacs@gnu.org; Tue, 09 Dec 2014 16:40:03 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Sam Steingold Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 09 Dec 2014 21:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 19303 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 19303-submit@debbugs.gnu.org id=B19303.141816119729046 (code B ref 19303); Tue, 09 Dec 2014 21:40:02 +0000 Original-Received: (at 19303) by debbugs.gnu.org; 9 Dec 2014 21:39:57 +0000 Original-Received: from localhost ([127.0.0.1]:59996 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XySVf-0007YO-AO for submit@debbugs.gnu.org; Tue, 09 Dec 2014 16:39:57 -0500 Original-Received: from mail-qc0-f181.google.com ([209.85.216.181]:33996) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XySVY-0007Y6-VF for 19303@debbugs.gnu.org; Tue, 09 Dec 2014 16:39:52 -0500 Original-Received: by mail-qc0-f181.google.com with SMTP id m20so1191441qcx.26 for <19303@debbugs.gnu.org>; Tue, 09 Dec 2014 13:39:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:in-reply-to:references:user-agent :return-receipt-to:reply-to:date:message-id:mime-version :content-type; bh=lxpfqCekHHU7CMKOBUGn69mBbLvxqFYbhbwvlChrKj4=; b=Y7gsVupzNCqT3yHNlD3PzzVbkuKzVPy8H6AghFw7/4q/UkrmU1jzDHeYct1BCKObtY wwAvalN257mECZQAcIZZqpUsNEO6tvnWkr0rvB99ziv1x8aGjbDpsl6qTipovt71uSAn SL+fXNMTfItbPXlnq4LWE49E99TLkeMIS7EMPA9Rx4APABYucFpoYa5uSZo7PAuXgzku bdLZccBHx6zvnPBqHeXEv4PI65SVpChyf+n+IfT7YKZHBd6bemxbPvoPdmxOXePjpvMy SGgrwM0QOTE+RzPlRa/625eLq+jeivZ0/0z6bid6zlnUv5xi0w7brdZy0UlcvjE9y9Jm /M1A== X-Received: by 10.224.166.67 with SMTP id l3mr1268829qay.15.1418161188318; Tue, 09 Dec 2014 13:39:48 -0800 (PST) Original-Received: from sds-MacBook-Pro.local ([66.9.135.66]) by mx.google.com with ESMTPSA id d5sm2249806qai.40.2014.12.09.13.39.45 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Dec 2014 13:39:46 -0800 (PST) In-Reply-To: <54873191.1040201@yandex.ru> (Dmitry Antipov's message of "Tue, 09 Dec 2014 20:29:53 +0300") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (darwin) X-Attribution: Sam X-Disclaimer: You should not expect anyone to agree with me. X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:97108 Archived-At: > * Dmitry Antipov [2014-12-09 20:29:53 +0300]: > > On 12/08/2014 04:42 PM, Sam Steingold wrote: > >> in a situation very similar to that of bug#19022 & bug#19133, I now get >> this crash (this is git tip from dec 8 morning): >> this seems to indicate an infinite recursion in GC. > >> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread >> 0 libsystem_kernel.dylib 0x00007fff9555bc7e __kill + 10 >> 1 org.gnu.Emacs 0x00000001000db933 emacs_abort + 19 >> 2 org.gnu.Emacs 0x0000000100141c30 Fsignal + 1344 >> 3 org.gnu.Emacs 0x0000000100141cd9 xsignal + 9 >> 4 org.gnu.Emacs 0x000000010013fc6c xsignal1 + 28 >> 5 org.gnu.Emacs 0x000000010010731d compile_pattern + 733 >> 6 org.gnu.Emacs 0x0000000100107999 fast_string_match + 41 >> 7 org.gnu.Emacs 0x00000001000f3acd Ffind_file_name_handler + 221 >> 8 org.gnu.Emacs 0x00000001000f4389 Fexpand_file_name + 89 >> 9 org.gnu.Emacs 0x00000001000fb7ae Fdo_auto_save + 286 >> 10 org.gnu.Emacs 0x00000001000bdabf shut_down_emacs + 239 >> 11 org.gnu.Emacs 0x00000001000bd8b9 terminate_due_to_signal + 89 >> 12 org.gnu.Emacs 0x00000001000dd3e6 deliver_fatal_thread_signal + 134 >> 13 org.gnu.Emacs 0x00000001000de166 handle_sigsegv + 150 >> 14 libsystem_platform.dylib 0x00007fff9789cf1a _sigtramp + 26 >> 15 ??? 000000000000000000 0 + 0 >> 16 org.gnu.Emacs 0x0000000100124b19 mark_object + 1033 >> 17 org.gnu.Emacs 0x0000000100124b19 mark_object + 1033 >> 18 org.gnu.Emacs 0x0000000100124b19 mark_object + 1033 >> 19 org.gnu.Emacs 0x0000000100124b19 mark_object + 1033 >> 20 org.gnu.Emacs 0x0000000100124b19 mark_object + 1033 > > Could you please disassemble mark_object? I think we can have nasty issue > somewhat similar to http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16986#32. here you go: (lldb) di -n mark_object emacs`mark_object at alloc.c:6157: emacs[0x100124710]: pushq %rbp emacs[0x100124711]: movq %rsp, %rbp emacs[0x100124714]: pushq %r15 emacs[0x100124716]: pushq %r14 emacs[0x100124718]: pushq %r13 emacs[0x10012471a]: pushq %r12 emacs[0x10012471c]: pushq %rbx emacs[0x10012471d]: pushq %rax emacs[0x10012471e]: xorl %r8d, %r8d emacs[0x100124721]: leaq 0x820(%rip), %r14 ; mark_object + 2104 emacs[0x100124728]: movabsq $0x4000000000000000, %rbx emacs[0x100124732]: leaq 0x83f(%rip), %r9 ; mark_object + 2152 emacs[0x100124739]: leaq 0x443cc8(%rip), %r10 ; mark_object_loop_halt emacs[0x100124740]: xorl %eax, %eax emacs[0x100124742]: movq %rax, %r15 emacs[0x100124745]: movq %rdi, %r13 emacs[0x100124748]: movq %r13, %rax emacs[0x10012474b]: andq $-0x8, %rax emacs[0x10012474f]: subq 0x4c8262(%rip), %rax ; purebeg emacs[0x100124756]: cmpq 0x4c8263(%rip), %rax ; pure_size emacs[0x10012475d]: jbe 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124763]: movl 0x4c82af(%rip), %eax ; last_marked_index emacs[0x100124769]: incl %eax emacs[0x10012476b]: cmpl $0x1f4, %eax emacs[0x100124770]: cmovel %r8d, %eax emacs[0x100124774]: movl %eax, 0x4c829e(%rip) ; last_marked_index emacs[0x10012477a]: movl %r13d, %eax emacs[0x10012477d]: andl $0x7, %eax emacs[0x100124780]: cmpl $0x7, %eax emacs[0x100124783]: ja 0x100124b27 ; mark_object + 1047 at alloc.c:6465 emacs[0x100124789]: movslq (%r14,%rax,4), %rax emacs[0x10012478d]: addq %r14, %rax emacs[0x100124790]: jmpq *%rax emacs[0x100124792]: movq -0x5(%r13), %r12 emacs[0x100124796]: testq %r12, %r12 emacs[0x100124799]: js 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x10012479f]: addq $-0x5, %r13 emacs[0x1001247a3]: movq %r12, %rax emacs[0x1001247a6]: andq %rbx, %rax emacs[0x1001247a9]: je 0x100124adf ; mark_object + 975 at alloc.c:6458 emacs[0x1001247af]: movq %r12, %rcx emacs[0x1001247b2]: shrq $0x18, %rcx emacs[0x1001247b6]: andq $0x3f, %rcx emacs[0x1001247ba]: leaq -0x1(%rcx), %rdx emacs[0x1001247be]: cmpq $0xd, %rdx emacs[0x1001247c2]: ja 0x100124adf ; mark_object + 975 at alloc.c:6458 emacs[0x1001247c8]: movslq (%r9,%rdx,4), %rdx emacs[0x1001247cc]: addq %r9, %rdx emacs[0x1001247cf]: jmpq *%rdx emacs[0x1001247d1]: movq %r13, %rdi emacs[0x1001247d4]: movq %r9, %r12 emacs[0x1001247d7]: movq %r10, %r13 emacs[0x1001247da]: callq 0x100125140 ; mark_compiled at alloc.c:6004 emacs[0x1001247df]: movq %r13, %r10 emacs[0x1001247e2]: movq %r12, %r9 emacs[0x1001247e5]: xorl %r8d, %r8d emacs[0x1001247e8]: movq %rax, %r13 emacs[0x1001247eb]: leaq 0x453f56(%rip), %rax ; Qnil emacs[0x1001247f2]: cmpq %r13, (%rax) emacs[0x1001247f5]: jne 0x100124748 ; mark_object + 56 [inlined] XPNTR at alloc.c:6167 mark_object + 56 at alloc.c:6167 emacs[0x1001247fb]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124800]: addq $-0x6, %r13 emacs[0x100124804]: movq %r13, %rcx emacs[0x100124807]: shrq $0x4, %rcx emacs[0x10012480b]: movq %r13, %rax emacs[0x10012480e]: andq $-0x400, %rax emacs[0x100124814]: movq 0x3e0(%rax), %rdx emacs[0x10012481b]: movl $0x1, %esi emacs[0x100124820]: shlq %cl, %rsi emacs[0x100124823]: andb $0x3f, %cl emacs[0x100124826]: movzbl %cl, %ecx emacs[0x100124829]: btq %rcx, %rdx emacs[0x10012482d]: jb 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124833]: orq %rsi, %rdx emacs[0x100124836]: movq %rdx, 0x3e0(%rax) emacs[0x10012483d]: movq (%r13), %rdi emacs[0x100124841]: movq 0x8(%r13), %rax emacs[0x100124845]: leaq 0x453efc(%rip), %rcx ; Qnil emacs[0x10012484c]: cmpq (%rcx), %rax emacs[0x10012484f]: movl $0x0, %eax emacs[0x100124854]: je 0x100124742 ; mark_object + 50 at alloc.c:6451 emacs[0x10012485a]: movq %r10, %r12 emacs[0x10012485d]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124862]: movq %r12, %r10 emacs[0x100124865]: leaq 0x70c(%rip), %r9 ; mark_object + 2152 emacs[0x10012486c]: xorl %r8d, %r8d emacs[0x10012486f]: movq 0x8(%r13), %rdi emacs[0x100124873]: incq %r15 emacs[0x100124876]: cmpq (%r10), %r15 emacs[0x100124879]: movq %r15, %rax emacs[0x10012487c]: jne 0x100124742 ; mark_object + 50 at alloc.c:6451 emacs[0x100124882]: jmp 0x100124f3c ; mark_object + 2092 at alloc.c:6452 emacs[0x100124887]: movq %r12, %rax emacs[0x10012488a]: movabsq $-0x8000000000000000, %rcx emacs[0x100124894]: orq %rcx, %rax emacs[0x100124897]: movq %rax, (%r13) emacs[0x10012489b]: testw $0xfff, %r12w emacs[0x1001248a1]: je 0x1001248c2 ; mark_object + 434 at alloc.c:6328 emacs[0x1001248a3]: leaq 0x8(%r13), %r15 emacs[0x1001248a7]: andq $0xfff, %r12 emacs[0x1001248ae]: movq (%r15), %rax emacs[0x1001248b1]: movq %rax, %rdi emacs[0x1001248b4]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x1001248b9]: addq $0x8, %r15 emacs[0x1001248bd]: decq %r12 emacs[0x1001248c0]: jne 0x1001248ae ; mark_object + 414 [inlined] mark_vectorlike + 39 at alloc.c:6327 mark_object + 375 at alloc.c:6327 emacs[0x1001248c2]: movq 0x50(%r13), %rax emacs[0x1001248c6]: movq %rax, %rdi emacs[0x1001248c9]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x1001248ce]: movq 0x58(%r13), %rax emacs[0x1001248d2]: movq %rax, %rdi emacs[0x1001248d5]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x1001248da]: movq 0x60(%r13), %rax emacs[0x1001248de]: movq %rax, %rdi emacs[0x1001248e1]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x1001248e6]: leaq 0x453e5b(%rip), %rax ; Qnil emacs[0x1001248ed]: movq (%rax), %rax emacs[0x1001248f0]: cmpq 0x8(%r13), %rax emacs[0x1001248f4]: movq 0x48(%r13), %rdi emacs[0x1001248f8]: movl $0x0, %eax emacs[0x1001248fd]: movl $0x0, %r8d emacs[0x100124903]: leaq 0x66e(%rip), %rcx ; mark_object + 2152 emacs[0x10012490a]: movq %rcx, %r9 emacs[0x10012490d]: leaq 0x443af4(%rip), %rcx ; mark_object_loop_halt emacs[0x100124914]: movq %rcx, %r10 emacs[0x100124917]: je 0x100124742 ; mark_object + 50 at alloc.c:6451 emacs[0x10012491d]: movabsq $-0x8000000000000000, %rax emacs[0x100124927]: orq %rax, -0x5(%rdi) emacs[0x10012492b]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124930]: movq -0x1(%r13), %rax emacs[0x100124934]: testq %rax, %rax emacs[0x100124937]: js 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x10012493d]: movabsq $-0x8000000000000000, %rcx emacs[0x100124947]: orq %rcx, %rax emacs[0x10012494a]: movq %rax, -0x1(%r13) emacs[0x10012494e]: movq 0xf(%r13), %rdi emacs[0x100124952]: testq %rdi, %rdi emacs[0x100124955]: je 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x10012495b]: testb $0x2, 0x28(%rdi) emacs[0x10012495f]: jne 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124965]: leaq 0x453ddc(%rip), %rax ; Qnil emacs[0x10012496c]: movq (%rax), %rdx emacs[0x10012496f]: leaq 0x63a(%rip), %rsi ; mark_interval at alloc.c:1345 emacs[0x100124976]: addq $0x8, %rsp emacs[0x10012497a]: popq %rbx emacs[0x10012497b]: popq %r12 emacs[0x10012497d]: popq %r13 emacs[0x10012497f]: popq %r14 emacs[0x100124981]: popq %r15 emacs[0x100124983]: popq %rbp emacs[0x100124984]: jmp 0x100191960 ; traverse_intervals_noorder at intervals.c:231 emacs[0x100124989]: addq $-0x2, %r13 emacs[0x10012498d]: leaq 0x5d4(%rip), %r15 ; mark_object + 2136 emacs[0x100124994]: leaq 0x615(%rip), %r14 ; mark_interval at alloc.c:1345 emacs[0x10012499b]: nopl (%rax,%rax) emacs[0x1001249a0]: movzwl (%r13), %eax emacs[0x1001249a5]: testb $0x1, %al emacs[0x1001249a7]: jne 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x1001249ad]: orl $0x1, %eax emacs[0x1001249b0]: movw %ax, (%r13) emacs[0x1001249b5]: movq 0x18(%r13), %rdi emacs[0x1001249b9]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x1001249be]: movq 0x20(%r13), %rdi emacs[0x1001249c2]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x1001249c7]: movzwl (%r13), %eax emacs[0x1001249cc]: shrl %eax emacs[0x1001249ce]: andl $0x7, %eax emacs[0x1001249d1]: decl %eax emacs[0x1001249d3]: cmpl $0x3, %eax emacs[0x1001249d6]: ja 0x100124b2c ; mark_object + 1052 at alloc.c:6393 emacs[0x1001249dc]: movslq (%r15,%rax,4), %rax emacs[0x1001249e0]: addq %r15, %rax emacs[0x1001249e3]: jmpq *%rax emacs[0x1001249e5]: movq 0x10(%r13), %rdi emacs[0x1001249e9]: orq $0x2, %rdi emacs[0x1001249ed]: jmp 0x100124a04 ; mark_object + 756 at alloc.c:6376 emacs[0x1001249ef]: nop emacs[0x1001249f0]: movq %r13, %rdi emacs[0x1001249f3]: callq 0x100125500 ; mark_localized_symbol at alloc.c:6081 emacs[0x1001249f8]: jmp 0x100124a09 ; mark_object + 761 at alloc.c:6395 emacs[0x1001249fa]: nopw (%rax,%rax) emacs[0x100124a00]: movq 0x10(%r13), %rdi emacs[0x100124a04]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124a09]: movq 0x8(%r13), %rax emacs[0x100124a0d]: decq %rax emacs[0x100124a10]: movq %rax, %rcx emacs[0x100124a13]: subq 0x4c7f9e(%rip), %rcx ; purebeg emacs[0x100124a1a]: cmpq 0x4c7f9f(%rip), %rcx ; pure_size emacs[0x100124a21]: jbe 0x100124a30 ; mark_object + 800 [inlined] string_intervals at alloc.c:6397 mark_object + 800 at alloc.c:6397 emacs[0x100124a23]: movabsq $-0x8000000000000000, %rcx emacs[0x100124a2d]: orq %rcx, (%rax) emacs[0x100124a30]: movq 0x10(%rax), %rdi emacs[0x100124a34]: testq %rdi, %rdi emacs[0x100124a37]: je 0x100124a51 ; mark_object + 833 at alloc.c:6399 emacs[0x100124a39]: testb $0x2, 0x28(%rdi) emacs[0x100124a3d]: jne 0x100124a51 ; mark_object + 833 at alloc.c:6399 emacs[0x100124a3f]: leaq 0x453d02(%rip), %rax ; Qnil emacs[0x100124a46]: movq (%rax), %rdx emacs[0x100124a49]: movq %r14, %rsi emacs[0x100124a4c]: callq 0x100191960 ; traverse_intervals_noorder at intervals.c:231 emacs[0x100124a51]: movq 0x28(%r13), %r13 emacs[0x100124a55]: testq %r13, %r13 emacs[0x100124a58]: jne 0x1001249a0 ; mark_object + 656 at alloc.c:6366 emacs[0x100124a5e]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124a63]: movl -0x3(%r13), %eax emacs[0x100124a67]: testl $0x10000, %eax emacs[0x100124a6c]: jne 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124a72]: addq $-0x3, %r13 emacs[0x100124a76]: movzwl %ax, %ecx emacs[0x100124a79]: cmpl $0x5eae, %ecx emacs[0x100124a7f]: je 0x100124b76 ; mark_object + 1126 at alloc.c:6421 emacs[0x100124a85]: cmpl $0x5ead, %ecx emacs[0x100124a8b]: je 0x100124b5d ; mark_object + 1101 [inlined] mark_overlay + 44 at alloc.c:6426 mark_object + 1057 at alloc.c:6426 emacs[0x100124a91]: cmpl $0x5eac, %ecx emacs[0x100124a97]: jne 0x100124f41 ; mark_object + 2097 at alloc.c:6430 emacs[0x100124a9d]: orl $0x10000, %eax emacs[0x100124aa2]: movl %eax, (%r13) emacs[0x100124aa6]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124aab]: addq $-0x7, %r13 emacs[0x100124aaf]: movq %r13, %rcx emacs[0x100124ab2]: shrq $0x3, %rcx emacs[0x100124ab6]: movl $0x1, %eax emacs[0x100124abb]: shlq %cl, %rax emacs[0x100124abe]: movq %r13, %rcx emacs[0x100124ac1]: shrq $0x6, %rcx emacs[0x100124ac5]: andq $-0x400, %r13 emacs[0x100124acc]: andq $0x8, %rcx emacs[0x100124ad0]: orq %r13, %rcx emacs[0x100124ad3]: orq %rax, 0x3e0(%rcx) emacs[0x100124ada]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124adf]: movabsq $-0x8000000000000000, %rcx emacs[0x100124ae9]: orq %r12, %rcx emacs[0x100124aec]: movq %r12, %rbx emacs[0x100124aef]: andq $0xfff, %rbx emacs[0x100124af6]: testq %rax, %rax emacs[0x100124af9]: movq %rcx, (%r13) emacs[0x100124afd]: cmoveq %r12, %rbx emacs[0x100124b01]: testq %rbx, %rbx emacs[0x100124b04]: jle 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124b0a]: addq $0x8, %r13 emacs[0x100124b0e]: nop emacs[0x100124b10]: movq (%r13), %rdi emacs[0x100124b14]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124b19]: addq $0x8, %r13 emacs[0x100124b1d]: decq %rbx emacs[0x100124b20]: jne 0x100124b10 ; mark_object + 1024 [inlined] mark_vectorlike + 39 at alloc.c:6357 mark_object + 985 at alloc.c:6357 emacs[0x100124b22]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124b27]: callq 0x1000db920 ; emacs_abort at sysdep.c:2284 emacs[0x100124b2c]: callq 0x1000db920 ; emacs_abort at sysdep.c:2284 emacs[0x100124b31]: orl $0x10000, %eax emacs[0x100124b36]: movl %eax, (%r13) emacs[0x100124b3a]: movq 0x10(%r13), %rax emacs[0x100124b3e]: orl $0x10000, -0x3(%rax) emacs[0x100124b45]: movq 0x18(%r13), %rax emacs[0x100124b49]: orl $0x10000, -0x3(%rax) emacs[0x100124b50]: movq 0x20(%r13), %rdi emacs[0x100124b54]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124b59]: movq 0x8(%r13), %r13 emacs[0x100124b5d]: testq %r13, %r13 emacs[0x100124b60]: je 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124b66]: movl (%r13), %eax emacs[0x100124b6a]: testl $0x10000, %eax emacs[0x100124b6f]: je 0x100124b31 ; mark_object + 1057 [inlined] mark_overlay at alloc.c:6426 mark_object + 1057 at alloc.c:6426 emacs[0x100124b71]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124b76]: orl $0x10000, %eax emacs[0x100124b7b]: movl %eax, (%r13) emacs[0x100124b7f]: movq %r13, %rdi emacs[0x100124b82]: addq $0x8, %rsp emacs[0x100124b86]: popq %rbx emacs[0x100124b87]: popq %r12 emacs[0x100124b89]: popq %r13 emacs[0x100124b8b]: popq %r14 emacs[0x100124b8d]: popq %r15 emacs[0x100124b8f]: popq %rbp emacs[0x100124b90]: jmp 0x100125590 ; mark_save_value at alloc.c:6099 emacs[0x100124b95]: callq 0x1000db920 ; emacs_abort at sysdep.c:2284 emacs[0x100124b9a]: movq %rbx, %r14 emacs[0x100124b9d]: movq %r12, %rax emacs[0x100124ba0]: movabsq $-0x8000000000000000, %rcx emacs[0x100124baa]: orq %rcx, %rax emacs[0x100124bad]: movq %rax, (%r13) emacs[0x100124bb1]: testw $0xfff, %r12w emacs[0x100124bb7]: je 0x100124bd8 ; mark_object + 1224 at alloc.c:6284 emacs[0x100124bb9]: leaq 0x8(%r13), %rbx emacs[0x100124bbd]: andq $0xfff, %r12 emacs[0x100124bc4]: movq (%rbx), %rax emacs[0x100124bc7]: movq %rax, %rdi emacs[0x100124bca]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124bcf]: addq $0x8, %rbx emacs[0x100124bd3]: decq %r12 emacs[0x100124bd6]: jne 0x100124bc4 ; mark_object + 1204 [inlined] mark_vectorlike + 39 at alloc.c:6283 mark_object + 1165 at alloc.c:6283 emacs[0x100124bd8]: movq 0x90(%r13), %rax emacs[0x100124bdf]: movq %rax, %rdi emacs[0x100124be2]: callq 0x1001251b0 ; mark_face_cache at alloc.c:6058 emacs[0x100124be7]: movl $0x3800000, %eax emacs[0x100124bec]: andq 0xc0(%r13), %rax emacs[0x100124bf3]: cmpq $0x2800000, %rax emacs[0x100124bf9]: movq %r14, %rdx emacs[0x100124bfc]: jne 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124c02]: movq 0x178(%r13), %rax emacs[0x100124c09]: testq %rax, %rax emacs[0x100124c0c]: je 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124c12]: movq 0x80(%rax), %rbx emacs[0x100124c19]: testq %rbx, %rbx emacs[0x100124c1c]: je 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124c22]: movq (%rbx), %rax emacs[0x100124c25]: testq %rax, %rax emacs[0x100124c28]: js 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124c2e]: movabsq $-0x8000000000000000, %rcx emacs[0x100124c38]: orq %rax, %rcx emacs[0x100124c3b]: movq %rcx, (%rbx) emacs[0x100124c3e]: movq %rax, %r14 emacs[0x100124c41]: andq $0xfff, %r14 emacs[0x100124c48]: testq %rdx, %rax emacs[0x100124c4b]: cmoveq %rax, %r14 emacs[0x100124c4f]: testq %r14, %r14 emacs[0x100124c52]: jle 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124c58]: addq $0x8, %rbx emacs[0x100124c5c]: movq (%rbx), %rax emacs[0x100124c5f]: movq %rax, %rdi emacs[0x100124c62]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124c67]: addq $0x8, %rbx emacs[0x100124c6b]: decq %r14 emacs[0x100124c6e]: jne 0x100124c5c ; mark_object + 1356 [inlined] mark_vectorlike + 36 at alloc.c:6291 mark_object + 1320 at alloc.c:6291 emacs[0x100124c70]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124c75]: movabsq $-0x8000000000000000, %rax emacs[0x100124c7f]: orq %r12, %rax emacs[0x100124c82]: movq %rax, (%r13) emacs[0x100124c86]: testw $0xfff, %r12w emacs[0x100124c8c]: je 0x100124cad ; mark_object + 1437 at alloc.c:6306 emacs[0x100124c8e]: leaq 0x8(%r13), %rbx emacs[0x100124c92]: andq $0xfff, %r12 emacs[0x100124c99]: movq (%rbx), %rax emacs[0x100124c9c]: movq %rax, %rdi emacs[0x100124c9f]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124ca4]: addq $0x8, %rbx emacs[0x100124ca8]: decq %r12 emacs[0x100124cab]: jne 0x100124c99 ; mark_object + 1417 [inlined] mark_vectorlike + 26 at alloc.c:6301 mark_object + 1391 at alloc.c:6301 emacs[0x100124cad]: movq 0xc0(%r13), %rax emacs[0x100124cb4]: testq %rax, %rax emacs[0x100124cb7]: je 0x100124ec0 ; mark_object + 1968 at alloc.c:6317 emacs[0x100124cbd]: movslq 0x18(%rax), %r14 emacs[0x100124cc1]: testq %r14, %r14 emacs[0x100124cc4]: jle 0x100124dbb ; mark_object + 1707 at alloc.c:6309 emacs[0x100124cca]: movq 0x8(%rax), %r15 emacs[0x100124cce]: shlq $0x8, %r14 emacs[0x100124cd2]: addq %r15, %r14 emacs[0x100124cd5]: testb $0x4, 0xed(%r15) emacs[0x100124cdd]: je 0x100124dab ; mark_object + 1691 [inlined] mark_glyph_matrix + 238 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124ce3]: movswq 0x20(%r15), %rax emacs[0x100124ce8]: testq %rax, %rax emacs[0x100124ceb]: jle 0x100124d25 ; mark_object + 1557 [inlined] mark_glyph_matrix + 104 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124ced]: movq (%r15), %r12 emacs[0x100124cf0]: leaq (%rax,%rax,2), %rbx emacs[0x100124cf4]: shlq $0x4, %rbx emacs[0x100124cf8]: addq %r12, %rbx emacs[0x100124cfb]: movq 0x8(%r12), %rax emacs[0x100124d00]: movq %rax, %rcx emacs[0x100124d03]: andq $0x7, %rcx emacs[0x100124d07]: cmpq $0x1, %rcx emacs[0x100124d0b]: jne 0x100124d1c ; mark_object + 1548 [inlined] mark_glyph_matrix + 95 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d0d]: cmpq $0x0, -0x1(%rax) emacs[0x100124d12]: js 0x100124d1c ; mark_object + 1548 [inlined] mark_glyph_matrix + 95 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d14]: movq %rax, %rdi emacs[0x100124d17]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124d1c]: addq $0x30, %r12 emacs[0x100124d20]: cmpq %rbx, %r12 emacs[0x100124d23]: jb 0x100124cfb ; mark_object + 1515 [inlined] mark_glyph_matrix + 62 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d25]: movswq 0x22(%r15), %rax emacs[0x100124d2a]: testq %rax, %rax emacs[0x100124d2d]: jle 0x100124d68 ; mark_object + 1624 [inlined] mark_glyph_matrix + 171 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d2f]: movq 0x8(%r15), %r12 emacs[0x100124d33]: leaq (%rax,%rax,2), %rbx emacs[0x100124d37]: shlq $0x4, %rbx emacs[0x100124d3b]: addq %r12, %rbx emacs[0x100124d3e]: movq 0x8(%r12), %rax emacs[0x100124d43]: movq %rax, %rcx emacs[0x100124d46]: andq $0x7, %rcx emacs[0x100124d4a]: cmpq $0x1, %rcx emacs[0x100124d4e]: jne 0x100124d5f ; mark_object + 1615 [inlined] mark_glyph_matrix + 162 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d50]: cmpq $0x0, -0x1(%rax) emacs[0x100124d55]: js 0x100124d5f ; mark_object + 1615 [inlined] mark_glyph_matrix + 162 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d57]: movq %rax, %rdi emacs[0x100124d5a]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124d5f]: addq $0x30, %r12 emacs[0x100124d63]: cmpq %rbx, %r12 emacs[0x100124d66]: jb 0x100124d3e ; mark_object + 1582 [inlined] mark_glyph_matrix + 129 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d68]: movswq 0x24(%r15), %rax emacs[0x100124d6d]: testq %rax, %rax emacs[0x100124d70]: jle 0x100124dab ; mark_object + 1691 [inlined] mark_glyph_matrix + 238 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d72]: movq 0x10(%r15), %r12 emacs[0x100124d76]: leaq (%rax,%rax,2), %rbx emacs[0x100124d7a]: shlq $0x4, %rbx emacs[0x100124d7e]: addq %r12, %rbx emacs[0x100124d81]: movq 0x8(%r12), %rax emacs[0x100124d86]: movq %rax, %rcx emacs[0x100124d89]: andq $0x7, %rcx emacs[0x100124d8d]: cmpq $0x1, %rcx emacs[0x100124d91]: jne 0x100124da2 ; mark_object + 1682 [inlined] mark_glyph_matrix + 229 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d93]: cmpq $0x0, -0x1(%rax) emacs[0x100124d98]: js 0x100124da2 ; mark_object + 1682 [inlined] mark_glyph_matrix + 229 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124d9a]: movq %rax, %rdi emacs[0x100124d9d]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124da2]: addq $0x30, %r12 emacs[0x100124da6]: cmpq %rbx, %r12 emacs[0x100124da9]: jb 0x100124d81 ; mark_object + 1649 [inlined] mark_glyph_matrix + 196 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124dab]: addq $0x100, %r15 emacs[0x100124db2]: cmpq %r14, %r15 emacs[0x100124db5]: jb 0x100124cd5 ; mark_object + 1477 [inlined] mark_glyph_matrix + 24 at alloc.c:6308 mark_object + 1453 at alloc.c:6308 emacs[0x100124dbb]: movq 0xc8(%r13), %rax emacs[0x100124dc2]: movslq 0x18(%rax), %r14 emacs[0x100124dc6]: testq %r14, %r14 emacs[0x100124dc9]: jle 0x100124ec0 ; mark_object + 1968 at alloc.c:6317 emacs[0x100124dcf]: movq 0x8(%rax), %r15 emacs[0x100124dd3]: shlq $0x8, %r14 emacs[0x100124dd7]: addq %r15, %r14 emacs[0x100124dda]: testb $0x4, 0xed(%r15) emacs[0x100124de2]: je 0x100124eb0 ; mark_object + 1952 [inlined] mark_glyph_matrix + 238 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124de8]: movswq 0x20(%r15), %rax emacs[0x100124ded]: testq %rax, %rax emacs[0x100124df0]: jle 0x100124e2a ; mark_object + 1818 [inlined] mark_glyph_matrix + 104 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124df2]: movq (%r15), %r12 emacs[0x100124df5]: leaq (%rax,%rax,2), %rbx emacs[0x100124df9]: shlq $0x4, %rbx emacs[0x100124dfd]: addq %r12, %rbx emacs[0x100124e00]: movq 0x8(%r12), %rax emacs[0x100124e05]: movq %rax, %rcx emacs[0x100124e08]: andq $0x7, %rcx emacs[0x100124e0c]: cmpq $0x1, %rcx emacs[0x100124e10]: jne 0x100124e21 ; mark_object + 1809 [inlined] mark_glyph_matrix + 95 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e12]: cmpq $0x0, -0x1(%rax) emacs[0x100124e17]: js 0x100124e21 ; mark_object + 1809 [inlined] mark_glyph_matrix + 95 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e19]: movq %rax, %rdi emacs[0x100124e1c]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124e21]: addq $0x30, %r12 emacs[0x100124e25]: cmpq %rbx, %r12 emacs[0x100124e28]: jb 0x100124e00 ; mark_object + 1776 [inlined] mark_glyph_matrix + 62 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e2a]: movswq 0x22(%r15), %rax emacs[0x100124e2f]: testq %rax, %rax emacs[0x100124e32]: jle 0x100124e6d ; mark_object + 1885 [inlined] mark_glyph_matrix + 171 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e34]: movq 0x8(%r15), %r12 emacs[0x100124e38]: leaq (%rax,%rax,2), %rbx emacs[0x100124e3c]: shlq $0x4, %rbx emacs[0x100124e40]: addq %r12, %rbx emacs[0x100124e43]: movq 0x8(%r12), %rax emacs[0x100124e48]: movq %rax, %rcx emacs[0x100124e4b]: andq $0x7, %rcx emacs[0x100124e4f]: cmpq $0x1, %rcx emacs[0x100124e53]: jne 0x100124e64 ; mark_object + 1876 [inlined] mark_glyph_matrix + 162 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e55]: cmpq $0x0, -0x1(%rax) emacs[0x100124e5a]: js 0x100124e64 ; mark_object + 1876 [inlined] mark_glyph_matrix + 162 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e5c]: movq %rax, %rdi emacs[0x100124e5f]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124e64]: addq $0x30, %r12 emacs[0x100124e68]: cmpq %rbx, %r12 emacs[0x100124e6b]: jb 0x100124e43 ; mark_object + 1843 [inlined] mark_glyph_matrix + 129 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e6d]: movswq 0x24(%r15), %rax emacs[0x100124e72]: testq %rax, %rax emacs[0x100124e75]: jle 0x100124eb0 ; mark_object + 1952 [inlined] mark_glyph_matrix + 238 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e77]: movq 0x10(%r15), %r12 emacs[0x100124e7b]: leaq (%rax,%rax,2), %rbx emacs[0x100124e7f]: shlq $0x4, %rbx emacs[0x100124e83]: addq %r12, %rbx emacs[0x100124e86]: movq 0x8(%r12), %rax emacs[0x100124e8b]: movq %rax, %rcx emacs[0x100124e8e]: andq $0x7, %rcx emacs[0x100124e92]: cmpq $0x1, %rcx emacs[0x100124e96]: jne 0x100124ea7 ; mark_object + 1943 [inlined] mark_glyph_matrix + 229 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e98]: cmpq $0x0, -0x1(%rax) emacs[0x100124e9d]: js 0x100124ea7 ; mark_object + 1943 [inlined] mark_glyph_matrix + 229 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124e9f]: movq %rax, %rdi emacs[0x100124ea2]: callq 0x100124710 ; mark_object at alloc.c:6157 emacs[0x100124ea7]: addq $0x30, %r12 emacs[0x100124eab]: cmpq %rbx, %r12 emacs[0x100124eae]: jb 0x100124e86 ; mark_object + 1910 [inlined] mark_glyph_matrix + 196 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124eb0]: addq $0x100, %r15 emacs[0x100124eb7]: cmpq %r14, %r15 emacs[0x100124eba]: jb 0x100124dda ; mark_object + 1738 [inlined] mark_glyph_matrix + 24 at alloc.c:6309 mark_object + 1714 at alloc.c:6309 emacs[0x100124ec0]: movq 0xd0(%r13), %rax emacs[0x100124ec7]: movq %rax, %rdi emacs[0x100124eca]: callq 0x100125340 ; mark_discard_killed_buffers at alloc.c:6125 emacs[0x100124ecf]: movq %rax, 0xd0(%r13) emacs[0x100124ed6]: movq 0xd8(%r13), %rax emacs[0x100124edd]: movq %rax, %rdi emacs[0x100124ee0]: callq 0x100125340 ; mark_discard_killed_buffers at alloc.c:6125 emacs[0x100124ee5]: movq %rax, 0xd8(%r13) emacs[0x100124eec]: jmp 0x100124eff ; mark_object + 2031 at alloc.c:6471 emacs[0x100124eee]: movabsq $-0x8000000000000000, %rax emacs[0x100124ef8]: orq %rax, %r12 emacs[0x100124efb]: movq %r12, (%r13) emacs[0x100124eff]: addq $0x8, %rsp emacs[0x100124f03]: popq %rbx emacs[0x100124f04]: popq %r12 emacs[0x100124f06]: popq %r13 emacs[0x100124f08]: popq %r14 emacs[0x100124f0a]: popq %r15 emacs[0x100124f0c]: popq %rbp emacs[0x100124f0d]: retq emacs[0x100124f0e]: movq %r13, %rdi emacs[0x100124f11]: addq $0x8, %rsp emacs[0x100124f15]: popq %rbx emacs[0x100124f16]: popq %r12 emacs[0x100124f18]: popq %r13 emacs[0x100124f1a]: popq %r14 emacs[0x100124f1c]: popq %r15 emacs[0x100124f1e]: popq %rbp emacs[0x100124f1f]: jmp 0x100124fd0 ; mark_buffer at alloc.c:6033 emacs[0x100124f24]: movq %r13, %rdi emacs[0x100124f27]: movl %ecx, %esi emacs[0x100124f29]: addq $0x8, %rsp emacs[0x100124f2d]: popq %rbx emacs[0x100124f2e]: popq %r12 emacs[0x100124f30]: popq %r13 emacs[0x100124f32]: popq %r14 emacs[0x100124f34]: popq %r15 emacs[0x100124f36]: popq %rbp emacs[0x100124f37]: jmp 0x100125440 ; mark_char_table at alloc.c:5978 emacs[0x100124f3c]: callq 0x1000db920 ; emacs_abort at sysdep.c:2284 emacs[0x100124f41]: callq 0x1000db920 ; emacs_abort at sysdep.c:2284 (lldb) -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1343 http://www.childpsy.net/ http://dhimmi.org http://think-israel.org http://www.dhimmitude.org http://islamexposedonline.com http://mideasttruth.com Only a fool has no doubts.