This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] [sim] --disable-sim on ppc* by default (for AIX) [Re: getaddrinfo available on all GDB hosts?]


On 02/13/2014 11:04 AM, Jan Kratochvil wrote:
> On Thu, 13 Feb 2014 11:51:18 +0100, Pedro Alves wrote:
>> On 02/13/2014 10:43 AM, Jan Kratochvil wrote:
>>
>>> bzip2 -dc gdb-7.7.tar.bz2|tar xf -;cd gdb-7.7;./configure;make
>>> 	gcc -g -O2 -I. -I. -I./../../include -I../../bfd -I./../../bfd -I../../gdb -I./../../gdb  -I./../../gdb/config  -I. -I../common -I./../common -o gentmap
>>> gcc: fatal error: no input files
>>> compilation terminated.
>>> make: 1254-004 The error code from the last command is 1.
>>>
>>> (BTW it builds OK on RHEL-5 ppc64.)
>>>
>>> But I have figured out now it builds with --disable-sim .  Maybe to disable
>>> ppc* sim by default?
>>
>> I don't see how that makes sense.  This sounds like a host
>> issue rather than a target issue?
> 
> The mail was about two unrelated problems:
> 
> (1) GDB by default fails to build on some archs of AIX.
>     This could be fixed.  Currently I do not know how but there is some way.
> 
> (2) The ppc sim target is useless.  Therefore it wastes time of people trying
>     to use it.
> 
> By fixing (2) one also fixes (1) as a side effect.  

Only if you assume native build.

Does the sim build on AIX for other targets?  E.g., --target=arm-eabi.

Let's not conflate the issues please.

> (2) The ppc sim target is useless.  Therefore it wastes time of people trying
>     to use it.
...
> But I have figured out now it builds with --disable-sim .  Maybe to disable
> ppc* sim by default?  I have disabled it in Fedora/RHEL in Feb 2008 as already
> that time it could not run any binary.

This is all arguable.   You can't really expect that most of
our sims are able to run full GNU/Linux binaries.
I just tried the ppc one on gcc110 (gdb built w/ -m32) and I
found that it works OK for basic bare-metal debugging, about the
same as most other sims -- as documented in its README, it only
supports static executables.  Often I'll just run a .o
file with a sim.  E.g., on gcc110/ppc64, gdb built w/ -m32:

>./gdb ./gdb.o
Reading symbols from ./gdb.o...done.
(gdb) tar sim
Connected to the simulator.
(gdb) load
(gdb) b main
Breakpoint 1 at 0x1c: file ../../src/gdb/gdb.c, line 29.
(gdb) r
Starting program: /home/palves/gdb/binutils-gdb/build/gdb/gdb.o

Breakpoint 1, main (argc=1, argv=0xfdea0) at ../../src/gdb/gdb.c:29
29        memset (&args, 0, sizeof args);
(gdb) disassemble
Dump of assembler code for function main:
   0x00000000 <+0>:     ori     r15,r27,28275
   0x00000004 <+4>:     xoris   r12,r27,25856
   0x00000008 <+8>:     stw     r0,52(r1)
   0x0000000c <+12>:    stw     r31,44(r1)
   0x00000010 <+16>:    mr      r31,r1
   0x00000014 <+20>:    stw     r3,24(r31)
   0x00000018 <+24>:    stw     r4,28(r31)
=> 0x0000001c <+28>:    addi    r9,r31,8
   0x00000020 <+32>:    mr      r3,r9
   0x00000024 <+36>:    li      r4,0
   0x00000028 <+40>:    li      r5,12
   0x0000002c <+44>:    bl      0x2c <main+44>
   0x00000030 <+48>:    lwz     r9,24(r31)
   0x00000034 <+52>:    stw     r9,8(r31)
   0x00000038 <+56>:    lwz     r9,28(r31)
   0x0000003c <+60>:    stw     r9,12(r31)
   0x00000040 <+64>:    lis     r9,0
   0x00000044 <+68>:    addi    r9,r9,0
   0x00000048 <+72>:    stw     r9,16(r31)
   0x0000004c <+76>:    addi    r9,r31,8
   0x00000050 <+80>:    mr      r3,r9
   0x00000054 <+84>:    bl      0x54 <main+84>
   0x00000058 <+88>:    mr      r9,r3
   0x0000005c <+92>:    mr      r3,r9
   0x00000060 <+96>:    addi    r11,r31,48
   0x00000064 <+100>:   lwz     r0,4(r11)
   0x00000068 <+104>:   mtlr    r0
   0x0000006c <+108>:   lwz     r31,-4(r11)
   0x00000070 <+112>:   mr      r1,r11
   0x00000074 <+116>:   blr
End of assembler dump.
(gdb)


I'm not seeing what is special about the ppc sim/target in
this whole scenario in question.

-- 
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]