aboutsummaryrefslogtreecommitdiff
path: root/sim
AgeCommit message (Collapse)AuthorFilesLines
2008-02-06* simops.c (OP_1C007E0): Compensate for 64 bit hosts.DJ Delorie3-9/+17
(OP_18007E0): Likewise. (OP_2C007E0): Likewise. (OP_28007E0): Likewise. * v850.igen (divh): Likewise.
2008-02-06Index: ChangeLogDJ Delorie23-100/+1579
* configure.ac (v850): V850 now has a testsuite. * configure (v850): Likewise. Index: testsuite/ChangeLog * sim/v850/: New directory. * sim/v850/allinsns.exp: New. * sim/v850/bsh.cgs: New. * sim/v850/div.cgs: New. * sim/v850/divh.cgs: New. * sim/v850/divh_3.cgs: New. * sim/v850/divhu.cgs: New. * sim/v850/divu.cgs: New. * sim/v850/sar.cgs: New. * sim/v850/satadd.cgs: New. * sim/v850/satsub.cgs: New. * sim/v850/satsubi.cgs: New. * sim/v850/satsubr.cgs: New. * sim/v850/shl.cgs: New. * sim/v850/shr.cgs: New. * sim/v850/testutils.cgs: New. * sim/v850/testutils.inc: New. Index: v850/ChangeLog * simops.c (OP_C0): Correct saturation logic. (OP_220): Likewise. (OP_A0): Likewise. (OP_660): Likewise. (OP_80): Likewise. * simops.c (OP_2A0): If the shift count is zero, clear the carry. (OP_A007E0): Likewise. (OP_2C0): Likewise. (OP_C007E0): Likewise. (OP_280): Likewise. (OP_8007E0): Likewise. * simops.c (OP_2C207E0): Correct PSW flags for special divu conditions. (OP_2C007E0): Likewise, for div. (OP_28207E0): Likewise, for divhu. (OP_28007E0): Likewise, for divh. Also, sign-extend the correct operand. * v850.igen (divh): Likewise, for 2-op divh. * v850.igen (bsh): Fix carry logic.
2008-02-042008-02-04 Antony King <antony.king@st.com>Andrew Stubbs2-13/+12
* interp.c (macl): Fix non-portable implementation.
2008-01-01 Updated copyright notices for most files.Daniel Jacobowitz295-294/+323
2007-12-19* frv/frv.c (frvbf_cut): Only look at the six LSBs ofDJ Delorie2-0/+6
cut_point.
2007-11-08 * sim/cris/asm/x0-v10.ms, sim/cris/asm/x0-v32.ms: TweakHans-Peter Nilsson3-4/+9
stack-pointer match pattern for 4K host environment.
2007-10-22sim/mips/Richard Sandiford2-23/+98
* mips.igen (check_fmt_p): Provide a separate mips32r2 definition that unconditionally allows fmt_ps. (ALNV.PS, CEIL.L.fmt, CVT.L.fmt, CVT.PS.S, CVT.S.PL, CVT.S.PU) (FLOOR.L.fmt, LWXC1, MADD.fmt, MSUB.fmt, NMADD.fmt, NMSUB.fmt) (PLL.PS, PLU.PS, PUL.PS, PUU.PS, ROUND.L.fmt, TRUNC.L.fmt): Change filter from 64,f to 32,f. (PREFX): Change filter from 64 to 32. (LDXC1, LUXC1): Provide separate mips32r2 implementations that use do_load_double instead of do_load. Make both LUXC1 versions unpredictable if SizeFGR () != 64. (SDXC1, SUXC1): Extend to mips32r2, using do_store_double instead of do_store. Remove unused variable. Make both SUXC1 versions unpredictable if SizeFGR () != 64.
2007-10-22 * sim/cris/asm/testutils.inc (test_move_cc): Add missing call toHans-Peter Nilsson14-31/+225
test_cc. * sim/cris/asm/asr.ms: Correct expected condition code flags. * sim/cris/asm/boundr.ms: Ditto. * sim/cris/asm/dstep.ms: Ditto. * sim/cris/asm/lsr.ms: Ditto. * sim/cris/asm/movecr.ms: Ditto. * sim/cris/asm/mover.ms: Ditto. * sim/cris/asm/neg.ms: Ditto. Use test_cc, not test_move_cc. * sim/cris/asm/op3.ms: Check the condition code flags after the insn under test. * sim/cris/asm/movecrt10.ms: Update expected number of simulated cycles. * sim/cris/asm/movecrt32.ms: Ditto. * sim/cris/asm/jsr.ms: Don't use local label 8. * sim/cris/asm/nonvcv32.ms: New test.
2007-10-22 * cris/arch.c, cris/arch.h, cris/cpuall.h, cris/cpuv10.c,Hans-Peter Nilsson19-222/+265
cris/cpuv10.h, cris/cpuv32.c, cris/cpuv32.h, cris/cris-desc.c, cris/cris-desc.h, cris/cris-opc.h, cris/decodev10.c, cris/decodev10.h, cris/decodev32.c, cris/decodev32.h, cris/modelv10.c, cris/modelv32.c, cris/semcrisv10f-switch.c, cris/semcrisv32f-switch.c: Regenerate.
2007-10-15 * NEWS: Document target described register support for PowerPC.Daniel Jacobowitz2-5/+14
* ppc-tdep.h: Remove ppc_spr constants. (struct gdbarch_tdep): Remove regs, ppc_sr0_regnum, and ppc_builtin_type_vec128 members. (PPC_R0_REGNUM, PPC_F0_REGNUM, PPC_PC_REGNUM, PPC_MSR_REGNUM) (PPC_CR_REGNUM, PPC_LR_REGNUM, PPC_CTR_REGNUM, PPC_XER_REGNUM) (PPC_FPSCR_REGNUM, PPC_MQ_REGNUM, PPC_SPE_UPPER_GP0_REGNUM) (PPC_SPE_ACC_REGNUM, PPC_SPE_FSCR_REGNUM, PPC_VR0_REGNUM) (PPC_VSCR_REGNUM, PPC_VRSAVE_REGNUM, PPC_NUM_REGS): New constants. * rs6000-tdep.c: Include preparsed descriptions. (init_sim_regno_table): Do not iterate over pseudo registers. Look up segment registers by name. Use sim_spr_register_name for SPRs. (rs6000_register_sim_regno): Call init_sim_regno_table here. (rs6000_builtin_type_vec128): Delete. (rs6000_register_name): Only handle SPE pseudo registers and upper halves. Call tdesc_register_name for everything else. (rs6000_register_type): Delete. Replace with... (rs6000_pseudo_register_type): ...this new function. Only handle SPE pseudo registers. (rs6000_register_reggroup_p): Delete. Replace with... (rs6000_pseudo_register_reggroup_p): ...this new function. Only handle SPE pseudo registers. (rs6000_convert_register_p): Use ppc_fp0_regnum instead of "struct reg". (rs6000_register_to_value, rs6000_value_to_register): Remove check of reg->fpr. (e500_register_reggroup_p): Delete. (STR, R, R4, R8, R16, F, P8, R32, R64, R0, A4, S, S4, SN4, S64) (COMMON_UISA_REGS, PPC_UISA_SPRS, PPC_UISA_NOFP_SPRS) (PPC_SEGMENT_REGS, PPC_OEA_SPRS, PPC_ALTIVEC_REGS, PPC_SPE_GP_REGS) (PPC_SPE_UPPER_GP_REGS, PPC_EV_PSEUDO_REGS): Delete macros. (registers_powerpc, registers_403, registers_403GC, registers_505) (registers_860, registers_601, registers_602, registers_603) (registers_604, registers_750, registers_7400, registers_e500): Delete variables. (struct variant): Delete nregs, npregs, num_tot_regs, and regs. Add tdesc. (tot_num_registers, num_registers, num_pseudo_registers): Delete. (variants): Delete outdated comment. Use standard target descriptions instead of "struct reg" arrays. (init_variants): Delete. (rs6000_gdbarch_init): Do not guess word size from the BFD architecture if we have a target description. Select a variant before creating a new architecture. Use the variant's target description if the target did not define a register layout. Validate target-supplied registers. Reject mismatches. Use fixed register numbers and new constants instead of magic numbers. Call set_gdbarch_ps_regnum. Call tdesc_use_registers. (_initialize_rs6000_tdep): Initialize the preparsed target descriptions. * target-descriptions.c (tdesc_predefined_types): Add int128 and uint128. (tdesc_find_register_early): New function. (tdesc_numbered_register): Use it. (tdesc_register_size): New function. (tdesc_use_registers): Take a target_desc argument. Do not use gdbarch_target_desc. * target-descriptions.h (tdesc_use_registers): Update prototype and comment. (tdesc_register_size): New prototype. * Makefile.in (powerpc_32_c, powerpc_403_c, powerpc_403gc_c) (powerpc_505_c, powerpc_601_c, powerpc_602_c, powerpc_603_c) (powerpc_604_c, powerpc_64_c, powerpc_7400_c, powerpc_750_c) (powerpc_860_c, powerpc_e500_c, rs6000_c): New macros. (rs6000-tdep.o): Update. * arm-tdep.c (arm_gdbarch_init): Update call to tdesc_use_registers. * m68k-tdep.c (m68k_gdbarch_init): Likewise. * mips-tdep.c (mips_gdbarch_init): Likewise. * gdb.texinfo (Predefined Target Types): Add int128 and uint128. (Standard Target Features): Add PowerPC features. * gdb.xml/tdesc-regs.exp: Add PowerPC support. * sim-ppc.h (sim_spr_register_name): New prototype. * gdb-sim.c (regnum2spr): Rename to... (sim_spr_register_name): ... this. Make global.
2007-10-112007-10-11 Jesper Nilsson <jesper.nilsson@axis.com>Daniel Jacobowitz6-8/+60
* callback.c (cb_is_stdin, cb_is_stdout, cb_is_stderr): Add functions. * syscall.c (cb_syscall): Test for stdin/out/err, not just fd 0/1/2. 2007-10-11 Jesper Nilsson <jesper.nilsson@axis.com> * callback.h (cb_is_stdin, cb_is_stdout, cb_is_stderr): Add prototypes. 2007-10-11 Jesper Nilsson <jesper.nilsson@axis.com> * sim/cris/c/freopen2.c: Added testcase.
2007-10-112007-10-11 Jesper Nilsson <jesper.nilsson@axis.com>Daniel Jacobowitz3-1/+13
* callback.c (cb_is_stdin): Add. * syscall.c (cb_syscall): Test for stdin, not just fd 0. 2007-10-11 Jesper Nilsson <jesper.nilsson@axis.com> * callback.h (cb_is_stdin): Add prototype.
2007-10-082007-09-24 Andrew Stubbs <andrew.stubbs@st.com>Denis Pilat2-0/+8
* gencode.c (tab): Add RAISE_EXCEPTION_IF_IN_DELAY_SLOT to the definition of PC relative 'mov.l'/'mov.w' and also 'mova'.
2007-10-07sim/mips/Richard Sandiford2-7/+17
* mips.igen (ll): Fix mask for WITH_TARGET_WORD_BITSIZE == 32. (sc, swxc1): Likewise. Also fix big-endian and reverse-endian shifts for that case.
2007-09-04* interp.c (options enum): Add OPTION_INFO_MEMORY.Nick Clifton2-0/+56
(display_mem_info): New static variable. (mips_option_handler): Handle OPTION_INFO_MEMORY. (mips_options): Add info-memory and memory-info. (sim_open): After processing the command line and board specification, check display_mem_info. If it is set then call the real handler for the --memory-info command line switch.
2007-09-04 * sim/ppc/emul_bugapi.c (emul_bugapi_create): quote the fileJerome Guitton2-2/+12
name property before parsing it.
2007-08-28 * compare_igen_models: Change license to GPL version 3.Joel Brobecker2-7/+10
2007-08-28 * configure.ac: Change license of multi-run.c to GPL version 3.Joel Brobecker3-8/+11
* configure: Regenerate.
2007-08-28 * lf.c (lf_print__gnu_copyleft): Change license to GPL version 3.Joel Brobecker2-6/+8
2007-08-28 * testutils.inc: Change license to GPL version 3.Joel Brobecker5-20/+23
* utils-dsp.inc: Change license to GPL version 3. * utils-fpu.inc: Change license to GPL version 3. * utils-mdmx.inc: Change license to GPL version 3.
2007-08-24 Switch the license of all files explicitly copyright the FSFJoel Brobecker381-2073/+1572
to GPLv3.
2007-08-10* sim-memopt.c (memory_options): Mention that the memory-size switch accepts ↵Nick Clifton3-7/+47
suffixes. (parse_size): Handle a suffix on the size value. * sim-options.c (standard_options): Mention that the mem-size switch accepts suffixes. (standard_option_handler): Handle a suffix on the size value.
2007-07-032007-07-03 Yoshinori Sato <ysato@users.sourceforge.jp>Daniel Jacobowitz2-1/+6
* compile.c (sim_resume): Fix the last byte of ARGV for SYS_CMDLINE.
2007-06-28sim/mips/Richard Sandiford3-36/+44
* configure.ac, configure: Revert last patch.
2007-06-26sim/mips/Richard Sandiford3-40/+44
* configure.ac (sim_mipsisa3264_configs): New variable. (mipsis32*-*-, mipsisa32r2*-*-*, mips64*-*-*, mips64r2*-*-*): Make every configuration support all four targets, using the triplet to determine the default. * configure: Regenerate.
2007-06-25Changelog typo fix.Daniel Jacobowitz1-1/+1
2007-06-25sim/mips/Richard Sandiford2-0/+5
* Makefile.in (m16_run.o): New rule.
2007-05-15 * mips3264r2.igen (DSHD): Fix compile warning.Thiemo Seufer2-2/+6
2007-05-14 * mips.igen (ALNV.PS, CEIL.L.fmt, CVT.L.fmt, CVT.PS.S, CVT.S.PL,Thiemo Seufer2-0/+32
CVT.S.PU, FLOOR.L.fmt, LDXC1, LUXC1, LWXC1, MADD.fmt, MSUB.fmt, NMADD.fmt, NMSUB.fmt, PLL.PS, PLU.PS, PREFX, PUL.PS, PUU.PS, RECIP.fmt, ROUND.L.fmt, RSQRT.fmt, SWXC1, TRUNC.L.fmt): Add support for mips32r2.
2007-03-27Add "make pdf" and "make install-pdf", from Brooks MosesDaniel Jacobowitz2-0/+5
<brooks.moses@codesourcery.com>.
2007-03-022007-03-02 Andrew Stubbs <andrew.stubbs@st.com>Daniel Jacobowitz2-3/+13
* gencode.c (tab): Correct pre-decrement instructions when m == n.
2007-03-01 * mips.igen (MFHI, MFLO, MTHI, MTLO): Restore support for mips32Thiemo Seufer2-0/+13
and mips64.
2007-02-27 * armos.c (SWIflen): Do not treate file descriptor zero asMark Mitchell2-1/+6
special.
2007-02-20 * dsp.igen: Update copyright notice.Thiemo Seufer3-7/+13
* dsp2.igen: Fix copyright notice.
2007-02-20 [ gas/ChangeLog ]Thiemo Seufer11-92/+13385
* config/tc-mips.c (mips_set_options, mips_opts, file_ase_dspr2, ISA_SUPPORTS_DSPR2_ASE, MIPS_CPU_ASE_DSPR2): Add DSP R2 ASE support. (macro_build): Add case '2'. (macro): Expand M_BALIGN to nop, packrl.ph or balign. (validate_mips_insn): Add support for balign instruction. (mips_ip): Handle DSP R2 instructions. Support balign instruction. (OPTION_DSPR2, OPTION_NO_DSPR2, OPTION_COMPAT_ARCH_BASE, md_parse_option, mips_after_parse_args): Add -mdspr2 and -mno-dspr2 command line options. (s_mipsset): Add support for .set dspr2 and .set nodspr2 directives. (md_show_usage): Add -mdspr2 and -mno-dspr2 help output. * doc/c-mips.texi, doc/as.texinfo: Document -mdspr2, -mno-dspr2, .set dspr2, .set nodspr2. [ gas/testsuite/ChangeLog ] * gas/mips/mips32-dspr2.s, gas/mips/mips32-dspr2.d: New test for DSP R2. * gas/mips/mips.exp: Run new test. [ include/opcode/Changelog ] * mips.h (OP_SH_BP, OP_MASK_BP): Add support for balign instruction. (INSN_DSPR2): Add flag for DSP R2 instructions. (M_BALIGN): New macro. [ opcodes/ChangeLog ] * mips-dis.c (mips_arch_choices): Add DSP R2 support. (print_insn_args): Add support for balign instruction. * mips-opc.c (D33): New shortcut for DSP R2 instructions. (mips_builtin_opcodes): Add DSP R2 instructions. [ sim/mips/ChangeLog ] * Makefile.in (IGEN_INCLUDE): Add dsp2.igen. * configure.ac (mips*-sde-elf*, mipsisa32r2*-*-*, mipsisa64r2*-*-*): Add dsp2 to sim_igen_machine. * configure: Regenerate. * dsp.igen (do_ph_op): Add MUL support when op = 2. (do_ph_mulq): New function to support mulq_rs.ph and mulq_s.ph. (mulq_rs.ph): Use do_ph_mulq. (MFHI, MFLO, MTHI, MTLO): Move these instructions to mips.igen. * mips.igen: Add dsp2 model and include dsp2.igen. (MFHI, MFLO, MTHI, MTLO): Extend these instructions for for *mips32r2, *mips64r2, *dsp. (MADD, MADDU, MSUB, MSUBU, MULT, MULTU): Extend these instructions for *mips32r2, *mips64r2, *dsp2. * dsp2.igen: New file for MIPS DSP REV 2 ASE. [ sim/testsuite/sim/mips/ChangeLog ] * basic.exp: Run the dsp2 test. * utils-dsp.inc (dspckacc_astio, dspck_tsimm): New macro. * mips32-dsp2.s: New test.
2007-02-20gdb/Daniel Jacobowitz2-2/+5
* MAINTAINERS: Disable -Werror for cris simulator. Build sparc64-solaris2.10 instead of the broken sparc-elf. * solib-frv.c: Include "solib.h". * Makefile.in (solib-frv.o): Update. * mt-tdep.c (mt_gdbarch_init): Correct typo in floatformats patch. * xtensa-tdep.c (xtensa_regset_from_core_section): Cast size_t to int. (xtensa_frame_this_id, xtensa_frame_prev_register) (xtensa_push_dummy_call): Use %p. sim/v850/ * Makefile.in (interp.o): Uncomment and update.
2007-02-20 * cris/traps.c (dump_statistics): Change format for cycle numbersHans-Peter Nilsson2-19/+24
to %llu and cast parameters to unsigned long long.
2007-02-19 * mips.igen (jalr.hb, jr.hb): Add decoder for mip32r2/mips64r2Thiemo Seufer2-5/+28
jumps with hazard barrier.
2007-02-19 * interp.c (sim_monitor): Flush stdout and stderr file descriptorsThiemo Seufer2-0/+10
after each call to sim_io_write.
2007-02-19 (ColdReset): Set CP0 Config0 to reflect the address size supportedThiemo Seufer2-4/+61
by this simulator. (decode_coproc): Recognise additional CP0 Config registers correctly.
2007-02-19 * cp1.c (value_fpr): Don't inherit existing FPR_STATE forThiemo Seufer4-54/+190
uninterpreted formats. If fmt is one of the uninterpreted types don't update the FPR_STATE. Handle fmt_uninterpreted_32 like fmt_word, and fmt_uninterpreted_64 like fmt_long. (store_fpr): When writing an invalid odd register, set the matching even register to fmt_unknown, not the following register. * interp.c (sim_open): If STATE_MEM_SIZE isn't set then set it to the the memory window at offset 0 set by --memory-size command line option. (sim_store_register): Handle storing 4 bytes to an 8 byte floating point register. (sim_fetch_register): Likewise for reading 4 bytes from an 8 byte register. (sim_monitor): When returning the memory size to the MIPS application, use the value in STATE_MEM_SIZE, not an arbitrary hardcoded value. (cop_lw): Don' mess around with FPR_STATE, just pass fmt_uninterpreted_32 to StoreFPR. (cop_sw): Similarly. (cop_ld): Pass fmt_uninterpreted_64 not fmt_uninterpreted. (cop_sd): Similarly. * mips.igen (not_word_value): Single version for mips32, mips64 and mips16.
2007-02-19 * interp.c (MEM_SIZE): Increase default memory size from 2 to 8Thiemo Seufer2-1/+7
MBytes.
2007-02-17 * configure.ac (mips*-sde-elf*): Move in front of generic machineThiemo Seufer3-8/+10
configuration. * configure: Regenerate.
2007-02-172007-02-17 Thiemo Seufer <ths@mips.com>Thiemo Seufer5-17/+39
[ sim/mips/ChangeLog ] * configure.ac (mips*-sde-elf*, mipsisa32r2*-*-*, mipsisa64r2*-*-*): Add mdmx to sim_igen_machine. (mipsisa64*-*-*): Likewise. Remove dsp. (mipsisa32*-*-*): Remove dsp. * configure: Regenerate. [ sim/testsuite/sim/mips/ChangeLog ] * basic.exp: Add case for mips*-sde-elf*. (mdmxmodels): Run mdmx tests only on mdmx capable configurations.
2007-02-16 * Makefile.in (FLAGS_TO_PASS, TARGET_FLAGS_TO_PASS): Add RUNTEST.Thiemo Seufer2-0/+6
2007-02-15* armemu.c (handle_v6_insn): Fix typo in sign extension test of the sext and ↵Nick Clifton2-1/+6
sxtah instructions.
2007-02-13 * configure.ac: Add mips*-sde-elf* target.Thiemo Seufer3-14/+37
* configure: Regenerate.
2007-02-13 * mips32-dsp.s: Run DSP testcase only for release 2 architecture.Thiemo Seufer2-1/+5
2007-02-13 * mdmx-ob.s: Delete extraneous include.Thiemo Seufer2-1/+4
2007-02-08 Reported by timeless@gmail.com:Daniel Jacobowitz2-1/+6
* gdb/target.c (target_flash_erase): Do not return void value. (target_flash_done): Likewise. * gdb/cli/cli-cmds.c (source_command): Likewise. Reported by timeless@gmail.com: * wrapper.c (sim_target_parse_arg_array): Do not return void value.