unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Andy Moreton <andrewjmoreton@gmail.com>
To: emacs-devel@gnu.org
Subject: Re: bignum branch
Date: Sat, 11 Aug 2018 19:15:08 +0100	[thread overview]
Message-ID: <86eff4ixcj.fsf@gmail.com> (raw)
In-Reply-To: 83eff4lqon.fsf@gnu.org

On Sat 11 Aug 2018, Eli Zaretskii wrote:

>> From: Andy Moreton <andrewjmoreton@gmail.com>
>> Date: Sat, 11 Aug 2018 18:56:15 +0100
>> 
>> > What do the following GDB commands show, in the crashing build?
>> >
>> >   (gdb) disassemble __gmpz_popcount
>> >   (gdb) ptype __gmpz_popcount
>> >   (gdb) ptype __gmpn_popcount
>> 
>> Nothing useful :-(
>
> What about
>
>   (gdb) disassemble Flogcount

(gdb) disas Flogcount
Dump of assembler code for function Flogcount:
   0x000000040016e2de <+0>:	push   %rsi
   0x000000040016e2df <+1>:	push   %rbx
   0x000000040016e2e0 <+2>:	sub    $0x38,%rsp
   0x000000040016e2e4 <+6>:	mov    %rcx,%rbx
   0x000000040016e2e7 <+9>:	mov    0x53d252(%rip),%rax        # 0x4006ab540 <.refptr.suppress_checking>
   0x000000040016e2ee <+16>:	cmpb   $0x0,(%rax)
   0x000000040016e2f1 <+19>:	je     0x40016e317 <Flogcount+57>
   0x000000040016e2f3 <+21>:	mov    %ebx,%eax
   0x000000040016e2f5 <+23>:	and    $0x3,%eax
   0x000000040016e2f8 <+26>:	cmp    $0x2,%eax
   0x000000040016e2fb <+29>:	je     0x40016e36a <Flogcount+140>
   0x000000040016e2fd <+31>:	mov    %ebx,%eax
   0x000000040016e2ff <+33>:	and    $0x7,%eax
   0x000000040016e302 <+36>:	cmp    $0x1,%eax
   0x000000040016e305 <+39>:	je     0x40016e34d <Flogcount+111>
   0x000000040016e307 <+41>:	mov    $0x0,%eax
   0x000000040016e30c <+46>:	test   %eax,%eax
   0x000000040016e30e <+48>:	je     0x40016e36f <Flogcount+145>
   0x000000040016e310 <+50>:	mov    $0x1,%eax
   0x000000040016e315 <+55>:	jmp    0x40016e36f <Flogcount+145>
   0x000000040016e317 <+57>:	mov    $0xc010,%ecx
   0x000000040016e31c <+62>:	callq  0x4000e6466 <XSYMBOL>
   0x000000040016e321 <+67>:	mov    0x53cd78(%rip),%rsi        # 0x4006ab0a0 <.refptr.lispsym>
   0x000000040016e328 <+74>:	lea    0xc010(%rsi),%rdx
   0x000000040016e32f <+81>:	cmp    %rdx,%rax
   0x000000040016e332 <+84>:	je     0x40016e2f3 <Flogcount+21>
   0x000000040016e334 <+86>:	mov    $0x3ad,%r8d
   0x000000040016e33a <+92>:	lea    0x51905f(%rip),%rdx        # 0x4006873a0 <gdb_make_enums_visible+408>
   0x000000040016e341 <+99>:	lea    0x519144(%rip),%rcx        # 0x40068748c <gdb_make_enums_visible+644>
   0x000000040016e348 <+106>:	callq  0x400160fd4 <die>
   0x000000040016e34d <+111>:	mov    %rbx,%rcx
   0x000000040016e350 <+114>:	callq  0x4000e9651 <XMISCANY>
   0x000000040016e355 <+119>:	cmpw   $0x5eb1,(%rax)
   0x000000040016e35a <+124>:	je     0x40016e363 <Flogcount+133>
   0x000000040016e35c <+126>:	mov    $0x0,%eax
   0x000000040016e361 <+131>:	jmp    0x40016e30c <Flogcount+46>
   0x000000040016e363 <+133>:	mov    $0x1,%eax
   0x000000040016e368 <+138>:	jmp    0x40016e30c <Flogcount+46>
   0x000000040016e36a <+140>:	mov    $0x1,%eax
   0x000000040016e36f <+145>:	test   %eax,%eax
   0x000000040016e371 <+147>:	je     0x40016e3c6 <Flogcount+232>
   0x000000040016e373 <+149>:	mov    %ebx,%eax
   0x000000040016e375 <+151>:	and    $0x7,%eax
   0x000000040016e378 <+154>:	cmp    $0x1,%eax
   0x000000040016e37b <+157>:	je     0x40016e3d3 <Flogcount+245>
   0x000000040016e37d <+159>:	mov    $0x0,%eax
   0x000000040016e382 <+164>:	test   %eax,%eax
   0x000000040016e384 <+166>:	jne    0x40016e3f0 <Flogcount+274>
   0x000000040016e386 <+168>:	mov    0x53d1b3(%rip),%rax        # 0x4006ab540 <.refptr.suppress_checking>
   0x000000040016e38d <+175>:	cmpb   $0x0,(%rax)
   0x000000040016e390 <+178>:	jne    0x40016e3a0 <Flogcount+194>
   0x000000040016e392 <+180>:	mov    %ebx,%eax
   0x000000040016e394 <+182>:	and    $0x3,%eax
   0x000000040016e397 <+185>:	cmp    $0x2,%eax
   0x000000040016e39a <+188>:	jne    0x40016e49d <Flogcount+447>
   0x000000040016e3a0 <+194>:	mov    %rbx,%rcx
   0x000000040016e3a3 <+197>:	sar    $0x2,%rcx
   0x000000040016e3a7 <+201>:	js     0x40016e4b6 <Flogcount+472>
   0x000000040016e3ad <+207>:	callq  0x400286940 <__popcountdi2>
   0x000000040016e3b2 <+212>:	cltq   
   0x000000040016e3b4 <+214>:	lea    0x2(,%rax,4),%rbx
   0x000000040016e3bc <+222>:	mov    %rbx,%rax
   0x000000040016e3bf <+225>:	add    $0x38,%rsp
   0x000000040016e3c3 <+229>:	pop    %rbx
   0x000000040016e3c4 <+230>:	pop    %rsi
   0x000000040016e3c5 <+231>:	retq   
   0x000000040016e3c6 <+232>:	mov    %rbx,%rdx
   0x000000040016e3c9 <+235>:	mov    $0xc010,%ecx
   0x000000040016e3ce <+240>:	callq  0x40016c439 <wrong_type_argument>
   0x000000040016e3d3 <+245>:	mov    %rbx,%rcx
   0x000000040016e3d6 <+248>:	callq  0x4000e9651 <XMISCANY>
   0x000000040016e3db <+253>:	cmpw   $0x5eb1,(%rax)
   0x000000040016e3e0 <+258>:	je     0x40016e3e9 <Flogcount+267>
   0x000000040016e3e2 <+260>:	mov    $0x0,%eax
   0x000000040016e3e7 <+265>:	jmp    0x40016e382 <Flogcount+164>
   0x000000040016e3e9 <+267>:	mov    $0x1,%eax
   0x000000040016e3ee <+272>:	jmp    0x40016e382 <Flogcount+164>
   0x000000040016e3f0 <+274>:	mov    %rbx,%rcx
   0x000000040016e3f3 <+277>:	callq  0x4000e9c29 <XBIGNUM>
   0x000000040016e3f8 <+282>:	mov    0x14(%rax),%edx
   0x000000040016e3fb <+285>:	test   %edx,%edx
   0x000000040016e3fd <+287>:	js     0x40016e41d <Flogcount+319>
   0x000000040016e3ff <+289>:	jle    0x40016e416 <Flogcount+312>
   0x000000040016e401 <+291>:	mov    0x18(%rax),%rcx
   0x000000040016e405 <+295>:	callq  0x401e60494 <__imp___gmpn_popcount>
   0x000000040016e40a <+300>:	mov    %eax,%eax
   0x000000040016e40c <+302>:	lea    0x2(,%rax,4),%rbx
   0x000000040016e414 <+310>:	jmp    0x40016e3bc <Flogcount+222>
   0x000000040016e416 <+312>:	mov    $0x0,%eax
   0x000000040016e41b <+317>:	jmp    0x40016e40a <Flogcount+300>
   0x000000040016e41d <+319>:	lea    0x20(%rsp),%rsi
   0x000000040016e422 <+324>:	mov    %rsi,%rcx
   0x000000040016e425 <+327>:	callq  0x400285308 <__gmpz_init>
   0x000000040016e42a <+332>:	mov    %rbx,%rcx
   0x000000040016e42d <+335>:	callq  0x4000e9c29 <XBIGNUM>
   0x000000040016e432 <+340>:	lea    0x10(%rax),%rdx
   0x000000040016e436 <+344>:	cmp    %rsi,%rdx
   0x000000040016e439 <+347>:	je     0x40016e445 <Flogcount+359>
   0x000000040016e43b <+349>:	lea    0x20(%rsp),%rcx
   0x000000040016e440 <+354>:	callq  0x4002852d0 <__gmpz_set>
   0x000000040016e445 <+359>:	mov    0x24(%rsp),%eax
   0x000000040016e449 <+363>:	neg    %eax
   0x000000040016e44b <+365>:	mov    %eax,0x24(%rsp)
   0x000000040016e44f <+369>:	lea    0x20(%rsp),%rcx
   0x000000040016e454 <+374>:	mov    $0x1,%r8d
   0x000000040016e45a <+380>:	mov    %rcx,%rdx
   0x000000040016e45d <+383>:	callq  0x4002852a0 <__gmpz_sub_ui>
   0x000000040016e462 <+388>:	mov    0x24(%rsp),%edx
   0x000000040016e466 <+392>:	test   %edx,%edx
   0x000000040016e468 <+394>:	js     0x40016e496 <Flogcount+440>
   0x000000040016e46a <+396>:	mov    $0x0,%eax
   0x000000040016e46f <+401>:	test   %edx,%edx
   0x000000040016e471 <+403>:	jle    0x40016e47d <Flogcount+415>
   0x000000040016e473 <+405>:	mov    0x28(%rsp),%rcx
   0x000000040016e478 <+410>:	callq  0x401e60494 <__imp___gmpn_popcount>
   0x000000040016e47d <+415>:	mov    %eax,%eax
   0x000000040016e47f <+417>:	lea    0x2(,%rax,4),%rbx
   0x000000040016e487 <+425>:	lea    0x20(%rsp),%rcx
   0x000000040016e48c <+430>:	callq  0x400285360 <__gmpz_clear>
   0x000000040016e491 <+435>:	jmpq   0x40016e3bc <Flogcount+222>
   0x000000040016e496 <+440>:	mov    $0xffffffff,%eax
   0x000000040016e49b <+445>:	jmp    0x40016e46f <Flogcount+401>
   0x000000040016e49d <+447>:	mov    $0xd1c,%r8d
   0x000000040016e4a3 <+453>:	lea    0x518e66(%rip),%rdx        # 0x400687310 <gdb_make_enums_visible+264>
   0x000000040016e4aa <+460>:	lea    0x51911f(%rip),%rcx        # 0x4006875d0 <gdb_make_enums_visible+968>
   0x000000040016e4b1 <+467>:	callq  0x400160fd4 <die>
   0x000000040016e4b6 <+472>:	not    %rcx
   0x000000040016e4b9 <+475>:	jmpq   0x40016e3ad <Flogcount+207>
End of assembler dump.




  reply	other threads:[~2018-08-11 18:15 UTC|newest]

Thread overview: 205+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-13  4:26 bignum branch Tom Tromey
2018-07-13  7:38 ` Eli Zaretskii
2018-07-13  8:45 ` Robert Pluim
2018-07-13  9:51   ` Robert Pluim
2018-07-13 11:59     ` Eli Zaretskii
2018-07-13 13:31       ` Robert Pluim
2018-07-13 18:06         ` Tom Tromey
2018-07-13 12:04     ` Eli Zaretskii
2018-07-13 12:14       ` Eli Zaretskii
2018-07-13 13:02         ` Robert Pluim
2018-07-13 13:50           ` Eli Zaretskii
2018-07-15 16:29             ` Andy Moreton
2018-07-17 18:10               ` Robert Pluim
2018-07-17 18:24                 ` Eli Zaretskii
2018-07-17 19:06                   ` Eli Zaretskii
2018-07-17 20:00                   ` Robert Pluim
2018-07-17 21:17                     ` Clément Pit-Claudel
2018-07-18  1:01                       ` Stefan Monnier
2018-07-18  9:28                 ` Andy Moreton
2018-07-18 13:21                   ` Robert Pluim
2018-07-18 13:32                     ` Stefan Monnier
2018-07-18 16:01                     ` Eli Zaretskii
2018-07-18 16:21                       ` Robert Pluim
2018-07-18 16:47                         ` Eli Zaretskii
2018-07-13 12:34       ` Robert Pluim
2018-07-13 14:28 ` Andy Moreton
2018-07-13 14:42   ` Eli Zaretskii
2018-07-13 14:53     ` Andy Moreton
2018-07-13 15:03       ` Eli Zaretskii
2018-07-13 15:30   ` Andy Moreton
2018-07-13 19:35     ` Andy Moreton
2018-07-14 16:20       ` Eli Zaretskii
2018-07-14 20:04         ` Andy Moreton
2018-07-15 13:46           ` Tom Tromey
2018-07-15 15:01             ` Eli Zaretskii
2018-07-16 12:19               ` Stefan Monnier
2018-07-16 14:40                 ` Eli Zaretskii
2018-07-16 16:09                   ` Stefan Monnier
2018-07-16 18:06                     ` Eli Zaretskii
2018-07-16 18:32                       ` Stefan Monnier
2018-07-16 18:42                         ` Eli Zaretskii
2018-07-16 14:35             ` Tom Tromey
2018-07-16 22:28               ` Andy Moreton
2018-07-21 15:35                 ` Andy Moreton
2018-07-22 16:43                   ` Tom Tromey
2018-07-22 17:41                     ` Andy Moreton
2018-08-03  0:43                       ` Andy Moreton
2018-08-03  6:23                         ` Eli Zaretskii
2018-08-03  9:01                           ` Andy Moreton
2018-08-03  9:47                             ` Eli Zaretskii
2018-08-03 10:07                               ` Andy Moreton
2018-08-03 13:16                                 ` Eli Zaretskii
2018-08-03 14:05                                   ` Andy Moreton
2018-08-03 17:44                                     ` Eli Zaretskii
2018-08-03 19:54                                       ` Andy Moreton
2018-08-04  6:11                                         ` Eli Zaretskii
2018-08-04 11:14                                           ` Andy Moreton
2018-08-04 11:29                                             ` Eli Zaretskii
2018-08-03 20:17                                       ` Tom Tromey
2018-08-03 21:02                                         ` Paul Eggert
2018-08-03 21:19                                           ` Tom Tromey
2018-08-04  1:22                                             ` Paul Eggert
2018-08-04  6:18                                               ` Eli Zaretskii
2018-08-04 10:49                                                 ` Achim Gratz
2018-08-04 11:07                                                   ` Eli Zaretskii
2018-08-04 10:43                                             ` Achim Gratz
2018-08-04 16:33                                               ` Tom Tromey
2018-08-04 18:28                                                 ` Achim Gratz
2018-08-04  6:20                                           ` Eli Zaretskii
2018-08-04 11:17                                         ` Andy Moreton
2018-08-04 16:41                                           ` Tom Tromey
2018-08-06 10:18                                             ` Robert Pluim
2018-08-07  0:36                                           ` Tom Tromey
2018-08-07  8:38                                             ` Andy Moreton
2018-08-08  0:25                                               ` Tom Tromey
2018-08-04 17:10                                         ` Tom Tromey
2018-08-03 17:30                           ` Tom Tromey
2018-08-03 19:16                             ` Andy Moreton
2018-08-04  6:07                               ` Eli Zaretskii
2018-08-05 11:36                                 ` Andy Moreton
2018-08-05 15:18                                   ` Eli Zaretskii
2018-08-06 18:12                                     ` Andy Moreton
2018-08-07  0:41                                       ` Tom Tromey
2018-08-07  2:03                                         ` Paul Eggert
2018-08-07  3:59                                           ` Tom Tromey
2018-08-07  4:02                                             ` Tom Tromey
2018-08-07 11:22                                             ` Andy Moreton
2018-08-07 16:53                                             ` Paul Eggert
2018-08-07 17:12                                               ` Eli Zaretskii
2018-08-07 17:52                                                 ` Paul Eggert
2018-08-08  0:23                                                   ` Tom Tromey
2018-08-07 11:17                                         ` Andy Moreton
2018-08-08  0:26                                           ` Tom Tromey
2018-08-08 14:24                                             ` Andy Moreton
2018-08-08 16:35                                         ` Andy Moreton
2018-08-08 23:14                                           ` Tom Tromey
2018-08-09  2:33                                             ` Eli Zaretskii
2018-08-09  7:59                                               ` Michael Albinus
2018-08-09 13:01                                                 ` Eli Zaretskii
2018-08-09 17:31                                                   ` Paul Eggert
2018-08-09 18:32                                                     ` Eli Zaretskii
2018-08-09 19:22                                                     ` Stefan Monnier
2018-08-09 16:34                                               ` Tom Tromey
2018-08-09 18:28                                                 ` Eli Zaretskii
2018-08-09 19:30                                                 ` Tom Tromey
2018-08-08 23:37                                           ` Tom Tromey
2018-08-09  0:07                                             ` Andy Moreton
2018-08-09  2:03                                               ` Tom Tromey
2018-08-09  9:19                                                 ` Andy Moreton
2018-08-09 20:49                                                 ` Andy Moreton
2018-08-10  5:45                                                   ` Eli Zaretskii
2018-08-10  7:43                                                     ` Andy Moreton
2018-08-10  7:59                                                       ` Paul Eggert
2018-08-10  9:48                                                         ` Eli Zaretskii
2018-08-10 20:58                                                           ` Paul Eggert
2018-08-11  7:08                                                             ` Eli Zaretskii
2018-08-11  8:02                                                               ` Paul Eggert
2018-08-11 10:50                                                                 ` Eli Zaretskii
2018-08-11 12:57                                                                   ` Stefan Monnier
2018-08-11 19:38                                                                   ` Paul Eggert
2018-08-10 11:18                                                         ` Andy Moreton
2018-08-10 11:56                                                           ` Andreas Schwab
2018-08-10 12:25                                                             ` Eli Zaretskii
2018-08-10 12:27                                                             ` Andy Moreton
2018-08-10 18:37                                                               ` Achim Gratz
2018-08-10 12:26                                                           ` Eli Zaretskii
2018-08-10 12:46                                                             ` Andy Moreton
2018-08-10  9:46                                                       ` Eli Zaretskii
2018-08-10 11:39                                                         ` Andy Moreton
2018-08-10 12:33                                                           ` Eli Zaretskii
2018-08-10 14:05                                                             ` Andy Moreton
2018-08-10 19:57                                                               ` Eli Zaretskii
2018-08-11 15:21                                                                 ` Andy Moreton
2018-08-11 15:25                                                                   ` Tom Tromey
2018-08-11 16:04                                                                     ` Eli Zaretskii
2018-08-11 16:16                                                                   ` Eli Zaretskii
2018-08-11 16:54                                                                     ` Andy Moreton
2018-08-11 17:34                                                                       ` Eli Zaretskii
2018-08-11 17:56                                                                         ` Andy Moreton
2018-08-11 18:10                                                                           ` Eli Zaretskii
2018-08-11 18:15                                                                             ` Andy Moreton [this message]
2018-08-11 19:08                                                                               ` Eli Zaretskii
2018-08-11 22:15                                                                                 ` Andy Moreton
2018-08-12 18:54                                                                                   ` Eli Zaretskii
2018-08-12 19:44                                                                                     ` Andy Moreton
2018-08-13 15:02                                                                                       ` Eli Zaretskii
2018-08-13 23:13                                                                                         ` Andy Moreton
2018-08-14 14:55                                                                                           ` Eli Zaretskii
2018-08-14 15:11                                                                                             ` Andy Moreton
2018-08-14 15:19                                                                                               ` Eli Zaretskii
2018-08-14 16:16                                                                                                 ` Andy Moreton
2018-08-15 17:01                                                                                                   ` Eli Zaretskii
2018-08-11 17:00                                                                     ` Andy Moreton
2018-08-10 15:25                                                             ` Stefan Monnier
2018-08-10 16:45                                                               ` Andy Moreton
2018-08-10 19:34                                                               ` Eli Zaretskii
2018-08-09  3:49                                               ` Stefan Monnier
2018-08-09  9:21                                                 ` Andy Moreton
2018-08-09  2:37                                             ` Eli Zaretskii
2018-08-03 20:13                         ` Tom Tromey
2018-08-04 16:39                         ` Tom Tromey
2018-08-04 17:24                           ` Tom Tromey
2018-08-05 10:46                           ` Andy Moreton
2018-08-05 18:59                             ` Tom Tromey
2018-08-06 18:17                               ` Andy Moreton
2018-07-15 15:00           ` Eli Zaretskii
2018-07-15 17:31             ` Paul Eggert
2018-07-15 18:27               ` Eli Zaretskii
2018-07-16 19:02                 ` Paul Eggert
2018-07-17  2:42                   ` Eli Zaretskii
2018-07-17 15:53                     ` Paul Eggert
2018-07-17 17:03                       ` Eli Zaretskii
2018-07-17 17:24                         ` Paul Eggert
2018-07-17 17:38                           ` Eli Zaretskii
2018-07-17 17:41                             ` Paul Eggert
2018-07-17 17:53                               ` Eli Zaretskii
2018-07-17 18:55                                 ` Paul Eggert
2018-07-17 19:04                                   ` Eli Zaretskii
2018-07-17 22:39                                     ` Paul Eggert
2018-07-18  2:41                                       ` Eli Zaretskii
2018-07-18  7:39                                         ` Paul Eggert
2018-07-18 11:14                                           ` Andy Moreton
2018-07-18 11:57                                             ` Paul Eggert
2018-07-18 13:09                                               ` Clément Pit-Claudel
2018-07-18 13:18                                                 ` Stefan Monnier
2018-07-18 13:43                                                   ` Clément Pit-Claudel
2018-07-18 14:06                                                     ` Andy Moreton
2018-07-18 19:25                                                       ` Achim Gratz
2018-07-18 20:41                                                         ` Stefan Monnier
2018-07-19  2:36                                                           ` Eli Zaretskii
2018-07-19 20:32                                                         ` Paul Eggert
2018-07-20 20:02                                                           ` Achim Gratz
2018-07-20 20:58                                                             ` Paul Eggert
2018-07-20 21:48                                                               ` Stefan Monnier
2018-07-22 19:49                                                               ` Achim Gratz
2018-07-18 18:29                                                 ` Paul Eggert
2018-07-18 11:10                                       ` Andy Moreton
2018-07-18 18:34                                         ` Paul Eggert
2018-07-25 21:02             ` Andy Moreton
2018-08-09 14:26 ` Charles A. Roelli
2018-08-09 15:17   ` Andy Moreton
2018-08-09 16:23     ` Charles A. Roelli
2018-08-09 16:25     ` Tom Tromey
2018-08-09 17:08       ` Andy Moreton
2018-08-09 19:29         ` Tom Tromey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86eff4ixcj.fsf@gmail.com \
    --to=andrewjmoreton@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).