From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3284 invoked by alias); 2 Jan 2010 11:56:05 -0000 Received: (qmail 3272 invoked by uid 22791); 2 Jan 2010 11:56:03 -0000 X-SWARE-Spam-Status: No, hits=0.4 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from mail.antivirus.flexwebhosting.nl (HELO mail.antivirus.flexwebhosting.nl) (85.92.140.50) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 02 Jan 2010 11:55:58 +0000 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.antivirus.flexwebhosting.nl (Postfix) with ESMTP id 3B4061218BF5 for ; Sat, 2 Jan 2010 12:55:54 +0100 (CET) Received: from mail.antivirus.flexwebhosting.nl ([127.0.0.1]) by localhost (mail.antivirus.flexwebhosting.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id Sdl+mBr6dhsd for ; Sat, 2 Jan 2010 12:55:48 +0100 (CET) Received: from srv4086.flexwebhosting.nl (unknown [89.18.179.86]) by mail.antivirus.flexwebhosting.nl (Postfix) with ESMTP id B0C631218BCF for ; Sat, 2 Jan 2010 12:55:47 +0100 (CET) Received: from ip82-139-82-108.lijbrandt.net ([82.139.82.108] helo=[192.168.2.132]) by srv4086.flexwebhosting.nl with esmtpa (Exim 4.67) (envelope-from ) id 1NR2aA-0002z1-RA for gdb-patches@sourceware.org; Sat, 02 Jan 2010 12:55:47 +0100 Message-ID: <4B3F3442.60900@cyberfiber.org> Date: Sat, 02 Jan 2010 11:56:00 -0000 From: Michael User-Agent: Thunderbird 2.0.0.23 (X11/20090817) MIME-Version: 1.0 To: gdb-patches@sourceware.org Subject: Re: gdb-patch mailing list References: <4B3E4DC6.7020901@cyberfiber.org> <20100102043704.GR548@adacore.com> <4B3F03C4.1040104@cyberfiber.org> <4B3F083C.2080300@cyberfiber.org> <20100102093213.GX2788@adacore.com> <20100102093302.GA12123@adacore.com> <4B3F252A.30504@cyberfiber.org> <20100102111708.GV548@adacore.com> In-Reply-To: <20100102111708.GV548@adacore.com> Content-Type: multipart/mixed; boundary="------------000300000003040506000807" X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2010-01/txt/msg00026.txt.bz2 This is a multi-part message in MIME format. --------------000300000003040506000807 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-length: 788 Joel Brobecker wrote: > Michael, > > >> -2009-12-30 Stan Shebs >> - >> - * tracepoint.c (trace_status_command): Add some status output. >> - >> >> on the status word output, maybe he knows how to fix my diff?! >> > > Is there anyone around you that has a bit of experience dealing with > version-control systems, diff, patch, etc? I can help you, but doing so > by email is taking a very large amount of time for both of us. I think > that a verbal communication might help speed things along. Otherwise, > first things first, get a fresh checkout of the GDB sources, do not > touch the sources, just build GDB, and then get back to me. > > I suppose that indeed something went wrong, don't know what exactly, here's the new patch :) Michael. --------------000300000003040506000807 Content-Type: text/x-patch; name="gdb.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="gdb.diff" Content-length: 6383 diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 188347f..bc3337b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2010-01-02 Michael Baars + + * i387-tdep.c: Maintenance update on 'info float' + 2010-01-01 Jan Kratochvil * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as diff --git a/gdb/i387-tdep.c b/gdb/i387-tdep.c index 3fb5b56..e5766d7 100644 --- a/gdb/i387-tdep.c +++ b/gdb/i387-tdep.c @@ -113,86 +113,106 @@ print_i387_ext (struct gdbarch *gdbarch, fputs_filtered (" Unsupported", file); } -/* Print the status word STATUS. */ - +/* Print the status word. */ static void print_i387_status_word (unsigned int status, struct ui_file *file) { - fprintf_filtered (file, "Status Word: %s", - hex_string_custom (status, 4)); - fputs_filtered (" ", file); - fprintf_filtered (file, " %s", (status & 0x0001) ? "IE" : " "); - fprintf_filtered (file, " %s", (status & 0x0002) ? "DE" : " "); - fprintf_filtered (file, " %s", (status & 0x0004) ? "ZE" : " "); - fprintf_filtered (file, " %s", (status & 0x0008) ? "OE" : " "); - fprintf_filtered (file, " %s", (status & 0x0010) ? "UE" : " "); - fprintf_filtered (file, " %s", (status & 0x0020) ? "PE" : " "); - fputs_filtered (" ", file); - fprintf_filtered (file, " %s", (status & 0x0080) ? "ES" : " "); - fputs_filtered (" ", file); - fprintf_filtered (file, " %s", (status & 0x0040) ? "SF" : " "); - fputs_filtered (" ", file); - fprintf_filtered (file, " %s", (status & 0x0100) ? "C0" : " "); - fprintf_filtered (file, " %s", (status & 0x0200) ? "C1" : " "); - fprintf_filtered (file, " %s", (status & 0x0400) ? "C2" : " "); - fprintf_filtered (file, " %s", (status & 0x4000) ? "C3" : " "); - - fputs_filtered ("\n", file); - - fprintf_filtered (file, - " TOP: %d\n", ((status >> 11) & 7)); + fprintf_filtered (file, "status word : %s\n", + hex_string_custom(status, 4)); + + fprintf_filtered (file, " exception flags : "); + + /* Precision */ + fprintf_filtered (file, "%s ", (status & 0x0020) ? "PE" : " "); + /* Underflow */ + fprintf_filtered (file, "%s ", (status & 0x0010) ? "UE" : " "); + /* Overflow */ + fprintf_filtered (file, "%s ", (status & 0x0008) ? "OE" : " "); + /* Zero Devide */ + fprintf_filtered (file, "%s ", (status & 0x0004) ? "ZE" : " "); + /* Denormalized operand */ + fprintf_filtered (file, "%s ", (status & 0x0002) ? "DE" : " "); + /* Invalid operation */ + fprintf_filtered (file, "%s ", (status & 0x0001) ? "IE" : " "); + + fprintf_filtered (file, "\n"); + + fprintf_filtered (file, " stack fault : %s\n", + (status & 0x0040) ? "SF" : " "); + fprintf_filtered (file, " error summary status : %s\n", + (status & 0x0080) ? "ES" : " "); + + fprintf_filtered (file, " condition code : "); + + fprintf_filtered (file, "%s ", (status & 0x4000) ? "C3" : " "); + fprintf_filtered (file, "%s ", (status & 0x0400) ? "C2" : " "); + fprintf_filtered (file, "%s ", (status & 0x0200) ? "C1" : " "); + fprintf_filtered (file, "%s ", (status & 0x0100) ? "C0" : " "); + fprintf_filtered (file, "\n"); + + fprintf_filtered (file, " top of stack (TOP) : %d\n", + ((status >> 11) & 7)); } -/* Print the control word CONTROL. */ - +/* Print the control word. */ static void print_i387_control_word (unsigned int control, struct ui_file *file) { - fprintf_filtered (file, "Control Word: %s", - hex_string_custom (control, 4)); - fputs_filtered (" ", file); - fprintf_filtered (file, " %s", (control & 0x0001) ? "IM" : " "); - fprintf_filtered (file, " %s", (control & 0x0002) ? "DM" : " "); - fprintf_filtered (file, " %s", (control & 0x0004) ? "ZM" : " "); - fprintf_filtered (file, " %s", (control & 0x0008) ? "OM" : " "); - fprintf_filtered (file, " %s", (control & 0x0010) ? "UM" : " "); - fprintf_filtered (file, " %s", (control & 0x0020) ? "PM" : " "); + fprintf_filtered(file, "control word : %s\n", + hex_string_custom(control, 4)); - fputs_filtered ("\n", file); + fprintf_filtered(file, " exception masks : "); + + /* Precision */ + fprintf_filtered (file, "%s ", (control & 0x0020) ? "PM" : " "); + /* Underflow */ + fprintf_filtered (file, "%s ", (control & 0x0010) ? "UM" : " "); + /* Overflow */ + fprintf_filtered (file, "%s ", (control & 0x0008) ? "OM" : " "); + /* Zero devide */ + fprintf_filtered (file, "%s ", (control & 0x0004) ? "ZM" : " "); + /* Denormalized operand */ + fprintf_filtered (file, "%s ", (control & 0x0002) ? "DM" : " "); + /* Invalid operation */ + fprintf_filtered (file, "%s ", (control & 0x0001) ? "IM" : " "); + + fprintf_filtered (file, "\n"); + + fprintf_filtered (file, " precision control (PC) : "); - fputs_filtered (" PC: ", file); switch ((control >> 8) & 3) - { + { case 0: - fputs_filtered ("Single Precision (24-bits)\n", file); + fprintf_filtered (file, "24-bits (single precision)\n"); break; case 1: - fputs_filtered ("Reserved\n", file); + fprintf_filtered (file, "(reserved)\n"); break; case 2: - fputs_filtered ("Double Precision (53-bits)\n", file); + fprintf_filtered (file, "53-bits (double precision)\n"); break; case 3: - fputs_filtered ("Extended Precision (64-bits)\n", file); + fprintf_filtered (file, "64-bits (extended precision)\n"); break; - } - - fputs_filtered (" RC: ", file); + } + + fprintf_filtered (file, " rounding control (RC) : "); + switch ((control >> 10) & 3) - { + { case 0: - fputs_filtered ("Round to nearest\n", file); + fprintf_filtered (file, "round to nearest or even\n"); break; case 1: - fputs_filtered ("Round down\n", file); + fprintf_filtered (file, "round down (towards -inf)\n"); break; case 2: - fputs_filtered ("Round up\n", file); + fprintf_filtered (file, "round up (toward +inf)\n"); break; case 3: - fputs_filtered ("Round toward zero\n", file); + fprintf_filtered (file, "chop (truncate toward zero)\n"); break; - } + } } /* Print out the i387 floating point state. Note that we ignore FRAME --------------000300000003040506000807--