Re: patch for testing purposes

Michael
2009-12-31T22:09:19Z

[-- Attachment #1: Type: text/plain, Size: 678 bytes --]

hi joel,

i accidentally reversed the source and destination source files, here it
is again.

michael

Joel Brobecker wrote:
>> here's a patch generated with the diff -up you suggested... hope it
>> makes things more clear.
>>
>
> It looks like the patch you just sent (again, please send them in
> text format in the future) is against your own changes. Or maybe
> it's again another source tree, I'm not sure. But it does not seem
> to apply to the FSF tree at first glance.
>
> Can you send a patch against the HEAD sources? You can use either our
> CVS tree, or our git mirror to get those sources.
>
> http://www.sourceware.org/gdb/current/
>
> Thank you,
>

[-- Attachment #2: i387-tdep.c.diff --]
[-- Type: text/x-patch, Size: 6266 bytes --]

115,118c115,117
< /* Print the status word STATUS. */
<
< static void
< print_i387_status_word (unsigned int status, struct ui_file *file)
---
> // print the status word
> // updated 20091231 (development@codenamezero.org)
> static void print_i387_status_word (unsigned int status, struct ui_file *file)
120,137c119
< 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" : " ");
---
> fprintf_filtered (file, "status word : %s", hex_string_custom(status, 4));
139c121
< fputs_filtered ("\n", file);
---
> fprintf_filtered (file, " ");
141,143c123,134
< fprintf_filtered (file,
< " TOP: %d\n", ((status >> 11) & 7));
< }
---
> 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" : " ");
>
> fprintf_filtered (file, " ");
>
> fprintf_filtered (file, " %s", (status & 0x0080) ? "ES" : " ");
>
> fprintf_filtered (file, " ");
145c136
< /* Print the control word CONTROL. */
---
> fprintf_filtered (file, " %s", (status & 0x0040) ? "SF" : " ");
147,148c138,152
< static void
< print_i387_control_word (unsigned int control, struct ui_file *file)
---
> fprintf_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" : " ");
>
> fprintf_filtered (file, "\n");
>
> fprintf_filtered (file, " top of stack (TOP) : %d\n", ((status >> 11) & 7));
> }
>
> // print the control word
> // updated 20091231 (development@codenamezero.org)
> static void print_i387_control_word (unsigned int control, struct ui_file *file)
150,158c154
< 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));
160c156
< fputs_filtered ("\n", file);
---
> fprintf_filtered(file, " exception masks : ");
162,163c158,169
< fputs_filtered (" PC: ", file);
< switch ((control >> 8) & 3)
---
> fprintf_filtered (file, "%s ", (control & 0x0020) ? "PM" : " "); // invalid operation
> fprintf_filtered (file, "%s ", (control & 0x0010) ? "UM" : " "); // denormalized operand
> fprintf_filtered (file, "%s ", (control & 0x0008) ? "OM" : " "); // zero divide
> fprintf_filtered (file, "%s ", (control & 0x0004) ? "ZM" : " "); // overflow
> fprintf_filtered (file, "%s ", (control & 0x0002) ? "DM" : " "); // underflow
> fprintf_filtered (file, "%s ", (control & 0x0001) ? "IM" : " "); // precision
>
> fprintf_filtered (file, "\n");
>
> fprintf_filtered (file, " precision control (PC) : ");
>
> switch ((control >> 8) & 3)
165,176c171,182
< case 0:
< fputs_filtered ("Single Precision (24-bits)\n", file);
< break;
< case 1:
< fputs_filtered ("Reserved\n", file);
< break;
< case 2:
< fputs_filtered ("Double Precision (53-bits)\n", file);
< break;
< case 3:
< fputs_filtered ("Extended Precision (64-bits)\n", file);
< break;
---
> case 0:
> fprintf_filtered (file, "24-bits (single precision)\n");
> break;
> case 1:
> fprintf_filtered (file, "(reserved)\n");
> break;
> case 2:
> fprintf_filtered (file, "53-bits (double precision)\n");
> break;
> case 3:
> fprintf_filtered (file, "64-bits (extended precision)\n");
> break;
179,180c185,187
< fputs_filtered (" RC: ", file);
< switch ((control >> 10) & 3)
---
> fprintf_filtered (file, " rounding control (RC) : ");
>
> switch ((control >> 10) & 3)
182,193c189,200
< case 0:
< fputs_filtered ("Round to nearest\n", file);
< break;
< case 1:
< fputs_filtered ("Round down\n", file);
< break;
< case 2:
< fputs_filtered ("Round up\n", file);
< break;
< case 3:
< fputs_filtered ("Round toward zero\n", file);
< break;
---
> case 0:
> fprintf_filtered (file, "round to nearest or even\n");
> break;
> case 1:
> fprintf_filtered (file, "round down (towards -inf)\n");
> break;
> case 2:
> fprintf_filtered (file, "round up (toward +inf)\n");
> break;
> case 3:
> fprintf_filtered (file, "chop (truncate toward zero)\n");
> break;