[Buildroot] xtensa: qemu_xtensa_lx60 issue with gcc 8.1
Romain Naour
romain.naour at gmail.com
Mon Jun 11 19:42:10 UTC 2018
Hi Max,
Le 11/06/2018 à 02:53, Max Filippov a écrit :
> On Sun, Jun 10, 2018 at 1:46 PM, Max Filippov <jcmvbkbc at gmail.com> wrote:
>> On Sun, Jun 10, 2018 at 1:39 PM, Romain Naour <romain.naour at gmail.com> wrote:
>>> Hello Max,
>>>
>>> We recently added gcc 8.1 in Buildroot and checked if all qemu configs are able
>>> to boot correctly:
>>>
>>> https://gitlab.com/free-electrons/toolchains-builder/pipelines/23083553
>>>
>>> Unfortunately the qemu_xtensa_lx60 config doesn't boot using a toolchain with
>>> gcc 8.1, binutils 2.30, uclibc-ng 1.0.30 and a kernel 4.16.7.
>>>
>>> See: https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006443
>>>
>>> I'm able to reproduce the issue and fallback to gcc 7.3 allow to boot the system
>>> on Qemu. So it seems really related to the gcc version.
>>>
>>> Do you have any clue ?
>>
>> Not yet, but let me look at it. Thanks for the report.
>
> I've tracked it down to the following fragment in the _dl_get_ready_to_run
> in ld-uClibc.so
>
> 419f: f0c1b2 addi a11, a1, -16
> 41a2: 1ba9 s32i.n a10, a11, 4
> 41a4: 0bc9 s32i.n a12, a11, 0
> 41a6: 5127f2 l32i a15, a7, 0x144
> 41a9: 1765b2 s32i a11, a5, 92
> 41ac: 4e2782 l32i a8, a7, 0x138
> 41af: 146af2 s32i a15, a10, 80
> 41b2: 001b10 movsp a1, a11
>
> It looks clearly wrong to me: a region on stack allocated with alloca
> is used before the stack pointer is updated. Looks like an issue with
> xtensa gcc backend. Perhaps related to this one:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65416
> Let me try to fix it.
>
Ok, thanks for the help.
Best regards,
Romain
More information about the buildroot
mailing list