37 lines
1.4 KiB
Diff
37 lines
1.4 KiB
Diff
--- binutils-2.14/gas/as.c 2003-04-08 14:47:07.000000000 +0200
|
|
+++ binutils-2.14-patched/gas/as.c 2013-04-24 18:38:14.000000000 +0200
|
|
@@ -88,6 +88,9 @@
|
|
#ifdef BFD_ASSEMBLER
|
|
segT reg_section, expr_section;
|
|
segT text_section, data_section, bss_section;
|
|
+#ifdef OBJ_AMIGAHUNK
|
|
+segT data_chip_section, bss_chip_section;
|
|
+#endif
|
|
#endif
|
|
|
|
/* The default obstack chunk size. If we set this to zero, the
|
|
@@ -1044,6 +1047,10 @@
|
|
text_section = subseg_new (TEXT_SECTION_NAME, 0);
|
|
data_section = subseg_new (DATA_SECTION_NAME, 0);
|
|
bss_section = subseg_new (BSS_SECTION_NAME, 0);
|
|
+#ifdef OBJ_AMIGAHUNK
|
|
+ data_chip_section = subseg_new (".data_chip", 0);
|
|
+ bss_chip_section = subseg_new (".bss_chip", 0);
|
|
+#endif
|
|
/* @@ FIXME -- we're setting the RELOC flag so that sections are assumed
|
|
to have relocs, otherwise we don't find out in time. */
|
|
applicable = bfd_applicable_section_flags (stdoutput);
|
|
@@ -1054,6 +1061,12 @@
|
|
applicable & (SEC_ALLOC | SEC_LOAD | SEC_RELOC
|
|
| SEC_DATA));
|
|
bfd_set_section_flags (stdoutput, bss_section, applicable & SEC_ALLOC);
|
|
+#ifdef OBJ_AMIGAHUNK
|
|
+ bfd_set_section_flags (stdoutput, data_chip_section,
|
|
+ applicable & (SEC_ALLOC | SEC_LOAD | SEC_RELOC));
|
|
+ bfd_set_section_flags (stdoutput, bss_chip_section, applicable & SEC_ALLOC);
|
|
+#endif
|
|
+
|
|
seg_info (bss_section)->bss = 1;
|
|
subseg_new (BFD_ABS_SECTION_NAME, 0);
|
|
subseg_new (BFD_UND_SECTION_NAME, 0);
|