* archures.c (bfd_mach_mcf_isa_a_nodiv, bfd_mach_mcf_isa_b_nousp):
	New.  Adjust other variants.
	(bfd_default_scan): Update.
	* bfd-in2.h: Rebuilt.
	* cpu-m68k.c: Adjust.
	(bfd_m68k_compatible): New. Use it for architectures.
	* elf32-m68k.c (elf32_m68k_object_p): Adjust.
	(elf32_m68k_merge_private_bfd_data): Adjust.  Correct isa-a/b
	mismatch.
	(elf32_m68k_print_private_bfd_data): Adjust.
	* ieee.c (ieee_write_processor): Adjust.

	binutils:
	* readelf.c (get_machine_flags): Adjust.

	gas:
	* config/tc-m68k.c (m68k_extensions): Allow 'float' on both m68k
	and cf.
	(m68k_ip): <case 'J'> Check we have some control regs.
	(md_parse_option): Allow raw arch switch.
	(m68k_init_arch): Better detection of arch/cpu mismatch.  Detect
	whether 68881 or cfloat was meant by -mfloat.
	(md_show_usage): Adjust extension display.
	(m68k_elf_final_processing): Adjust.

	gas/testsuite:
	* gas/m68k/arch-cpu-1.s: Tweak.
	* gas/m68k/arch-cpu-1.d: Tweak.

	include/elf:
	* m68k.h (EF_M68K_ISA_MASK, EF_M68K_ISA_A,
	EF_M68K_ISA_A_PLUS, EF_M68K_ISA_B, EF_M68K_ISA_C): Adjust.
	(EF_M68K_ISA_A_NODIV, EF_M68K_ISA_B_NOUSP): New.
	(EF_M68K_HW_DIV, EF_M68K_USP): Remove.
	(EF_M68K_MAC, EF_M68K_EMAC, EF_M68K_FLOAT): Adjust.
	(EF_M68K_EMAC_B): New.

	ld/testsuite:
	* ld-m68k: New tests.
This commit is contained in:
Nathan Sidwell 2006-03-06 13:42:04 +00:00
parent 984b8182bf
commit 6fbbdfe7f4
2 changed files with 20 additions and 9 deletions

View File

@ -1,3 +1,12 @@
2006-03-06 Nathan Sidwell <nathan@codesourcery.com>
* m68k.h (EF_M68K_ISA_MASK, EF_M68K_ISA_A,
EF_M68K_ISA_A_PLUS, EF_M68K_ISA_B, EF_M68K_ISA_C): Adjust.
(EF_M68K_ISA_A_NODIV, EF_M68K_ISA_B_NOUSP): New.
(EF_M68K_HW_DIV, EF_M68K_USP): Remove.
(EF_M68K_MAC, EF_M68K_EMAC, EF_M68K_FLOAT): Adjust.
(EF_M68K_EMAC_B): New.
2006-03-03 Bjoern Haase <bjoern.m.haase@web.de>
* avr.h (R_AVR_MS8_LDI,R_AVR_MS8_LDI_NEG): Add.

View File

@ -58,16 +58,18 @@ END_RELOC_NUMBERS (R_68K_max)
/* We use the bottom 8 bits to encode information about the
coldfire variant. */
#define EF_M68K_ISA_MASK 0x07 /* Which ISA */
#define EF_M68K_ISA_A 0x01
#define EF_M68K_ISA_A_PLUS 0x02
#define EF_M68K_ISA_B 0x03
#define EF_M68K_HW_DIV 0x08 /* Has HW divide */
#define EF_M68K_ISA_MASK 0x0F /* Which ISA */
#define EF_M68K_ISA_A_NODIV 0x01 /* ISA A except for div */
#define EF_M68K_ISA_A 0x02
#define EF_M68K_ISA_A_PLUS 0x03
#define EF_M68K_ISA_B_NOUSP 0x04 /* ISA_B except for USP */
#define EF_M68K_ISA_B 0x05
#define EF_M68K_ISA_C 0x06
#define EF_M68K_MAC_MASK 0x30
#define EF_M68K_MAC 0x10 /* Has MAC */
#define EF_M68K_EMAC 0x20 /* Has EMAC */
#define EF_M68K_USP 0x40 /* Has USP insns */
#define EF_M68K_FLOAT 0x80 /* Has float insns */
#define EF_M68K_MAC 0x10 /* MAC */
#define EF_M68K_EMAC 0x20 /* EMAC */
#define EF_M68K_EMAC_B 0x30 /* EMAC_B */
#define EF_M68K_FLOAT 0x40 /* Has float insns */
#define EF_M68K_CF_MASK 0xFF
#endif