[Bug c++/71918] Internal compiler error: Illegal instruction
jordyruiz at hotmail dot fr
gcc-bugzilla@gcc.gnu.org
Mon Jul 18 15:50:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71918
--- Comment #6 from jordyruiz at hotmail dot fr ---
> Also this is most likely GMP not compiled for generic but a specific CPU and
> you don't have a compatible CPU.
>
> Did you compile GMP yourself or did you get it from a distro? If you got it
> from a distro, you should report the bug to that distro.
I compiled GMP myself, on a different machine. So you probably found the cause
of the issue.
(In reply to Markus Trippelsdorf from comment #5)
>
> Yes.
>
> set follow-fork-mode child
> run
> disass
> (and please also post the backtrace)
> bt
(gdb) disass
Dump of assembler code for function __gmpn_mul_1:
0x00007ffff750b460 <+0>: push %rbx
0x00007ffff750b461 <+1>: push %rbp
0x00007ffff750b462 <+2>: push %r12
0x00007ffff750b464 <+4>: mov %rdx,%rbp
0x00007ffff750b467 <+7>: shr $0x2,%rbp
0x00007ffff750b46b <+11>: test $0x1,%dl
0x00007ffff750b46e <+14>: jne 0x7ffff750b4b6 <__gmpn_mul_1+86>
0x00007ffff750b470 <+16>: test $0x2,%dl
0x00007ffff750b473 <+19>: mov %rcx,%rdx
0x00007ffff750b476 <+22>: jne 0x7ffff750b492 <__gmpn_mul_1+50>
0x00007ffff750b478 <+24>: mulx (%rsi),%r9,%r8
0x00007ffff750b47d <+29>: mulx 0x8(%rsi),%r11,%r10
0x00007ffff750b483 <+35>: mulx 0x10(%rsi),%rcx,%r12
0x00007ffff750b489 <+41>: lea -0x20(%rdi),%rdi
0x00007ffff750b48d <+45>: jmpq 0x7ffff750b530 <__gmpn_mul_1+208>
0x00007ffff750b492 <+50>: mulx (%rsi),%rcx,%r12
0x00007ffff750b497 <+55>: mulx 0x8(%rsi),%rbx,%rax
0x00007ffff750b49d <+61>: lea -0x10(%rdi),%rdi
0x00007ffff750b4a1 <+65>: test %rbp,%rbp
0x00007ffff750b4a4 <+68>: je 0x7ffff750b550 <__gmpn_mul_1+240>
0x00007ffff750b4aa <+74>: mulx 0x10(%rsi),%r9,%r8
0x00007ffff750b4b0 <+80>: lea 0x10(%rsi),%rsi
0x00007ffff750b4b4 <+84>: jmp 0x7ffff750b516 <__gmpn_mul_1+182>
0x00007ffff750b4b6 <+86>: test $0x2,%dl
0x00007ffff750b4b9 <+89>: mov %rcx,%rdx
0x00007ffff750b4bc <+92>: jne 0x7ffff750b4dc <__gmpn_mul_1+124>
=> 0x00007ffff750b4be <+94>: mulx (%rsi),%rbx,%rax
0x00007ffff750b4c3 <+99>: lea -0x18(%rdi),%rdi
0x00007ffff750b4c7 <+103>: test %rbp,%rbp
0x00007ffff750b4ca <+106>: je 0x7ffff750b557 <__gmpn_mul_1+247>
0x00007ffff750b4d0 <+112>: mulx 0x8(%rsi),%r9,%r8
0x00007ffff750b4d6 <+118>: lea 0x8(%rsi),%rsi
0x00007ffff750b4da <+122>: jmp 0x7ffff750b51d <__gmpn_mul_1+189>
0x00007ffff750b4dc <+124>: mulx (%rsi),%r11,%r10
0x00007ffff750b4e1 <+129>: mulx 0x8(%rsi),%rcx,%r12
0x00007ffff750b4e7 <+135>: mulx 0x10(%rsi),%rbx,%rax
0x00007ffff750b4ed <+141>: lea -0x8(%rdi),%rdi
0x00007ffff750b4f1 <+145>: test %rbp,%rbp
0x00007ffff750b4f4 <+148>: je 0x7ffff750b549 <__gmpn_mul_1+233>
0x00007ffff750b4f6 <+150>: lea 0x18(%rsi),%rsi
0x00007ffff750b4fa <+154>: jmp 0x7ffff750b50a <__gmpn_mul_1+170>
0x00007ffff750b4fc <+156>: nopl 0x0(%rax)
0x00007ffff750b500 <+160>: lea 0x20(%rdi),%rdi
0x00007ffff750b504 <+164>: mov %r9,(%rdi)
0x00007ffff750b507 <+167>: adc %r8,%r11
0x00007ffff750b50a <+170>: mulx (%rsi),%r9,%r8
0x00007ffff750b50f <+175>: mov %r11,0x8(%rdi)
0x00007ffff750b513 <+179>: adc %r10,%rcx
0x00007ffff750b516 <+182>: mov %rcx,0x10(%rdi)
0x00007ffff750b51a <+186>: adc %r12,%rbx
0x00007ffff750b51d <+189>: mulx 0x8(%rsi),%r11,%r10
0x00007ffff750b523 <+195>: adc %rax,%r9
0x00007ffff750b526 <+198>: mulx 0x10(%rsi),%rcx,%r12
0x00007ffff750b52c <+204>: mov %rbx,0x18(%rdi)
0x00007ffff750b530 <+208>: mulx 0x18(%rsi),%rbx,%rax
0x00007ffff750b536 <+214>: lea 0x20(%rsi),%rsi
0x00007ffff750b53a <+218>: dec %rbp
0x00007ffff750b53d <+221>: jne 0x7ffff750b500 <__gmpn_mul_1+160>
0x00007ffff750b53f <+223>: lea 0x20(%rdi),%rdi
0x00007ffff750b543 <+227>: mov %r9,(%rdi)
0x00007ffff750b546 <+230>: adc %r8,%r11
0x00007ffff750b549 <+233>: mov %r11,0x8(%rdi)
0x00007ffff750b54d <+237>: adc %r10,%rcx
0x00007ffff750b550 <+240>: mov %rcx,0x10(%rdi)
0x00007ffff750b554 <+244>: adc %r12,%rbx
0x00007ffff750b557 <+247>: mov %rbx,0x18(%rdi)
0x00007ffff750b55b <+251>: adc $0x0,%rax
0x00007ffff750b55f <+255>: pop %r12
0x00007ffff750b561 <+257>: pop %rbp
0x00007ffff750b562 <+258>: pop %rbx
---Type <return> to continue, or q <return> to quit---
(gdb) bt
#0 0x00007ffff750b4be in __gmpn_mul_1 () from
/home/jruiz/.local/lib/libgmp.so.10
#1 0x00007fffffffd240 in ?? ()
#2 0x000000000000000a in ?? ()
#3 0x0000000000000061 in ?? ()
#4 0x00007ffff751687d in __gmpn_bc_set_str () from
/home/jruiz/.local/lib/libgmp.so.10
#5 0x00007ffff7516ce7 in __gmpn_set_str () from
/home/jruiz/.local/lib/libgmp.so.10
#6 0x00007ffff7798923 in parsed_string_to_mpfr () from /lib64/libmpfr.so.4
#7 0x00007ffff7799d9c in mpfr_strtofr () from /lib64/libmpfr.so.4
#8 0x000000000104a004 in real_from_string(real_value*, char const*) ()
#9 0x00000000013bc990 in real_from_string3(real_value*, char const*,
format_helper) ()
#10 0x00000000013764d3 in ?? ()
#11 0x0000000000e5766e in c_lex_with_flags(tree_node**, unsigned int*, unsigned
char*, int) ()
#12 0x000000000134a113 in c_parse_file() ()
#13 0x0000000001377243 in c_common_parse_file() ()
#14 0x00000000013c41c8 in ?? ()
#15 0x0000000000d6059a in toplev::main(int, char**) ()
#16 0x0000000000d61d97 in main ()
More information about the Gcc-bugs
mailing list