Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2022-02-04 | sim: mips: Add simulator support for mips32r6/mips64r6 | Faraz Shahbazker | 1 | -0/+2 | |
2022-02-01 Ali Lown <ali.lown@imgtec.com> Andrew Bennett <andrew.bennett@imgtec.com> Dragan Mladjenovic <dragan.mladjenovic@rt-rk.com> Faraz Shahbazker <fshahbazker@wavecomp.com> sim/common/ChangeLog: * sim-bits.h (EXTEND9, EXTEND18 ,EXTEND19, EXTEND21, EXTEND26): New macros. sim/mips/ChangeLog: * Makefile.in (IGEN_INCLUDE): Add mips3264r6.igen. * configure: Regenerate. * configure.ac: Support mipsisa32r6 and mipsisa64r6. (sim_engine_run): Pick simulator model from processor specified in e_flags. * cp1.c (value_fpr): Handle fmt_dc32. (fp_unary, fp_binary): Zero initialize locals. (update_fcsr, fp_classify, fp_rint, fp_r6_cmp, inner_fmac, fp_fmac, fp_min, fp_max, fp_mina, fp_maxa, fp_fmadd, fp_fmsub): New functions. (sim_fpu_class_mips_mapping): New. * cp1.h (fcsr_ABS2008_mask, fcsr_ABS2008_shift): New define. * interp.c (MIPSR6_P): New. (load_word): Allow unaligned memory access for MIPSR6. * micromips.igen (sc, scd): Adapt to new do_sc* helper signature. * mips.igen: Add *r6 models. (signal_if_cti, forbiddenslot32): New helpers. (delayslot32): Use signal_if_cti. (do_sc, do_scd); Add store_ll_bit parameter. (sc, scd): Adapt to previous change. (nal, beq, bal): New definitions for *r6. (sll): Split nop and ssnop cases into ... (nop, ssnop): New definitions. (loadstore_ea): Use the 32-bit compatibility adressing. (cache): Split logic into ... (do_cache): New helper. (check_fpu): Select IEEE 754-2008 mode for R6. (not_word_value, unpredictable, check_mt_hilo, check_mf_hilo, check_multi_hilo, check_div_hilo, check_u64, do_dmfc1b, add, li, addu, and, andi, bgez, bgtz, blez, bltz, bne, break, dadd, daddiu, daddu, dror, dror32, drorv, dsll, dsll32, dsllv, dsra, dsra32, dsrav, dsrl, dsrl32, dsub, dsubu, j, jal, jalr, jalr.hb, lb, lbu, ld, lh, lhu, lui, lw, lwu, nor, or, ori, ror, rorv, sb, sd, sh, sll, sllv, slt, slti, sltiu, sltu, sra, srav, srl, srlv, sub, subu, sw, sync, syscall, teq, tge, tgeu, tlt, tltu, tne, xor, xori, check_fmt_p, do_load_double, do_store_double, abs.FMT, add.FMT, ceil.l.FMT, ceil.w.FMT, cfc1, ctc1, cvt.d.FMT, cvt.l.FMT, cvt.w.FMT, div.FMT, dfmc1, dmtc1, floor.l.FMT, floor.w.FMT, ldc1, lwc1, mfc1, mov.FMT, mtc1, mul.FMT, recip.FMT, round.l.FMT, round.w.FMT, rsqrt.FMT, sdc1, sqrt.FMT, sub.FMT, swc1, trunc.l.FMT, trunc.w.FMT, bc0f, bc0fl, bc0t, bc0tl, dmfc0, dmtc0, eret, mfc0, mtc0, cop, tlbp, tlbr, tlbwi, tlbwr): Enable on *r6 models. * mips3264r2.igen (dext, dextm, dextu, di, dins, dinsm, dinsu, dsbh, dshd, ei, ext, mfhc1, mthc1, ins, seb, seh, synci, rdhwr, wsbh): Likewise. * mips3264r6.igen: New file. * sim-main.h (FP_formats): Add fmt_dc32. (FORBIDDEN_SLOT): New macros. (simFORBIDDENSLOT, FP_R6CMP_*, FP_R6CLASS_*): New defines. (fp_r6_cmp, fp_classify, fp_rint, fp_min, fp_max, fp_mina, fp_maxa, fp_fmadd, fp_fmsub): New declarations. (R6Compare, Classify, RoundToIntegralExact, Min, Max, MinA, MaxA, FusedMultiplyAdd, FusedMultiplySub): New macros. Wrapping previous declarations. sim/testsuite/mips/ChangeLog: * basic.exp: Add r6-*.s tests. (run_r6_removed_test): New function. (run_endian_tests): New function. * hilo-hazard-3.s: Skip for mips*r6. * r2-fpu.s: New test. * r6-64.s: New test. * r6-branch.s: New test. * r6-forbidden.s: New test. * r6-fpu.s: New test. * r6-llsc-dp.s: New test. * r6-llsc-wp.s: New test. * r6-removed.csv: New test. * r6-removed.s: New test. * r6.s: New test. * utils-r6.inc: New inc. | |||||
2022-02-04 | sim: Allow toggling of quiet NaN-bit semantics | Faraz Shahbazker | 1 | -0/+4 | |
IEEE754-1985 specifies the top bit of the mantissa as an indicator of signalling vs. quiet NaN, but does not define the precise semantics. Most architectures treat this bit as indicating quiet NaN, but legacy (pre-R6) MIPS goes the other way and treats it as signalling NaN. This used to be controlled by a macro that was only defined for MIPS. This patch replaces the macro with a variable to track the current semantics of the NaN bit and allows differentiation between older (pre-R6) and and newer MIPS cores. 2022-02-01 Faraz Shahbazker <fshahbazker@wavecomp.com> sim/common/ChangeLog: * sim-fpu.c (_sim_fpu): New. (pack_fpu, unpack_fpu): Allow reversal of quiet NaN semantics. * sim-fpu.h (sim_fpu_state): New struct. (_sim_fpu): New extern. (sim_fpu_quiet_nan_inverted): New define. sim/mips/ChangeLog: * cp1.h (fcsr_NAN2008_mask, fcsr_NAN2008_shift): New. * mips.igen (check_fpu): Select default quiet NaN mode for legacy MIPS. * sim-main.h (SIM_QUIET_NAN_NEGATED): Remove. | |||||
2022-01-01 | sim: mips: clean up bad style/whitespace | Mike Frysinger | 1 | -1/+1 | |
This doesn't fix all the problems, but grabs a bunch of the more obvious ones. | |||||
2022-01-01 | Automatic Copyright Year update after running gdb/copyright.py | Joel Brobecker | 1 | -1/+1 | |
This commit brings all the changes made by running gdb/copyright.py as per GDB's Start of New Year Procedure. For the avoidance of doubt, all changes in this commits were performed by the script. | |||||
2021-01-01 | Update copyright year range in all GDB files | Joel Brobecker | 1 | -1/+1 | |
This commits the result of running gdb/copyright.py as per our Start of New Year procedure... gdb/ChangeLog Update copyright year range in copyright header of all GDB files. | |||||
2020-01-01 | Update copyright year range in all GDB files. | Joel Brobecker | 1 | -1/+1 | |
gdb/ChangeLog: Update copyright year range in all GDB files. | |||||
2019-01-01 | Update copyright year range in all GDB files. | Joel Brobecker | 1 | -1/+1 | |
This commit applies all changes made after running the gdb/copyright.py script. Note that one file was flagged by the script, due to an invalid copyright header (gdb/unittests/basic_string_view/element_access/char/empty.cc). As the file was copied from GCC's libstdc++-v3 testsuite, this commit leaves this file untouched for the time being; a patch to fix the header was sent to gcc-patches first. gdb/ChangeLog: Update copyright year range in all GDB files. | |||||
2018-01-02 | Update copyright year range in all GDB files | Joel Brobecker | 1 | -1/+1 | |
gdb/ChangeLog: Update copyright year range in all GDB files | |||||
2017-01-01 | update copyright year range in GDB files | Joel Brobecker | 1 | -1/+1 | |
This applies the second part of GDB's End of Year Procedure, which updates the copyright year range in all of GDB's files. gdb/ChangeLog: Update copyright year range in all GDB files. | |||||
2016-01-01 | GDB copyright headers update after running GDB's copyright.py script. | Joel Brobecker | 1 | -1/+1 | |
gdb/ChangeLog: Update year range in copyright notice of all files. | |||||
2015-01-01 | Update year range in copyright notice of all files owned by the GDB project. | Joel Brobecker | 1 | -1/+1 | |
gdb/ChangeLog: Update year range in copyright notice of all files. | |||||
2014-01-01 | Update Copyright year range in all files maintained by GDB. | Joel Brobecker | 1 | -1/+1 | |
2013-01-01 | Update years in copyright notice for the GDB files. | Joel Brobecker | 1 | -2/+1 | |
Two modifications: 1. The addition of 2013 to the copyright year range for every file; 2. The use of a single year range, instead of potentially multiple year ranges, as approved by the FSF. | |||||
2012-01-04 | Copyright year update in most files of the GDB Project. | Joel Brobecker | 1 | -2/+2 | |
gdb/ChangeLog: Copyright year update in most files of the GDB Project. | |||||
2011-01-01 | run copyright.sh for 2011. | Joel Brobecker | 1 | -1/+1 | |
2010-01-01 | Update copyright notices to add year 2010. | Joel Brobecker | 1 | -1/+1 | |
2009-01-14 | Update the copyright notice of some of the files I missed | Joel Brobecker | 1 | -1/+2 | |
in the previous copyright update. | |||||
2008-01-01 | Updated copyright notices for most files. | Daniel Jacobowitz | 1 | -1/+1 | |
2007-08-24 | Switch the license of all files explicitly copyright the FSF | Joel Brobecker | 1 | -5/+4 | |
to GPLv3. | |||||
2007-01-09 | Copyright updates for 2007. | Daniel Jacobowitz | 1 | -1/+1 | |
2003-05-02 | [igen/ChangeLog] | Chris Demetriou | 1 | -1/+2 | |
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. | |||||
2002-06-07 | 2002-06-07 Chris Demetriou <cgd@broadcom.com> | Chris Demetriou | 1 | -0/+1 | |
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-07 | 2002-06-06 Chris Demetriou <cgd@broadcom.com> | Chris Demetriou | 1 | -0/+81 | |
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. |