This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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] | |
Le samedi 21 octobre 2006 Ã 15:44 -0400, John David Anglin a Ãcrit :
> > I opted for eliminating the DEFAULT_LEVEL because it's not clear at a
> > glance what it's a level of, it's only used in that one place, and the
> > construct isn't used in any of the other architectures.
>
> See pa_level. The magic numbers end up in the .o files. The hpux
> linker will issue errors and warnings if you try to link an inconsistent
> set of object files. The values appear in various places such as
> bfd/archures.c, bfd/libhppa.h, ...
Sorry, I don't mean that the magic number is only used in that one
place, rather that the constant DEFAULT_LEVEL is only used in that one
place. pa_level just uses the magic numbers directly (as fixed by the
updated patch):
2006-10-21 Jeff Bailey <jbailey@raspberryginger.com>
* config/tc-hppa.c: Do not define DEFAULT_LEVEL.
(need_pa11_opcode): Use bfd_mach_hppa11 instead of pa11 for
consistency.
(pa_level): Use defines from bfd.h instead of magic numbers.
(md_begin): Use defines from bfd.h instead of DEFAULT_LEVEL.
--
Jeff Bailey - http://www.raspberryginger.com/jbailey/
Index: config/tc-hppa.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-hppa.c,v
retrieving revision 1.132
diff -u -p -r1.132 tc-hppa.c
--- config/tc-hppa.c 7 Jun 2006 11:27:57 -0000 1.132
+++ config/tc-hppa.c 21 Oct 2006 20:45:11 -0000
@@ -105,12 +105,6 @@ typedef som_symbol_type obj_symbol_type;
#endif
#endif /* OBJ_SOM */
-#if TARGET_ARCH_SIZE == 64
-#define DEFAULT_LEVEL 25
-#else
-#define DEFAULT_LEVEL 10
-#endif
-
/* Various structures and types used internally in tc-hppa.c. */
/* Unwind table and descriptor. FIXME: Sync this with GDB version. */
@@ -2273,7 +2267,7 @@ need_pa11_opcode (void)
then set a new architecture. */
if (bfd_get_mach (stdoutput) < pa11)
{
- if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, pa11))
+ if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, bfd_mach_hppa11))
as_warn (_("could not update architecture and machine"));
}
return TRUE;
@@ -6834,25 +6828,25 @@ pa_level (int unused ATTRIBUTE_UNUSED)
if (strncmp (level, "1.0", 3) == 0)
{
input_line_pointer += 3;
- if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, 10))
+ if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, bfd_mach_hppa10))
as_warn (_("could not set architecture and machine"));
}
else if (strncmp (level, "1.1", 3) == 0)
{
input_line_pointer += 3;
- if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, 11))
+ if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, bfd_mach_hppa11))
as_warn (_("could not set architecture and machine"));
}
else if (strncmp (level, "2.0w", 4) == 0)
{
input_line_pointer += 4;
- if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, 25))
+ if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, bfd_mach_hppa20w))
as_warn (_("could not set architecture and machine"));
}
else if (strncmp (level, "2.0", 3) == 0)
{
input_line_pointer += 3;
- if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, 20))
+ if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, bfd_mach_hppa20))
as_warn (_("could not set architecture and machine"));
}
else
@@ -8257,9 +8251,14 @@ md_begin (void)
last_call_info = NULL;
call_info_root = NULL;
+ unsigned long mach = bfd_mach_hppa10;
+
+#if TARGET_ARCH_SIZE == 64
+ mach = bfd_mach_hppa20w;
+#endif
/* Set the default machine type. */
- if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, DEFAULT_LEVEL))
+ if (!bfd_set_arch_mach (stdoutput, bfd_arch_hppa, mach))
as_warn (_("could not set architecture and machine"));
/* Folding of text and data segments fails miserably on the PA.
Attachment:
signature.asc
Description: Ceci est une partie de message=?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |