aboutsummaryrefslogtreecommitdiff
path: root/opcodes/m68k-opc.c
AgeCommit message (Collapse)AuthorFilesLines
2020-04-21Disallow PC relative for CMPI on MC68000/10Andreas Schwab1-6/+12
The MC68000/10 decodes the second operand of CMPI strictly as destination operand, which disallows PC relative addressing, even though the insn doesn't write to the operand. This restriction has only been lifted for the MC68020+ and CPU32. opcodes: PR 25848 * m68k-opc.c (m68k_opcodes): Allow pc-rel for second operand of cmpi only on m68020up and cpu32. gas: PR 25848 * testsuite/gas/m68k/operands.s: Add tests for cmpi. * testsuite/gas/m68k/operands.d: Update. * testsuite/gas/m68k/op68000.d: Update for new error messages.
2020-01-01Update year range in copyright notice of binutils filesAlan Modra1-1/+1
2019-09-10Use the correct alias for the M68K tdiv instruction.Miod Vallat1-2/+2
PR 24982 * m68k-opc.c: Correct aliases for tdivsl and tdivul.
2019-01-01Update year range in copyright notice of binutils filesAlan Modra1-1/+1
2018-01-03Update year range in copyright notice of binutils filesAlan Modra1-1/+1
2017-09-26Allow the macw and macl instructions to be used on CPUs that have emacs support.Nick Clifton1-0/+14
From PR 22123: The common opcodes of emac and mac seem to be only implemented for mac. To reproduce: echo "macw %d3l,%a0l" > /tmp/dummy.S m68k-unknown-elf-as -m5208 /tmp/dummy.S Outputs something like: /tmp/dummy.S: Assembler messages: /tmp/dummy.S:1: Error: operands mismatch -- statement `macw %d3l,%a0l' ignored This behavior occurs only if the CPU supports only emac but not explicitly mac (but emac is a superset of mac).
2017-01-02Update year range in copyright notice of all files.Alan Modra1-1/+1
2016-01-08m68k: fix constraints of move.[bw] for ISA_B/CAndreas Schwab1-3/+3
For ISA_B/C only the combination #,d(An) is allowed in addition to the ISA_A combinations for move.b and move.w (and pc-relative is never allowed as destination). opcodes/ PR gas/13050 * m68k-opc.c (moveb, movew): For ISA_B/C only allow #,d(An) in addition to ISA_A. gas/ PR gas/13050 * testsuite/gas/m68k/all.exp: Add tests p13050-1 and p13050-2. * testsuite/gas/m68k/p13050-1.s: New file. * testsuite/gas/m68k/p13050-2.d: New file. * testsuite/gas/m68k/p13050-2.s: New file.
2016-01-01Copyright update for binutilsAlan Modra1-1/+1
2015-08-12Remove trailing spaces in opcodesH.J. Lu1-9/+9
2015-01-02ChangeLog rotatation and copyright year updateAlan Modra1-1/+1
2014-03-05Update copyright yearsAlan Modra1-3/+1
2012-01-16* gas/testsuite/gas/m68k/pmove.s, gas/testsuite/gas/m68k/pmove.d: New test.Andreas Schwab1-2/+2
* gas/testsuite/gas/m68k/all.exp: Run it. * opcodes/m68k-opc.c (m68k_opcodes): Fix entries for pmove with BADx/BACx register and move them after pmove with PSR/PCSR register.
2011-10-24 opcodes/Julian Brown1-4/+4
* m68k-opc.c (m68k_opcodes): Fix entries for ColdFire moveml. gas/testsuite/ * gas/m68k/all.exp (movem-offset): Add test. * gas/m68k/movem-offset.s: New test. * gas/m68k/movem-offset.d: New.
2011-09-07* gas/testsuite/gas/m68k/all.exp: Run "mode5" test also with -mcpu=5200.Andreas Schwab1-10/+5
* gas/testsuite/gas/m68k/mode5.s: Add moveml testcases. * gas/testsuite/gas/m68k/mode5.d: Update. * opcodes/m68k-opc.c: Use "y" in moveml pattern for mcfisa_a.
2010-10-11binutils/:Andreas Schwab1-3/+4
* binutils-all/m68k/objdump.exp: Add fnop test. * binutils-all/m68k/fnop.s: New file. opcodes/: * m68k-opc.c (m68k_opcodes): Move fnop before fbf.
2010-06-16 PR gas/11673Nick Clifton1-1/+0
* m68k-opc.c (m68k_opcodes): Remove move.l for isab and later. * gas/m68k/p11673.s: New test. * gas/m68k/all.exp: Run the new test.
2009-11-30 PR gas/11030Nick Clifton1-1/+1
* m68k-opc.c (m68k_opcodes): Allow the STLDSR instruction on the Coldfire ISA A+.
2009-10-14 PR 969Alan Modra1-2/+2
* m68k-opc.c (m68k_opcodes): Correct mask for macl and msacl.
2009-09-02update copyright datesAlan Modra1-1/+1
2009-02-12 gas/Nathan Sidwell1-1/+3
* config/tc-m68k.c (mcf51qe_ctrl): Add CPUCR. (mcf52259_ctrl, mcf52277_ctrl, mcf53017_ctrl): New. (mcf5307_ctrl): Add VBR. (no_mac): New variable. (m68k_extensions): Refer to no_mac mask. (m68k_cpus): Add 51, 51ac, 51cn, 51em, 51jm, 52274, 52277, 52252..52259, 53011..53017. (m68k_ip): Process CPUCR. (init_table): Add cpucr entry. (m68k_set_extension): Allow negated mask to refer to a variable. (md_show_usage): Use '%s' to silence fprintf warning. * config/m68k-parse.h (CPUCR): New control register. gas/testsuite/ * m68k/br-isac.d, m68k/br-isac.s: Add stldsr test. opcodes/ * m68k-opc.c (m68k_opcodes): Add stldsr instruction.
2007-11-07PR gas/5228Nick Clifton1-3/+3
* m68k-opc.c (m68k_opcodes): Fix coldfire msac.w instructions with parallel loads.
2007-10-17 opcodes/Nathan Sidwell1-2/+2
* m68k-opc.c (m68k_opcodes): Correct move sr and ccr masks for coldfire. gas/testsuite/ * gas/m68k/mcf-movsr.s: New. * gas/m68k/mcf-movsr.d: New. * gas/m68k/all.exp: Add mcf-movsr test.
2007-07-05Change source files over to GPLv3.Nick Clifton1-13/+13
2007-07-03 gas/testsuite/Nathan Sidwell1-1/+29
* gas/m68k/mcf-coproc.d: New. * gas/m68k/mcf-coproc.s: New. * gas/m68k/all.exp: Add it. gas/ * config/tc-m68k.c (m68k_ip): Add j & K operand types. (install_operand): Add E encoding. (md_begin): Check and skip initial '.' arg character. (get_num): Add 0..511 case. include/ * opcode/m68k.h: Document j K & E. opcodes/ * m68k-dis.c (fetch_arg): Add E. Replace length switch with direct masking. (print_ins_arg): Add j & K operand types. (match_insn_m68k): Check and skip initial '.' arg character. (m68k_scan_mask): Likewise. * m68k-opc.c (m68k_opcodes): Add coprocessor instructions.
2007-06-18opcodes/Kazu Hirata1-0/+2
* m68k-opc.c (m68k_opcodes): Add wdebugl variants. gas/testsuite/ * gas/m68k/all.exp: Run mcf-wdebug. * gas/testsuite/gas/m68k/mcf-wdebug.d, gas/testsuite/gas/m68k/mcf-wdebug.s: New.
2007-04-23 gas/testsuite/Nathan Sidwell1-38/+38
* gas/m68k/br-isaa.s: New. * gas/m68k/br-isaa.d: New. * gas/m68k/br-isab.s: New. * gas/m68k/br-isab.d: New. * gas/m68k/br-isac.s: New. * gas/m68k/br-isac.d: New. * gas/m68k/all.exp: Adjust. gas/ * config/tc-m68k.c (mcf54455_ctrl): New. (HAVE_LONG_DISP, HAVE_LONG_CALL, HAVE_LONG_COND): New. (m68k_archs): Add isac. (m68k_cpus): Add 54455 family. (m68k_ip): Split Bg into Bb, Bs, Bg. (m68k_elf_final_processing): Add ISA_C. * doc/c-m68k.texi (M680x0 Options): Add isac. include/opcode/ * m68k.h (mcfisa_c): New. (mcfusp, mcf_mask): Adjust. bfd/ * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac, bfd_mach_mcf_isa_c_emac): New. * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry, elf_isac_plt_entry, elf_isac_plt_info): New. (elf32_m68k_object_p): Add ISA_C. (elf32_m68k_print_private_bfd_data): Print ISA_C. (elf32_m68k_get_plt_info): Detect ISA_C. * cpu-m68k.c (arch_info): Add ISAC. (m68k_arch_features): Likewise, (bfd_m68k_compatible): ISAs B & C are not compatible. opcodes/ * m68k-opc.c: Mark mcfisa_c instructions.
2007-01-08bfd/Kazu Hirata1-92/+92
* archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido. * bfd-in2.h: Regenerate. * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of bfd_mach_cpu32_fido. (m68k_arch_features): Use fido_a instead of cpu32. (bfd_m68k_compatible): Reject the combination of Fido and ColdFire. Accept the combination of CPU32 and Fido with a warning. * elf32-m68k.c (elf32_m68k_object_p, elf32_m68k_merge_private_bfd_data, elf32_m68k_print_private_bfd_data): Treat Fido as an architecture by itself. binutils/ * readelf.c (get_machine_flags): Treat Fido as an architecture by itself. gas/ * config/tc-m68k.c (m68k_archs, m68k_cpus): Treat Fido as an architecture by itself. (m68k_ip): Don't issue a warning for tbl instructions on fido. (m68k_elf_final_processing): Treat Fido as an architecture by itself. include/elf/ * m68k.h (EF_M68K_FIDO): New. (EF_M68K_ARCH_MASK): OR EF_M68K_FIDO. (EF_M68K_CPU32_FIDO_A, EF_M68K_CPU32_MASK): Remove. include/opcode/ * m68k.h (m68010up): OR fido_a. opcodes/ * m68k-opc.c (m68k_opcodes): Replace cpu32 with cpu32 | fido_a except on tbl instructions.
2007-01-04gas/testsuite/:Andreas Schwab1-2/+2
* gas/m68k/cpu32.[sd]: New test. * gas/m68k/all.exp: Run it. opcodes/: * m68k-opc.c: Fix encoding of signed bit in the cpu32 tbls insns.
2006-12-27 * m68k-opc.c (m68k_opcodes): Add sleep and trapx.Kazu Hirata1-0/+4
2006-11-16gas/Nathan Sidwell1-58/+63
* config/tc-m68k.c (m68k_ip): Correct output of cpu aliases. gas/testsuite/ * gas/m68k/all.exp: Add mcf-trap. * gas/m68k/mcf-trap.[sd]: New. opcodes/ * m68k-opc.c (m68k_opcodes): Place trap instructions before set conditionals. Add tpf coldfire instruction as alias for trapf.
2006-07-29opcodes/Richard Sandiford1-1/+1
* m68k-opc.c (m68k_opcodes): Fix operand specificer in the Coldfire "fdaddl" entry. gas/testsuite/ * gas/m68k/mcf-fpu.s: Add tests for all addressing modes. * gas/m68k/mcf-fpu.d: Update accordingly.
2006-05-25include/opcodes/Richard Sandiford1-8/+8
* m68k.h (mcf_mask): Define. opcodes/ * m68k-opc.c (m68k_opcodes): Fix the masks of the Coldfire fmovemd and fmovem entries. Put register list entries before immediate mask entries. Use "l" rather than "L" in the fmovem entries. * m68k-dis.c (match_insn_m68k): Remove the PRIV argument and work it out from INFO. (m68k_scan_mask): New function, split out from... (print_insn_m68k): ...here. If no architecture has been set, first try printing an m680x0 instruction, then try a Coldfire one. gas/testsuite/ * gas/m68k/mcf-fpu.s: Add fmovemd and fmovem instructions. * gas/m68k/mcf-fpu.d: Adjust accordingly.
2006-01-162006-01-16 Paul Brook <paul@codesourcery.com>Paul Brook1-17/+17
opcodes/ * m68k-opc.c(m68k_opcodes): Fix opcodes for ColdFire f?abss, f?add?, and f?sub? instructions. gas/testsuite/ * gas/m68k/all.exp: Add mcf-fpu. * gas/m68k/mcf-fpu.d: New file. * gas/m68k/mcf-fpu.s: New file.
2006-01-152006-01-05 Paul Brook <paul@codesourcery.com>Paul Brook1-0/+1
* m68k-opc.c (m68k_opcodes): Add missing ColdFire fdsqrtd entry.
2005-06-23 * m68k-dis.c: Use ISC C90.Ben Elliston1-6/+6
* m68k-opc.c: Formatting fixes.
2005-05-07Update the address and phone number of the FSFNick Clifton1-2/+2
2004-05-24Reorganise m68k instruction decoding and improve handling of MAC/EMACNick Clifton1-2066/+2065
2004-05-05Add support for 521x,5249,547x,548x.Nick Clifton1-257/+257
2004-04-22Add support for ColdFire MAC instructions and tidy up support for other m68kNick Clifton1-87/+82
variants.
2003-11-062003-11-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu1-4/+4
* m68k-opc.c (m68k_opcodes): Reorder "fmovel".
2003-10-21Add ColfFire v4 supportNick Clifton1-254/+476
2001-11-12Fix definitions of wddata[bwl].Nick Clifton1-3/+3
2001-06-22Add wdebug instructionNick Clifton1-0/+2
2001-06-06correct some 68k/ColdFire problemsNick Clifton1-11/+15
2001-03-13Fix typos in ChangeLogs; fix dates in copyright noticesNick Clifton1-2/+3
2001-02-28new defines for Coldfire V4.Nick Clifton1-115/+132
2000-04-14More portability patches. Include sysdep.h everywhere.Alan Modra1-1/+1
1999-05-271999-05-28 Linus Nordberg <linus.nordberg@canit.se>Ian Lance Taylor1-198/+295
* m68k-opc.c: Rename MACL/MSACL to MAC/MSAC. Add MACM/MSACM. Add MOVE MACSR,CCR. * m68k-dis.c (fetch_arg): Add places `n', `o'. * m68k-opc.c: Add MSAC, MACL, MOVE to/from ACC, MACSR, MASK. Add mcf5206e to appropriate instructions. Add alias for MAC, MSAC. * m68k-dis.c (print_insn_arg): Add formats `E', `G', `H' and place `N'. * m68k-opc.c (m68k_opcodes): Add divsw, divsl, divuw, divul, macl, macw, remsl, remul for mcf5307. Change mcf5200 --> mcf. * m68k-dis.c: Add format `u' and places `h', `m', `M'.
1999-05-0319990502 sourceware importbinu_ss_19990502Richard Henderson1-0/+2090