75 lines
2.1 KiB
Diff
75 lines
2.1 KiB
Diff
--- binutils-2.14/gas/read.c 2003-06-02 22:35:23.000000000 +0200
|
|
+++ binutils-2.14-patched/gas/read.c 2013-04-24 18:37:53.000000000 +0200
|
|
@@ -48,6 +48,10 @@
|
|
#define TC_START_LABEL(x,y) (x == ':')
|
|
#endif
|
|
|
|
+#ifdef OBJ_AMIGAHUNK
|
|
+extern segT data_chip_section, bss_chip_section;
|
|
+#endif
|
|
+
|
|
/* Set by the object-format or the target. */
|
|
#ifndef TC_IMPLICIT_LCOMM_ALIGNMENT
|
|
#define TC_IMPLICIT_LCOMM_ALIGNMENT(SIZE, P2VAR) \
|
|
@@ -274,6 +278,9 @@
|
|
{"common", s_mri_common, 0},
|
|
{"common.s", s_mri_common, 1},
|
|
{"data", s_data, 0},
|
|
+#ifdef OBJ_AMIGAHUNK
|
|
+ {"datachip", s_data_chip, 0},
|
|
+#endif
|
|
{"dc", cons, 2},
|
|
{"dc.b", cons, 1},
|
|
{"dc.d", float_cons, 'd'},
|
|
@@ -1552,6 +1559,17 @@
|
|
demand_empty_rest_of_line ();
|
|
}
|
|
|
|
+#ifdef OBJ_AMIGAHUNK
|
|
+void
|
|
+s_data_chip (ignore)
|
|
+ int ignore ATTRIBUTE_UNUSED;
|
|
+{
|
|
+ int temp = get_absolute_expression ();
|
|
+ subseg_set (data_chip_section, (subsegT) temp);
|
|
+ demand_empty_rest_of_line ();
|
|
+}
|
|
+#endif
|
|
+
|
|
/* Handle the .appfile pseudo-op. This is automatically generated by
|
|
do_scrub_chars when a preprocessor # line comment is seen with a
|
|
file name. This default definition may be overridden by the object
|
|
@@ -3717,7 +3735,7 @@
|
|
|
|
#ifdef BFD_ASSEMBLER
|
|
#ifdef TC_CONS_FIX_NEW
|
|
- TC_CONS_FIX_NEW (frag_now, p - frag_now->fr_literal, nbytes, exp);
|
|
+ TC_CONS_FIX_NEW (frag_now, p - frag_now->fr_literal, nbytes, exp, 0);
|
|
#else
|
|
{
|
|
bfd_reloc_code_real_type r;
|
|
@@ -3742,12 +3760,12 @@
|
|
break;
|
|
}
|
|
fix_new_exp (frag_now, p - frag_now->fr_literal, (int) nbytes, exp,
|
|
- 0, r);
|
|
+ 0, r, 0);
|
|
}
|
|
#endif
|
|
#else
|
|
#ifdef TC_CONS_FIX_NEW
|
|
- TC_CONS_FIX_NEW (frag_now, p - frag_now->fr_literal, nbytes, exp);
|
|
+ TC_CONS_FIX_NEW (frag_now, p - frag_now->fr_literal, nbytes, exp, 0);
|
|
#else
|
|
/* Figure out which reloc number to use. Use TC_CONS_RELOC if
|
|
it is defined, otherwise use NO_RELOC if it is defined,
|
|
@@ -3760,7 +3778,7 @@
|
|
#endif
|
|
#endif
|
|
fix_new_exp (frag_now, p - frag_now->fr_literal, (int) nbytes, exp, 0,
|
|
- TC_CONS_RELOC);
|
|
+ TC_CONS_RELOC, 0);
|
|
#endif /* TC_CONS_FIX_NEW */
|
|
#endif /* BFD_ASSEMBLER */
|
|
}
|