mipxtx39 sim build failure

Joel Sherrill joel.sherrill@oarcorp.com
Fri Nov 11 15:48:00 GMT 2016



On 11/11/2016 12:37 AM, Mike Frysinger wrote:
> On 10 Nov 2016 15:53, Joel Sherrill wrote:
>> I was updating the baseline RTEMS gdb configuration to
>> 7.12 from 7.11 and noticed that our mipstx39 build
>> (just used for the tx39 simulator) was still at 7.9. I bumped
>> it to 7.12 and got the following build errors:
>>
>> /usr/bin/gcc -O2 -pipe -I/data/home/joel/rtems-4.11-work/rtems-source-builder/rtems/build/tmp/sb-joel/4.12/rtems-mips/home/joel/rtems-4.11-work/tools/4.12/include -DHAVE_CONFIG_H  -DWITH_ALIGNMENT=NONSTRICT_ALIGNMENT -DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=31 -DWITH_DEFAULT_TARGET_BYTE_ORDER=BFD_ENDIAN_BIG -DWITH_FLOATING_POINT=HARD_FLOATING_POINT -DWITH_TARGET_FLOATING_POINT_BITSIZE=32 -DWITH_HW=1 -DDEFAULT_INLINE=0 -DWITH_RESERVED_BITS=1  -Wall -Wdeclaration-after-statement -Wpointer-arith -Wpointer-sign -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wmissing-prototypes -Wdeclaration-after-statement -Wempty-body -Wmissing-parameter-type -Wold-style-declaration -Wold-style-definition -Wformat-nonliteral   -DSUBTARGET_R3900=1 -DMIPS_MACH_DEFAULT=bfd_mach_mips8000   -I. -I../../../gdb-7.12/sim/mips -I../common -I../../../gdb-7.12/sim/mips/../common -I../../include -I../../../gdb-7.12/sim/mips/../..//include -I../../bfd -I../../../gdb-7.12/sim/mips/../..//bfd -I../../opcodes -I../../../gdb-7.12/sim/mips/../..//opcodes  -g -O2 -c -o dv-tx3904cpu.o -MT dv-tx3904cpu.o -MMD -MP -MF .deps/dv-tx3904cpu.Tpo ../../../gdb-7.12/sim/mips/dv-tx3904cpu.c
>> In file included from ../../../gdb-7.12/sim/mips/dv-tx3904cpu.c:22:0:
>> ../../../gdb-7.12/sim/mips/dv-tx3904cpu.c: In function ‘deliver_tx3904cpu_interrupt’:
>> ../../../gdb-7.12/sim/mips/sim-main.h:679:64: error: ‘SD’ undeclared (first use in this function)
>>   #define SignalExceptionNMIReset()            signal_exception (SD, CPU, cia, NMIReset)
>
> the mips sim port is garbage in many ways.  you've found another one.
> it's full of unstated variable names like assuming "SD" is the variable
> name everywhere, as is "CPU".  it largely comes from the igen source.
>
> looks like i broke this while trying to clean up the global state refs
> in the mips sim.  the current_state was a global pointer to the sd that
> is passed around that i punted.

The history of these various simulators makes it hard to move
forward without breaking things.

Feel free to ping me to build all the rtems configurations when
you make changes. We should be doing this with a buildbot but
we haven't had anyone volunteer yet so we struggle along hoping
for time to address it.

But the manual build sweep process is simple. I just need to
be poked to do it, otherwise we can end up a couple of releases
down the road and doing forensics. :(

> at any rate, should be fixed now in master & the gdb-7.12 branch.

Thanks. That turned it into a link error on the master:

/home/joel/rtems-4.11-work/rtems-source-builder/rtems/sources/b-mips/sim/mips/../../../gdb-7.12/sim/mips/mips.igen:1254: undefined reference to `check_u64'
libsim.a(support.o): In function `do_cvt_ps_s':
/home/joel/rtems-4.11-work/rtems-source-builder/rtems/sources/b-mips/sim/mips/../../../gdb-7.12/sim/mips/mips.igen:1330: undefined reference to `check_u64'
libsim.a(support.o): In function `do_cvt_s_pl':
/home/joel/rtems-4.11-work/rtems-source-builder/rtems/sources/b-mips/sim/mips/../../../gdb-7.12/sim/mips/mips.igen:1347: undefined reference to `check_u64'
libsim.a(support.o): In function `do_cvt_s_pu':
/home/joel/rtems-4.11-work/rtems-source-builder/rtems/sources/b-mips/sim/mips/../../../gdb-7.12/sim/mips/mips.igen:1354: undefined reference to `check_u64'
libsim.a(support.o): In function `do_madd_fmt':
/home/joel/rtems-4.11-work/rtems-source-builder/rtems/sources/b-mips/sim/mips/../../../gdb-7.12/sim/mips/mips.igen:1456: undefined reference to `check_u64'
libsim.a(support.o):/home/joel/rtems-4.11-work/rtems-source-builder/rtems/sources/b-mips/sim/mips/../../../gdb-7.12/sim/mips/mips.igen:1525: more undefined references to `check_u64' follow


> -mike
>

--joel


More information about the Gdb mailing list