diff options
author | John Healy <jhealy@redhat.com> | 2001-07-06 19:09:23 +0000 |
---|---|---|
committer | John Healy <jhealy@redhat.com> | 2001-07-06 19:09:23 +0000 |
commit | 002de68b31ef4c555e876fa30d1d154bc60d8e45 (patch) | |
tree | b24a69f301bd41372d7959a1020c61b8c095a4c9 /gas/config/tc-m32r.c | |
parent | b1aeb4c5a3e17984e4333b45608293ba06ee8085 (diff) | |
download | gdb-002de68b31ef4c555e876fa30d1d154bc60d8e45.zip gdb-002de68b31ef4c555e876fa30d1d154bc60d8e45.tar.gz gdb-002de68b31ef4c555e876fa30d1d154bc60d8e45.tar.bz2 |
2001-07-06 John Healy <jhealy@redhat.com>
* cgen.c (gas_cgen_save_fixups): Modified to allow more than one
set of fixups to be stored.
(gas_cgen_restore_fixups): Modified to allow the fixup chain to be
restored to be chosen from any that are saved.
(gas_cgen_swap_fixups): Modified to allow the current set of
fixups to be swapped with any other set that has been saved.
(gas_cgen_initialize_saved_fixups_array): New routine.
* cgen.h: Modifed prototypes for gas_cgen_save_fixups,
gas_cgen_restore_fixups, and gas_cgen_swap_fixups. Added definitions
or MAX_SAVED_FIXUP_CHAINS.
* config/tc-m32r.c (assemble_two_insns): Changed calls to fixup
store, swap and restore fuctions to reflect the new interface.
Diffstat (limited to 'gas/config/tc-m32r.c')
-rw-r--r-- | gas/config/tc-m32r.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gas/config/tc-m32r.c b/gas/config/tc-m32r.c index 47378d4..b3d2bc4 100644 --- a/gas/config/tc-m32r.c +++ b/gas/config/tc-m32r.c @@ -554,6 +554,8 @@ md_begin () scom_symbol.section = &scom_section; allow_m32rx (enable_m32rx); + + gas_cgen_initialize_saved_fixups_array(); } #define OPERAND_IS_COND_BIT(operand, indices, index) \ @@ -832,7 +834,7 @@ assemble_two_insns (str, str2, parallel_p) /* Preserve any fixups that have been generated and reset the list to empty. */ - gas_cgen_save_fixups (); + gas_cgen_save_fixups (0); /* Get the indices of the operands of the instruction. */ /* FIXME: CGEN_FIELDS is already recorded, but relying on that fact @@ -941,7 +943,7 @@ assemble_two_insns (str, str2, parallel_p) || (errmsg = (char *) can_make_parallel (&first, &second)) == NULL) { /* Get the fixups for the first instruction. */ - gas_cgen_swap_fixups (); + gas_cgen_swap_fixups (0); /* Write it out. */ expand_debug_syms (first.debug_sym_link, 1); @@ -953,7 +955,7 @@ assemble_two_insns (str, str2, parallel_p) make_parallel (second.buffer); /* Get its fixups. */ - gas_cgen_restore_fixups (); + gas_cgen_restore_fixups (0); /* Write it out. */ expand_debug_syms (second.debug_sym_link, 1); @@ -972,7 +974,7 @@ assemble_two_insns (str, str2, parallel_p) make_parallel (first.buffer); /* Get the fixups for the first instruction. */ - gas_cgen_restore_fixups (); + gas_cgen_restore_fixups (0); /* Write out the first instruction. */ expand_debug_syms (first.debug_sym_link, 1); |