aboutsummaryrefslogtreecommitdiff
path: root/sim/mips
AgeCommit message (Collapse)AuthorFilesLines
2004-09-242004-09-24 Monika Chaddha <monika@acmet.com>Andrew Cagney2-2/+7
Committed by Andrew Cagney. * m16.igen (CMP, CMPI): Fix assembler.
2004-08-192004-08-18 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-2/+7
* configure.in (mipsisa64sb1*-*-*): Add mips3d to sim_igen_machine. * configure: Regenerate.
2004-06-252004-06-25 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-2/+7
* configure.in (sim_m16_machine): Include mipsIII. * configure: Regenerate.
2004-05-122004-05-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>Chris Demetriou3-2/+8
* mips/interp.c (decode_coproc): Sign-extend the address retrieved from COP0_BADVADDR. * mips/sim-main.h (COP0_BADVADDR): Remove a cast.
2004-04-10im/mips/ChangeLog ]Chris Demetriou2-0/+54
2004-04-10 Chris Demetriou <cgd@broadcom.com> * sb1.igen (DIV.PS, RECIP.PS, RSQRT.PS, SQRT.PS): New. [ sim/testsuite/sim/mips/ChangeLog ] 2004-04-10 Chris Demetriou <cgd@broadcom.com> * fpu64-ps-sb1.s: New file. * basic.exp: Recognize mipsisa64sb1 targets, and run fpu64-ps-sb1.s if appropriate.
2004-04-102004-04-09 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-62/+47
* mips.igen (check_fmt): Remove. (ABS.fmt, ADD.fmt, C.cond.fmta, C.cond.fmtb, CEIL.L.fmt, CEIL.W) (CVT.D.fmt, CVT.L.fmt, CVT.S.fmt, CVT.W.fmt, DIV.fmt, FLOOR.L.fmt) (FLOOR.W.fmt, MADD.fmt, MOV.fmt, MOVtf.fmt, MOVN.fmt, MOVZ.fmt) (MSUB.fmt, MUL.fmt, NEG.fmt, NMADD.fmt, NMSUB.fmt, RECIP.fmt) (ROUND.L.fmt, ROUND.W.fmt, RSQRT.fmt, SQRT.fmt, SUB.fmt) (TRUNC.L.fmt, TRUNC.W): Explicitly specify allowed FPU formats. (check_fmt_p, CEIL.L.fmt, CEIL.W, DIV.fmt, FLOOR.L.fmt) (FLOOR.W.fmt, RECIP.fmt, ROUND.L.fmt, ROUND.W.fmt, RSQRT.fmt) (SQRT.fmt, TRUNC.L.fmt, TRUNC.W): Remove all uses of check_fmt. (C.cnd.fmta): Remove incorrect call to check_fmt_p.
2004-04-102004-04-09 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-21/+28
* sb1.igen (check_sbx): New function. (PABSDIFF.fmt, PABSDIFC.fmt, PAVG.fmt): Use check_sbx.
2004-03-29Fix date in last delta.Richard Sandiford1-1/+1
2004-03-29 * sim-main.h (MIPS_MACH_HAS_MT_HILO_HAZARD)Richard Sandiford3-13/+72
(MIPS_MACH_HAS_MULT_HILO_HAZARD, MIPS_MACH_HAS_DIV_HILO_HAZARD): New. * mips.igen (check_mt_hilo, check_mult_hilo, check_div_hilo): Provide separate implementations for mipsIV and mipsV. Use new macros to determine whether the restrictions apply.
2004-01-202004-01-19 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-11/+69
* mips.igen (check_mf_cycles, check_mt_hilo, check_mf_hilo) (check_mult_hilo): Improve comments. (check_div_hilo): Likewise. Also, fork off a new version to handle mips32/mips64 (since there are no hazards to check in MIPS32/MIPS64).
2003-06-182003-06-17 Richard Sandiford <rsandifo@redhat.com>Chris Demetriou2-2/+6
* mips.igen (do_dmultx): Fix check for negative operands.
2003-05-16Use $(SHELL) whenever we invoke move-if-change.Ian Lance Taylor2-52/+59
2003-05-02[igen/ChangeLog]Chris Demetriou7-8/+23
2003-05-03 Chris Demetriou <cgd@broadcom.com> * compare_igen_models: Tweak attribution slightly. [mips/ChangeLog] 2003-05-03 Chris Demetriou <cgd@broadcom.com> * cp1.c: Tweak attribution slightly. * cp1.h: Likewise. * mdmx.c: Likewise. * mdmx.igen: Likewise. * mips3d.igen: Likewise. * sb1.igen: Likewise.
2003-04-16Fix changelog.Andrew Cagney1-2/+2
2003-04-162003-04-15 Richard Sandiford <rsandifo@redhat.com>Chris Demetriou2-1/+8
* vr.igen (do_vr_mul_op): Zero-extend the low 32 bits of unsigned operands.
2003-02-27Index: arm/ChangeLogAndrew Cagney2-2/+7
2003-02-27 Andrew Cagney <cagney@redhat.com> * wrapper.c (sim_create_inferior, sim_open): Rename _bfd to bfd. Index: common/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * sim-utils.h (sim_analyze_program, sim_load_file): Rename _bfd to bfd. * sim-hload.c (sim_load), sim-base.h (sim_state_base): Ditto. * nrun.c (main): Ditto. Index: d10v/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: erc32/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interf.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: h8300/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * compile.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: h8500/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * compile.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: i960/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * sim-if.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: m32r/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * sim-if.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: m68hc11/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_prepare_for_program, sim_open) (sim_create_inferior): Rename _bfd to bfd. Index: mcore/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: mips/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_open): (sim_create_inferior): Index: mn10200/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: mn10300/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_open, sim_create_inferior, sim_open) (sim_create_inferior): Rename _bfd to bfd. Index: ppc/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * sim_calls.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: sh/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (init_dsp, sim_open, sim_create_inferior): Rename _bfd to bfd. Index: v850/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd. Index: z8k/ChangeLog 2003-02-27 Andrew Cagney <cagney@redhat.com> * iface.c (sim_open, sim_create_inferior): Rename _bfd to bfd.
2003-01-142003-01-14 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-0/+38
* mips.igen (LUXC1, SUXC1): New, for mipsV and mips64.
2003-01-142003-01-14 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-23/+4
* mips.igen (EI, DI): Remove.
2003-01-062003-01-05 Richard Sandiford <rsandifo@redhat.com>Chris Demetriou2-1/+5
* Makefile.in (tmp-run-multi): Fix mips16 filter.
2003-01-052003-01-04 Richard Sandiford <rsandifo@redhat.com>Chris Demetriou7-54/+896
Andrew Cagney <ac131313@redhat.com> Gavin Romig-Koch <gavin@redhat.com> Graydon Hoare <graydon@redhat.com> Aldy Hernandez <aldyh@redhat.com> Dave Brolley <brolley@redhat.com> Chris Demetriou <cgd@broadcom.com> * configure.in (mips64vr*): Define TARGET_ENABLE_FR to 1. (sim_mach_default): New variable. (mips64vr-*-*, mips64vrel-*-*): New configurations. Add a new simulator generator, MULTI. * configure: Regenerate. * Makefile.in (SIM_MULTI_OBJ, SIM_EXTRA_DISTCLEAN): New variables. (multi-run.o): New dependency. (SIM_MULTI_ALL, SIM_MULTI_IGEN_CONFIGS): New variables. (tmp-mach-multi, tmp-itable-multi, tmp-run-multi): New rules. (tmp-multi): Combine them. (BUILT_SRC_FROM_MULTI): New variable. Depend on tmp-multi. (clean-extra): Remove sources in BUILT_SRC_FROM_MULTI. (distclean-extra): New rule. * sim-main.h: Include bfd.h. (MIPS_MACH): New macro. * mips.igen (vr4120, vr5400, vr5500): New models. (clo, clz, dclo, dclz, madd, maddu, msub, msub, mul): Add *vr5500. * vr.igen: Replace with new version.
2003-01-052003-01-04 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-161/+186
* configure.in: Use SIM_AC_OPTION_RESERVED_BITS(1). * configure: Regenerate.
2002-12-312002-12-31 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-40/+6
* sim-main.h (check_branch_bug, mark_branch_bug): Remove. * mips.igen: Remove all invocations of check_branch_bug and mark_branch_bug.
2002-12-172002-12-16 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-2/+6
* tconfig.in: Include "gdb/callback.h" and "gdb/remote-sim.h".
2002-07-312002-07-30 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-4/+98
* mips.igen (do_load_double, do_store_double): New functions. (LDC1, SDC1): Rename to... (LDC1b, SDC1b): respectively. (LDC1a, SDC1a): New instructions for MIPS II and MIPS32 support.
2002-07-292002-07-29 Michael Snyder <msnyder@redhat.com>Michael Snyder2-2/+7
* cp1.c (fp_recip2): Modify initialization expression so that GCC will recognize it as constant.
2002-06-182002-06-18 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-2/+13
* mdmx.c (SD_): Delete. (Unpredictable): Re-define, for now, to directly invoke unpredictable_action(). (mdmx_acc_op): Fix error in .ob immediate handling.
2002-06-18* interp.c (sim_firmware_command): Initialize `address'.Andrew Cagney2-1/+8
2002-06-16Import current --enable-gdb-build-warnings.Andrew Cagney2-175/+228
2002-06-142002-06-14 Chris Demetriou <cgd@broadcom.com>Chris Demetriou8-4/+475
Ed Satterthwaite <ehs@broadcom.com> * mips3d.igen: New file which contains MIPS-3D ASE instructions. * Makefile.in (IGEN_INCLUDE): Add mips3d.igen. * mips.igen: Include mips3d.igen. (mips3d): New model name for MIPS-3D ASE instructions. (CVT.W.fmt): Don't use this instruction for word (source) format instructions. * cp1.c (fp_binary_r, fp_add_r, fp_mul_r, fpu_inv1, fpu_inv1_32) (fpu_inv1_64, fp_recip1, fp_recip2, fpu_inv_sqrt1, fpu_inv_sqrt1_32) (fpu_inv_sqrt1_64, fp_rsqrt1, fp_rsqrt2): New functions. (NR_FRAC_GUARD, IMPLICIT_1): New macros. * sim-main.h (fmt_pw, CompareAbs, AddR, MultiplyR, Recip1, Recip2) (RSquareRoot1, RSquareRoot2): New macros. (fp_add_r, fp_mul_r, fp_recip1, fp_recip2, fp_rsqrt1) (fp_rsqrt2): New functions. * configure.in: Add MIPS-3D support to mipsisa64 simulator. * configure: Regenerate.
2002-06-14fix attribution in previous changelog entryChris Demetriou1-0/+1
2002-06-142002-06-13 Chris Demetriou <cgd@broadcom.com>Chris Demetriou4-13/+362
* cp1.c (FP_PS_upper, FP_PS_lower, FP_PS_cat, FPQNaN_PS): New macros. (value_fpr, store_fpr, fp_cmp, fp_unary, fp_binary, fp_mac) (fp_inv_sqrt, fpu_format_name): Add paired-single support. (convert): Note that this function is not used for paired-single format conversions. (ps_lower, ps_upper, pack_ps, convert_ps): New functions. * mips.igen (FMT, MOVtf.fmt): Add paired-single support. (check_fmt_p): Enable paired-single support. (ALNV.PS, CVT.PS.S, CVT.S.PL, CVT.S.PU, PLL.PS, PLU.PS, PUL.PS) (PUU.PS): New instructions. (CVT.S.fmt): Don't use this instruction for paired-single format destinations. * sim-main.h (FP_formats): New value 'fmt_ps.' (ps_lower, ps_upper, pack_ps, convert_ps): New prototypes. (PSLower, PSUpper, PackPS, ConvertPS): New macros.
2002-06-122002-06-12 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-41/+46
* mips.igen: Fix formatting of function calls in many FP operations.
2002-06-122002-06-12 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-4/+19
* mips.igen (MOVN, MOVZ): Trace result. (TNEI): Print "tnei" as the opcode name in traces. (CEIL.W): Add disassembly string for traces. (RSQRT.fmt): Make location of disassembly string consistent with other instructions.
2002-06-122002-06-12 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-10/+4
* mips.igen (X): Delete unused function.
2002-06-09Move include/callback.h and include/remote-sim.h to include/gdb/.Andrew Cagney2-2/+6
Update accordingly.
2002-06-082002-06-07 Chris Demetriou <cgd@broadcom.com>Chris Demetriou4-74/+315
Ed Satterthwaite <ehs@broadcom.com> * cp1.c (inner_mac, fp_mac, inner_rsqrt, fp_inv_sqrt) (fp_rsqrt, fp_madd, fp_msub, fp_nmadd, fp_nmsub): New functions. * sim-main.h (fp_rsqrt, fp_madd, fp_msub, fp_nmadd) (fp_nmsub): New prototypes. (RSquareRoot, MultiplyAdd, MultiplySub, NegMultiplyAdd) (NegMultiplySub): New defines. * mips.igen (RSQRT.fmt): Use RSquareRoot(). (MADD.D, MADD.S): Replace with... (MADD.fmt): New instruction. (MSUB.D, MSUB.S): Replace with... (MSUB.fmt): New instruction. (NMADD.D, NMADD.S): Replace with... (NMADD.fmt): New instruction. (NMSUB.D, MSUB.S): Replace with... (NMSUB.fmt): New instruction.
2002-06-072002-06-07 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-43/+93
Ed Satterthwaite <ehs@broadcom.com> * cp1.c: Fix more comment spelling and formatting. (value_fcr, store_fcr): Use fenr_FS rather than hard-coding value. (denorm_mode): New function. (fpu_unary, fpu_binary): Round results after operation, collect status from rounding operations, and update the FCSR. (convert): Collect status from integer conversions and rounding operations, and update the FCSR. Adjust NaN values that result from conversions. Convert to use sim_io_eprintf rather than fprintf, and remove some debugging code. * cp1.h (fenr_FS): New define.
2002-06-072002-06-07 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-39/+43
* cp1.c (convert): Remove unusable debugging code, and move MIPS rounding mode to sim FP rounding mode flag conversion code into... (rounding_mode): New function.
2002-06-072002-06-07 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-21/+12
* cp1.c: Clean up formatting of a few comments. (value_fpr): Reformat switch statement.
2002-06-072002-06-06 Chris Demetriou <cgd@broadcom.com>Chris Demetriou5-311/+464
Ed Satterthwaite <ehs@broadcom.com> * cp1.h: New file. * sim-main.h: Include cp1.h. (SETFCC, GETFCC, IR, UF, OF, DX, IO, UO, FP_FLAGS, FP_ENABLE) (FP_CAUSE, GETFS, FP_RM_NEAREST, FP_RM_TOZERO, FP_RM_TOPINF) (FP_RM_TOMINF, GETRM): Remove. Moved to cp1.h. (FP_FS, FP_MASK_RM, FP_SH_RM, Nan, Less, Equal): Remove. (value_fcr, store_fcr, test_fcsr, fp_cmp): New prototypes. (ValueFCR, StoreFCR, TestFCSR, Compare): New macros. * cp1.c: Don't include sim-fpu.h; already included by sim-main.h. Clean up formatting of some comments. (NaN, Equal, Less): Remove. (test_fcsr, value_fcr, store_fcr, update_fcsr, fp_test) (fp_cmp): New functions. * mips.igen (do_c_cond_fmt): Remove. (C.cond.fmta, C.cond.fmtb): Replace uses of do_c_cond_fmt_a with Compare. Add result tracing. (CxC1): Remove, replace with... (CFC1a, CFC1b, CFC1c, CTC1a, CTC1b, CTC1c): New instructions. (DMxC1): Remove, replace with... (DMFC1a, DMFC1b, DMTC1a, DMTC1b): New instructions. (MxC1): Remove, replace with... (MFC1a, MFC1b, MTC1a, MTC1b): New instructions.
2002-06-042002-06-04 Chris Demetriou <cgd@broadcom.com>Chris Demetriou4-28/+40
* sim-main.h (FGRIDX): Remove, replace all uses with... (FGR_BASE): New macro. (FP0_REGNUM, FCRCS_REGNUM, FCRIR_REGNUM): New macros. (_sim_cpu): Move 'fgr' member to be right before 'fpr_state' member. (NR_FGR, FGR): Likewise. * interp.c: Replace all uses of FGRIDX with FGR_BASE. * mips.igen: Likewise.
2002-06-042002-06-04 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-0/+27
* cp1.c: Add an FSF Copyright notice to this file.
2002-06-042002-06-04 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-407/+130
Ed Satterthwaite <ehs@broadcom.com> * cp1.c (Infinity): Remove. * sim-main.h (Infinity): Likewise. * cp1.c (fp_unary, fp_binary): New functions. (fp_abs, fp_neg, fp_add, fp_sub, fp_mul, fp_div, fp_recip) (fp_sqrt): New functions, implemented in terms of the above. (AbsoluteValue, Negate, Add, Sub, Multiply, Divide) (Recip, SquareRoot): Remove (replaced by functions above). * sim-main.h (fp_abs, fp_neg, fp_add, fp_sub, fp_mul, fp_div) (fp_recip, fp_sqrt): New prototypes. (AbsoluteValue, Negate, Add, Sub, Multiply, Divide) (Recip, SquareRoot): Replace prototypes with #defines which invoke the functions above.
2002-06-042002-06-03 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-30/+42
* sim-main.h (Nan, Infinity, Less, Equal, AbsoluteValue, Negate) (Add, Sub, Multiply, Divide, Recip, SquareRoot): Move lower in file, remove PARAMS from prototypes. (value_fpr, store_fpr, convert): Likewise. Use SIM_STATE to provide simulator state arguments. (ValueFPR, StoreFPR, Convert): Move lower in file. Use SIM_ARGS to pass simulator state arguments. * cp1.c (SD): Redefine as CPU_STATE(cpu). (store_fpr, convert): Remove 'sd' argument. (value_fpr): Likewise. Convert to use 'SD' instead.
2002-06-042002-06-03 Chris Demetriou <cgd@broadcom.com>Chris Demetriou3-146/+5
* cp1.c (Min, Max): Remove #if 0'd functions. * sim-main.h (Min, Max): Remove.
2002-06-032002-06-03 Chris Demetriou <cgd@broadcom.com>Chris Demetriou4-34/+40
* cp1.c: fix formatting of switch case and default labels. * interp.c: Likewise. * sim-main.c: Likewise.
2002-06-032002-06-03 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-24/+30
* cp1.c: Clean up comments which describe FP formats. (FPQNaN_DOUBLE, FPQNaN_LONG): Generate using UNSIGNED64.
2002-06-032002-06-03 Chris Demetriou <cgd@broadcom.com>Chris Demetriou9-19/+316
Ed Satterthwaite <ehs@broadcom.com> * configure.in (mipsisa64sb1*-*-*): New target for supporting Broadcom SiByte SB-1 processor configurations. * configure: Regenerate. * sb1.igen: New file. * mips.igen: Include sb1.igen. (sb1): New model. * Makefile.in (IGEN_INCLUDE): Add sb1.igen. * mdmx.igen: Add "sb1" model to all appropriate functions and instructions. * mdmx.c (AbsDiffOB, AvgOB, AccAbsDiffOB): New functions. (ob_func, ob_acc): Reference the above. (qh_acc): Adjust to keep the same size as ob_acc. * sim-main.h (status_SBX, MX_VECT_ABSD, MX_VECT_AVG, MX_AbsDiff) (MX_Avg, MX_VECT_ABSDA, MX_AbsDiffC): New macros.
2002-06-032002-06-03 Chris Demetriou <cgd@broadcom.com>Chris Demetriou2-0/+5
* Makefile.in (IGEN_INCLUDE): Add mdmx.igen.
2002-06-022002-06-02 Chris Demetriou <cgd@broadcom.com>Chris Demetriou6-0/+2154
Ed Satterthwaite <ehs@broadcom.com> * mips.igen (mdmx): New (pseudo-)model. * mdmx.c, mdmx.igen: New files. * Makefile.in (SIM_OBJS): Add mdmx.o. * sim-main.h (MDMX_accumulator, MX_fmtsel, signed24, signed48): New typedefs. (ACC, MX_Add, MX_AddA, MX_AddL, MX_And, MX_C_EQ, MX_C_LT, MX_Comp) (MX_FMT_OB, MX_FMT_QH, MX_Max, MX_Min, MX_Msgn, MX_Mul, MX_MulA) (MX_MulL, MX_MulS, MX_MulSL, MX_Nor, MX_Or, MX_Pick, MX_RAC) (MX_RAC_H, MX_RAC_L, MX_RAC_M, MX_RNAS, MX_RNAU, MX_RND_AS) (MX_RND_AU, MX_RND_ES, MX_RND_EU, MX_RND_ZS, MX_RND_ZU, MX_RNES) (MX_RNEU, MX_RZS, MX_RZU, MX_SHFL, MX_ShiftLeftLogical) (MX_ShiftRightArith, MX_ShiftRightLogical, MX_Sub, MX_SubA, MX_SubL) (MX_VECT_ADD, MX_VECT_ADDA, MX_VECT_ADDL, MX_VECT_AND) (MX_VECT_MAX, MX_VECT_MIN, MX_VECT_MSGN, MX_VECT_MUL, MX_VECT_MULA) (MX_VECT_MULL, MX_VECT_MULS, MX_VECT_MULSL, MX_VECT_NOR) (MX_VECT_OR, MX_VECT_SLL, MX_VECT_SRA, MX_VECT_SRL, MX_VECT_SUB) (MX_VECT_SUBA, MX_VECT_SUBL, MX_VECT_XOR, MX_WACH, MX_WACL, MX_Xor) (SIM_ARGS, SIM_STATE, UnpredictableResult, fmt_mdmx, ob_fmtsel) (qh_fmtsel): New macros. (_sim_cpu): New member "acc". (mdmx_acc_op, mdmx_cc_op, mdmx_cpr_op, mdmx_pick_op, mdmx_rac_op) (mdmx_round_op, mdmx_shuffle, mdmx_wach, mdmx_wacl): New functions.