From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6821 invoked by alias); 17 May 2003 22:26:15 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 6688 invoked from network); 17 May 2003 22:26:13 -0000 Received: from unknown (HELO walton.kettenis.dyndns.org) (62.163.169.212) by sources.redhat.com with SMTP; 17 May 2003 22:26:13 -0000 Received: from elgar.kettenis.dyndns.org (elgar.kettenis.dyndns.org [192.168.0.2]) by walton.kettenis.dyndns.org (8.12.6p2/8.12.5) with ESMTP id h4HMQCbv000459; Sun, 18 May 2003 00:26:12 +0200 (CEST) (envelope-from kettenis@elgar.kettenis.dyndns.org) Received: from elgar.kettenis.dyndns.org (localhost [127.0.0.1]) by elgar.kettenis.dyndns.org (8.12.6p2/8.12.6) with ESMTP id h4HMQC11010693; Sun, 18 May 2003 00:26:12 +0200 (CEST) (envelope-from kettenis@elgar.kettenis.dyndns.org) Received: (from kettenis@localhost) by elgar.kettenis.dyndns.org (8.12.6p2/8.12.6/Submit) id h4HMQ8nJ010688; Sun, 18 May 2003 00:26:08 +0200 (CEST) Date: Sat, 17 May 2003 22:26:00 -0000 Message-Id: <200305172226.h4HMQ8nJ010688@elgar.kettenis.dyndns.org> From: Mark Kettenis To: aj@suse.de CC: gdb-patches@sources.redhat.com, mludvig@suse.cz In-reply-to: (message from Andreas Jaeger on Sat, 17 May 2003 20:33:56 +0200) Subject: Re: [PATCH/i386newframe] amd64newframe References: X-SW-Source: 2003-05/txt/msg00316.txt.bz2 From: Andreas Jaeger Date: Sat, 17 May 2003 20:33:56 +0200 Andreas, thanks for testing this. building the kettenis-newframe-branch on x86-64 I get: make[1]: *** No rule to make target `inux-proc.o', needed by `libgdb.a'. Stop. make[1]: Leaving directory `/usr/src/aj/gdb-test/build/gdb' make: *** [all-gdb] Error 2 Note the following: ./config/i386/x86-64linux.mh: proc-service.o thread-db.o lin-lwp.o inux-proc.o gcore.o Oops! Thanks, fixed now. After fixing this problem, gdb build fine but running it I got: byrd:/usr/src/aj/gdb-test/build/gdb:[0]$ ./gdb ~/tmp/a.out A handler for the OS ABI "GNU/Linux" is not built into this configuration of GDB. Attempting to continue with the default i386 settings Ah, GDB is trying to build a default architecture vector, for which it happens to choose Linux/i386. This can be solved by linking in i386-linux-tdep.o. I'll fix this too. GNU gdb 2003-05-04-cvs Copyright 2003 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu"... Setting up the environment for debugging gdb. .gdbinit:5: Error in sourced command file: Function "internal_error" not defined. (gdb) b main Breakpoint 1 at 0x40040c: file b.c, line 4. (gdb) r Starting program: /suse/aj/tmp/a.out Breakpoint 1, main () at b.c:4 4 lg1[1] = 1; (gdb) n warning: Unmapped DWARF Register #16 encountered warning: Unmapped DWARF Register #16 encountered 5 lg2[1] = 1; (gdb) warning: Unmapped DWARF Register #16 encountered 6 return 0; (gdb) warning: Unmapped DWARF Register #16 encountered 7 } Ah, that must be the new DWARF CFI frame unwinder. The return address RA isn't mapped. I could change the DWARF register mapping in x86-64-tdep.c, but this really is a problem with the DWARF CFI frame unwinder since the compiler is free to choose any number it wants for the return address column. Should be fixed now. And this also: $ ./gdb /bin/ls A handler for the OS ABI "GNU/Linux" is not built into this configuration of GDB. Attempting to continue with the default i386 settingsGNU gdb 2003-05-04-cvs Copyright 2003 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu"... (no debugging symbols found)... Setting up the environment for debugging gdb. .gdbinit:5: Error in sourced command file: Function "internal_error" not defined. (gdb) b main Function "main" not defined. (gdb) r Starting program: /bin/ls (no debugging symbols found)...[New Thread 16384 (LWP 4561)] ../../src/gdb/arch-utils.c:443: internal-error: generic_register_size: Assertion `regnum >= 0 && regnum < NUM_REGS + NUM_PSEUDO_REGS' failed. A problem internal to GDB has been detected. Further debugging may prove unreliable. Hmm. Something is defenitely wrong here. Hard to tell without a backtrace though what's really wrong. I don't have time to go into details here but hope that Michal can. Hope he can. Thanks again, Mark