diff options
-rw-r--r-- | ChangeLog.csl | 109 | ||||
-rw-r--r-- | bfd/config.bfd | 6 | ||||
-rwxr-xr-x | config.sub | 4 | ||||
-rw-r--r-- | include/opcode/m68k.h | 3 | ||||
-rw-r--r-- | opcodes/m68k-dis.c | 5 | ||||
-rw-r--r-- | opcodes/m68k-opc.c | 4 |
6 files changed, 127 insertions, 4 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl index dbe5cc8d220..0a14213f2c6 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,3 +1,112 @@ +2006-10-30 Kazu Hirata <kazu@codesourcery.com> + + Merge fido bits: + 2006-10-25 Kazu Hirata <kazu@codesourcery.com> + + gprof/ + * hist.c, hist.h: Fix formatting. + + gprof/ + * Makefile.in (corefile.o): Depend on hist.h. + * corefile.c: Include hist.h. + + 2006-10-06 Vladimir Prus <vladimir@codesourcery.com> + + * hist.h (struct histogram) + (histograms, num_histograms): New. + * hist.c (find_histogram, find_histogram_for_pc) + (read_histogram_header): New. + (s_lowpc, s_highpc, lowpc, highpc, hist_num_bins) + (hist_sample): Remove. + (hist_read_rec): Use the above, and handle multiple + histogram records with disjoint address ranges. + (hist_write_hist): Support several histogram records. + (scale_and_align_entries): Adjust for multiple histograms. + (hist_assign_samples_1): New. + (hist_assign_samples): Use the above. + (hist_clip_symbol_address): New. + * hist.h (hist_check_address) + (hist_clip_symbol_address): Declare. + * gmon_io.c (gmon_out_read, gmon_out_write): Adjust handling + of legacy format for multiple histogram changes. + * corefile.c (find_call): Check for core_text_space and + clip symbol address range here. + * vax.c (vax_find_call): Don't check for + core_text_space, or clip the symbol's address range here. + Use hist_check_address to check call's target address. + * sparc.c: Likewise. + * tahoe.c: Likewise. + * i386.c: Likewise. + * mips.c: Likewise. Also use core_text_sect->vma as the base + address for code accesses, just like other machine-specific + routines do. + + 2006-08-03 Kazu Hirata <kazu@codesourcery.com> + + * gas/config/tc-m68k.c (archs): Add -mfido as an alias for + -mfido_a. + + 2006-06-23 Kazu Hirata <kazu@codesourcery.com> + + * gas/config/tc-m68k.c (cpu_of_arch): Replace fido with + fido_a. + (archs): Likewise. + (m68k_ip): Likewise. + (select_control_regs): Likewise. + (md_show_usage): Replace -mfido with -mfidoa. + * include/opcode/m68k.h (fido): Rename to fido_a. + * opcodes/m68k-opc.c (m68k_opcodes): Replace fido with fido_a. + + 2006-06-22 Kazu Hirata <kazu@codesourcery.com> + + * config.sub: Replace fido with fido. + * bfd/config.bfd: Likewise + * gas/configure.tgt: Likewise. + * gas/config/m68k-parse.h: Likewise. + * gas/config/tc-m68k.c: Likewise. + * gas/testsuite/gas/m68k/all.exp: Likewise. + * gas/testsuite/gas/m68k/fido.d: Rename to fido.d. + * gas/testsuite/gas/m68k/fido.s: Rename to fido.s. + * include/opcode/m68k.h: Replace fido with fido. + * ld/configure.tgt: Likewise. + * opcodes/m68k-dis.c: Likewise. + * opcodes/m68k-opc.c: Likewise. + + 2005-08-01 Kazu Hirata <kazu@codesourcery.com> + + * gas/config/m68k-parse.h (m68k_register): Add CAC and MBB. + * gas/config/tc-m68k.c (fido_control_regs): New. + (cpu_of_arch): Add fido. + (archs): Add an entry for fido. + (m68k_ip): Add warnings for uses of tbl[su]{n,}[bwl] on + fido. Recognize CAC and MBB. + (init_tabl): Add CAC and MBB. + (select_control_regs): Choose fido as the current chip + when the current architecture is fido or when -mfido + is given explicitly. + * gas/testsuite/gas/m68k/all.exp: Disable operands, cas, and + bitfield on fido-*-*. Run fido on fido-*-*. + * gas/testsuite/gas/m68k/fido.d: New. + * gas/testsuite/gas/m68k/fido.s: Likewise. + * include/opcode/m68k.h: Document new control registers CAC + and MBB. + * opcodes/m68k-dis.c (print_insn_arg): Add cac and mbb. + * opcodes/m68k-opc.c (m68k_opcodes): Add sleep and trapx. + + 2005-07-22 Kazu Hirata <kazu@codesourcery.com> + + * gas/config/tc-m68k.c (archs): Add fido as an OR of + cpu32 and fido. + (md_show_usage): Add -mfido. + * include/opcode/m68k.h (fido): New. + + 2005-07-11 Kazu Hirata <kazu@codesourcery.com> + + * config.sub: Recognize fido and fido-*. + * bfd/config.bfd: Likewise. + * gas/configure.tgt: Likewise. + * ld/configure.tgt: Likewise. + 2006-10-28 Paul Brook <paul@codesourcery.com> Julian Brown <julian@codesourcery.com> diff --git a/bfd/config.bfd b/bfd/config.bfd index a07d77f378e..a2f8cf11bdd 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -78,6 +78,7 @@ c54x*) targ_archs=bfd_tic54x_arch ;; crisv32) targ_archs=bfd_cris_arch ;; crx*) targ_archs=bfd_crx_arch ;; dlx*) targ_archs=bfd_dlx_arch ;; +fido*) targ_archs=bfd_m68k_arch ;; hppa*) targ_archs=bfd_hppa_arch ;; i[3-7]86) targ_archs=bfd_i386_arch ;; i370) targ_archs=bfd_i370_arch ;; @@ -365,6 +366,11 @@ case "${targ}" in targ_defvec=bfd_elf32_d30v_vec ;; + fido-*-elf* ) + targ_defvec=bfd_elf32_m68k_vec + targ_selvecs="m68kcoff_vec ieee_vec" + ;; + fr30-*-elf) targ_defvec=bfd_elf32_fr30_vec ;; diff --git a/config.sub b/config.sub index a4e8a94a335..b2dea75f0e9 100755 --- a/config.sub +++ b/config.sub @@ -244,7 +244,7 @@ case $basic_machine in | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ + | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ @@ -323,7 +323,7 @@ case $basic_machine in | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ diff --git a/include/opcode/m68k.h b/include/opcode/m68k.h index f8fdf1beb8f..ca0b4d98d4c 100644 --- a/include/opcode/m68k.h +++ b/include/opcode/m68k.h @@ -31,7 +31,8 @@ #define m68881 0x040 #define m68851 0x080 #define cpu32 0x100 /* e.g., 68332 */ -#define m68k_mask 0x1ff +#define fido_a 0x200 +#define m68k_mask 0x3ff #define mcfmac 0x400 /* ColdFire MAC. */ #define mcfemac 0x800 /* ColdFire EMAC. */ diff --git a/opcodes/m68k-dis.c b/opcodes/m68k-dis.c index 42fb14582a2..1c4c8c405b3 100644 --- a/opcodes/m68k-dis.c +++ b/opcodes/m68k-dis.c @@ -650,7 +650,10 @@ print_insn_arg (const char *d, /* Should we be calling this psr like we do in case 'Y'? */ {"%mmusr",0x805}, - {"%urp", 0x806}, {"%srp", 0x807}, {"%pcr", 0x808}}; + {"%urp", 0x806}, {"%srp", 0x807}, {"%pcr", 0x808}, + + /* Fido added these. */ + {"%cac", 0xffe}, {"%mbb", 0xfff}}; val = fetch_arg (buffer, place, 12, info); for (regno = sizeof names / sizeof names[0] - 1; regno >= 0; regno--) diff --git a/opcodes/m68k-opc.c b/opcodes/m68k-opc.c index 601c55a15f6..51811d44db5 100644 --- a/opcodes/m68k-opc.c +++ b/opcodes/m68k-opc.c @@ -2031,6 +2031,8 @@ const struct m68k_opcode m68k_opcodes[] = {"svs", 2, one(0054700), one(0177700), "$s", m68000up }, {"svs", 2, one(0054700), one(0177700), "Ds", mcfisa_a }, +{"sleep", 2, one(0047170), one(0177777), "", fido_a }, + {"stop", 4, one(0047162), one(0177777), "#w", m68000up | mcfisa_a }, {"strldsr", 4, two(0040347,0043374), two(0177777,0177777), "#w", mcfisa_aa}, @@ -2151,6 +2153,8 @@ TBL("tblunb", "tblunw", "tblunl", 0, 0), {"trapv", 2, one(0047166), one(0177777), "", m68000up }, +{"trapx", 2, one(0047060), one(0177760), "Ts", fido_a }, + {"tstb", 2, one(0045000), one(0177700), ";b", m68020up|cpu32|mcfisa_a }, {"tstb", 2, one(0045000), one(0177700), "$b", m68000up }, {"tstw", 2, one(0045100), one(0177700), "*w", m68020up|cpu32|mcfisa_a }, |