Re: armhf: illegal hardware instruction

Tom Hughes via Valgrind-users <[email protected]>
Newsgroups gmane.comp.debugging.valgrind
Message-ID <[email protected]>
On 29/06/2022 15:49, Mathieu Malaterre wrote:

> Here is what I get on first try:
> 
> Program received signal SIGILL, Illegal instruction.
> vgPlain_am_startup (sp_at_startup=3204445696) at
> m_aspacemgr/aspacemgr-linux.c:1626
> 1626       init_nsegment(&seg);
> (gdb) x/i $pc
> => 0x58071090 <vgPlain_am_startup+20>:  vmov.i32        d16, #0 ; 0x00000000
> (gdb) x/12i   $pc-6*4
>     0x58071078 <vgPlain_am_is_valid_for_aspacem_minAddr+236>:    eoreq
>   r6, lr, r4, lsr #6
>     0x5807107c <vgPlain_am_startup>:     push    {r4, r5, r6, r7, r8,
> r9, r10, r11, lr}
>     0x58071080 <vgPlain_am_startup+4>:   sub     sp, sp, #68     ; 0x44
>     0x58071084 <vgPlain_am_startup+8>:   add     r8, sp, #8
>     0x58071088 <vgPlain_am_startup+12>:  mov     r4, r0
>     0x5807108c <vgPlain_am_startup+16>:  bl      0x5807611c
> <vgModuleLocal_am_segnames_init>
> => 0x58071090 <vgPlain_am_startup+20>:  vmov.i32        d16, #0 ; 0x00000000
>     0x58071094 <vgPlain_am_startup+24>:  mov     lr, r8
>     0x58071098 <vgPlain_am_startup+28>:  mov     r3, #0
>     0x5807109c <vgPlain_am_startup+32>:  mov     r10, #1
>     0x580710a0 <vgPlain_am_startup+36>:  str     r3, [sp, #56]   ; 0x38
>     0x580710a4 <vgPlain_am_startup+40>:  mvn     r2, #0
> (gdb) x/12xw $pc-6*4
> 0x58071078 <vgPlain_am_is_valid_for_aspacem_minAddr+236>:
> 0x002e6324      0xe92d4ff0      0xe24dd044      0xe28d8008
> 0x58071088 <vgPlain_am_startup+12>:     0xe1a04000      0xeb001422
>   0xf2c00010      0xe1a0e008
> 0x58071098 <vgPlain_am_startup+28>:     0xe3a03000      0xe3a0a001
>   0xe58d3038      0xe3e02000
> (gdb) info reg
> r0             0x4                 4
> r1             0x0                 0
> r2             0x5850a0e8          1481679080
> r3             0x5850a0f8          1481679096
> r4             0xbefff600          3204445696
> r5             0x58606388          1482711944
> r6             0xbefff600          3204445696
> r7             0x58260000          1478885376
> r8             0x58708258          1483768408
> r9             0x58708354          1483768660
> r10            0x0                 0
> r11            0x587083ac          1483768748
> r12            0x5870a3b4          1483776948
> sp             0x58708250          0x58708250 <vgPlain_interim_stack+1056416>
> lr             0x58071090          1476858000
> pc             0x58071090          0x58071090 <vgPlain_am_startup+20>
> cpsr           0x80000010          -2147483632
> fpscr          0x0                 0
> (gdb) x/16xw $sp
> 0x58708250 <vgPlain_interim_stack+1056416>:     0x00000000
> 0x00000000      0x00000000      0x00000000
> 0x58708260 <vgPlain_interim_stack+1056432>:     0x00000000
> 0x00000000      0x00000000      0x00000000
> 0x58708270 <vgPlain_interim_stack+1056448>:     0x00000000
> 0x00000000      0x00000000      0x0013296c
> 0x58708280 <vgPlain_interim_stack+1056464>:     0xbefff604
> 0xbefff600      0x58260000      0x581fea9c
> 
> As a reminder I do not have neon on this machine:
> 
> Features        : half thumb fastmult vfp edsp thumbee vfpv3 tls idiva
> idivt vfpd32 lpae

Right but you are apparently using a valgrind that was compiled
to target a machine that does have neon, hence your problem.

If you compiled it yourself then you need to change your compiler
options to correctly target the architecture you are running on
and if you got precompiled binaries from somewhere then I'm afraid
they're not compatible with your machine.

Tom

-- 
Tom Hughes ([email protected])
http://compton.nu/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.