Add fr450 support.
[deliverable/binutils-gdb.git] / cpu / ChangeLog
index 33ef3984a1567838030a347fa2a93b1404ae8b5d..ce4468bac77e1a7cc43d1b823dd6aa5a29afd912 100644 (file)
@@ -1,3 +1,35 @@
+2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
+
+       * frv.cpu (define-arch frv): Add fr450 mach.
+       (define-mach fr450): New.
+       (define-model fr450): New.  Add profile units to every fr450 insn.
+       (define-attr UNIT): Add MDCUTSSI.
+       (define-attr FR450-MAJOR): New enum.  Add to every fr450 insn.
+       (define-attr AUDIO): New boolean.
+       (f-LRAE, f-LRAD, f-LRAS, f-TLBPRopx, f-TLBPRL)
+       (f-LRA-null, f-TLBPR-null): New fields.
+       (scr0, scr1, scr2, scr3, imavr1, damvr1, cxnr, ttbr)
+       (tplr, tppr, tpxr, timerh, timerl, timerd, btbr): New SPRs.
+       (LRAE, LRAD, LRAS, TLBPRopx, TLBPRL): New operands.
+       (LRA-null, TLBPR-null): New macros.
+       (iacc-multiply-r-r, slass, scutss, int-arith-ss-r-r): Add AUDIO attr.
+       (load-real-address): New macro.
+       (lrai, lrad, tlbpr): New instructions.
+       (media-cut-acc, media-cut-acc-ss): Add fr450-major argument.
+       (mcut, mcuti, mcutss, mcutssi): Adjust accordingly.
+       (mdcutssi): Change UNIT attribute to MDCUTSSI.
+       (media-low-clear-semantics, media-scope-limit-semantics)
+       (media-quad-limit, media-quad-shift): New macros.
+       (mqlclrhs, mqlmths, mqsllhi, mqsrahi): New instructions.
+       * frv.opc (frv_is_branch_major, frv_is_float_major, frv_is_media_major)
+       (frv_is_branch_insn, frv_is_float_insn, frv_is_media_insn)
+       (frv_vliw_reset, frv_vliw_add_insn): Handle bfd_mach_fr450.
+       (fr450_unit_mapping): New array.
+       (fr400_unit_mapping, fr500_unit_mapping, fr550_unit_mapping): Add entry
+       for new MDCUTSSI unit.
+       (fr450_check_insn_major_constraints): New function.
+       (check_insn_major_constraints): Use it.
+
 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
 
        * frv.cpu (nsdiv, nudiv, nsdivi, nudivi): Remove fr400 profiling unit.
This page took 0.022782 seconds and 4 git commands to generate.