aboutsummaryrefslogtreecommitdiff
path: root/sim/mips
AgeCommit message (Collapse)AuthorFilesLines
1998-05-07 * Roll Alpha modifications into devo for sky-gpuif*/ sky-gs*/ interp.cPatrick Macdonald1-0/+52
* Complete and informative details can be found in ChangeLog.sky
1998-05-07* Changes to sky PKE sim to calculate word-precision source-addressesFrank Ch. Eigler1-5/+21
for VU memory tracking tables. Thu May 7 12:15:41 1998 Frank Ch. Eigler <fche@cygnus.com> * sky-pke.c (pke_pcrel_operand_bits): Compute word-resolution source address for UNPACK into VU MEM. (pke_code_mpg): Ditto for MPG into VU uMEM.
1998-05-07Initial Breakpoint support:Ron Unrau1-2/+4
* sim-main.h: (struct _sim_cpu): add cur_device field. Define cur_device values, breakpoint value, and SIM_ENGINE_HALT_HOOK * interp.c (sim_open): initialize cur_device * sky-engine.c (engine_run): use cur_device to set current_cpu * sky-libvpe.c (vpecallms_cycle): add check for breakpoint * sky-hardware.h: delete NUMBER_CPUS * sky-hardware.c (attach_devices): create a memory mapped comm area for GDB/SIM interactions misc: * sky-vu.c ({read,write}_vu_misc_reg): do default behavior for unknown regs instead of sim_io_error. MP reg is float (was missing cast).
1998-05-07 * sim-main.h (INSN_NAME): New arg `cpu'.Doug Evans2-2/+33
1998-04-29 * sim-main.h, sky-libvpe.c: r59fp_op* functions were called withJames Lemke1-11/+12
1st parm of wrong type. Converted remaining "/" to "FDiv". * interp.c: Make "--float-type host" the default.
1998-04-29Tue Apr 28 18:28:58 1998 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-0/+4
* common/aclocal.m4: call AM_EXEEXT in SIM_AC_COMMON, define AM_CYGWIN32 and AM_EXEEXT. * common/Make-common.in: set EXEEXT, add missing EXEEXTs to run and install-common rules. * common/configure: regenerate And update all subdirectory ChangeLogs and configure files.
1998-04-26 * configure: Regenerated to track ../common/aclocal.m4 changes.Tom Tromey5-138/+166
* config.in: Ditto. * acconfig.h: New file. * configure.in: Reverted change of Apr 24; use sinclude again.
1998-04-24 * configure: Regenerated to track ../common/aclocal.m4 changes.Tom Tromey3-58/+1797
* config.in: Ditto. * configure.in: Don't call sinclude.
1998-04-24* mips.igen (do_store_left): Pass 0 not NULL to store_memory.Andrew Cagney1-0/+4
1998-04-22Move target specific stuff from sim/common/sim-base.h to sim/mips/sim-main.hJames Lemke1-0/+11
1998-04-21r5900.igen, sim-main.h, sky-libvpe.c: Add run-time option --float-typeJames Lemke1-0/+19
1998-04-21configure.in, interp.c: Add configure option --with-sim-funit.James Lemke1-0/+20
1998-04-21Add configure option --with-sim-funit for sim & gdb.James Lemke1-0/+10
1998-04-21Fix sanitize tag. The proper keyword is "start-sanitize-*", notJason Molenda1-2/+2
"begin-sanitize-*".
1998-04-21Entry about changing sim_open missing from changelog.Andrew Cagney1-0/+2
1998-04-21Implement ERET instruction.Andrew Cagney3-12/+70
Add {signed,unsigned}_address type.
1998-04-21For new IGEN simulators, rewrite checks validating correct use of theAndrew Cagney5-100/+195
HI/LO registers. For old gencode simulator, delete all checks.
1998-04-17* Fixed data mangling problems in R5900 COP2 LQC2/SQC2 instructions.Frank Ch. Eigler2-12/+21
1998-04-16* Adapted R5900 COP2 interface code to clarified micro-mode interlockFrank Ch. Eigler2-4/+16
behavior.
1998-04-16o CVT.S.W and CVT.W.S were reversedAndrew Cagney1-0/+18
o When unpacking an r5900 FP value, was not treating IEEE-NaN's as very large values. o When packing an r5900 FP result from an infinite precision intermediate value was saturating to IEEE-MAX instead of r5900-MAX o The least significant bit of the FP status register did not stick to one.
1998-04-15TX19 uses igen by default.Andrew Cagney2-3/+9
1998-04-15* Changes to make interp.c compile under mips64r5900-sky-elf target.Frank Ch. Eigler2-2/+18
Wed Apr 15 12:41:18 1998 Frank Ch. Eigler <fche@cygnus.com> * interp.c (decode_coproc): Make COP2 branch code compile after igen signature changes.
1998-04-15Re-fix 32 bit DSRAV instruction.Andrew Cagney2-6/+25
Fix mips16 BRANCH, unsigned ADD/SUB and SRAV instructions.
1998-04-15Debug tx19 built from igen sources.Andrew Cagney5-85/+781
Rework ifetch{16,32} to match the more recent do_load function.
1998-04-14* Added interactive debugging for vector units, and a bunch of minorIan Carmichael1-0/+3
* things. See ChangeLog.sky for details. * * Modified Files: * .Sanitize ChangeLog.sky Makefile.in sky-libvpe.c sky-vu.c * sky-vu.h sky-vudis.c sky-vudis.h * Added Files: * sky-indebug.c sky-indebug.h sky-interact.c sky-interact.h * sky-console.c sky-console.h
1998-04-14Implement 32 bit MIPS16 instructions listed in m16.igen.Andrew Cagney6-2560/+1078
1998-04-13* Fixed a one-character typo in COP2 instruction synthesis.Frank Ch. Eigler2-1/+8
[ChangeLog] Mon Apr 13 16:28:52 1998 Frank Ch. Eigler <fche@cygnus.com> * interp.c (decode_coproc): Add proper 1000000 bit-string at top of VU lower instruction.
1998-04-09* Backed out week-old attempt at enabling quadword memory access onFrank Ch. Eigler3-13/+14
MIPS sim; added PKE sim code fixes. No COP2 testing progress today. [ChangeLog] Thu Apr 9 16:38:23 1998 Frank Ch. Eigler <fche@cygnus.com> * r5900.igen (LQC,SQC): Adapted code to DOUBLEWORD accesses instead of QUADWORD. * sim-main.h: Removed attempt at allowing 128-bit access. [ChangeLog.sky] Thu Apr 9 16:42:54 1998 Frank Ch. Eigler <fche@cygnus.com> * sky-pke.c (read_pke_pc): Corrected PKE PC calculation to word granularity.
1998-04-09* Fixed up blank lines in file.Ian Carmichael1-9/+1
1998-04-09* Temporarily change LOADDRMASK in sky build.Ian Carmichael1-0/+2
1998-04-08* R5900 sky COP2 testing continuing. Today only smallFrank Ch. Eigler3-3/+19
VCALLMS-related were found/fixed. [ChangeLog.sky] * sky-vu.c ({read,write}_vu_special_reg): Add CMSAR[01] as special registers for a VU. Behavior not as mandated. ({read,write}_vu_{misc,special}_reg): Create sim_io_error upon access to unknown register. Behavior not as mandated. * sky-vu.h (anonymous register numbering enum): Add CMSAR[01]. * sky-libvpe.c (indebug): Cache $ENV{'SKY_DEBUG'}. [ChangeLog] * Makefile.in (SIM_SKY_OBJS): Added sky-vudis.o. * interp.c (decode_coproc): Refer to VU CIA as a "special" register, not as a "misc" register. Aha. Add activity assertions after VCALLMS* instructions.
1998-04-08* Add sky-vudis.h, sky-vudis.c.Ian Carmichael1-1/+1
1998-04-07Keep sim-main.c and tx.igenAndrew Cagney1-0/+2
1998-04-07Keep sky-gs.[ch] if sky.Doug Evans1-0/+1
1998-04-07* R5900 COP2 sim testing in progress. The majority of instructions actuallyFrank Ch. Eigler2-2/+10
work! [ChangeLog.sky] * sky-vu.h (vu_device): Represent "macro instruction just stuffed into fetch buffer" condition with new "m" bit. Rename old "m" to "l". * sky-libvpe.c (indebug): Save snapshot of environment value; workaround for suspected memory corruption. (fetch_inst): Respect new "m" macro-instruction flag for reporting successful fetch to caller. (exec_inst): Disassemble instruction here instead of fetch time. Renamed old "m" -> "l" flag in VU state to track interlock release. (vpecallms_cycle): Call exec_inst only if fetch_inst did some work. * sky-vu.c (vu_attach, vu[01]_device): Revamped initialization to ensure complete clear of tail part of struct at attach time. (vu0_busy): Fix thinko. (vu0_macro_issue): Adapt to new "l" flag. (vu0_micro_interlock_released): Ditto. (write_vu_special_reg): Ditto. (read_vu_special_reg): Compute VBS0/VBS1 bits more explicitly. The other VU status bits are not yet computed. [ChangeLog] * interp.c (decode_coproc): Do not apply superfluous E (end) flag to upper code of generated VU instruction.
1998-04-07* R5900 COP2 is now ready for testing. Let loose the dogs!Frank Ch. Eigler3-5/+54
Mon Apr 6 19:55:56 1998 Frank Ch. Eigler <fche@cygnus.com> * interp.c (cop_[ls]q): Replaced stub with proper COP2 code. * sim-main.h (LOADADDRMASK): Redefine to allow 128-bit accesses for TARGET_SKY. * r5900.igen (SQC2): Thinko.
1998-04-05* R5900 COP2 function nearly complete. PKE sim now aware of new GPUIFFrank Ch. Eigler6-913/+349
masking facility for PATH3 transfers. [ChangeLog.sky] Sun Apr 5 12:11:45 1998 Frank Ch. Eigler <fche@cygnus.com> * sky-libvpe.c (exec-inst): Added "M" bit detection for upper instruction. * sky-pke.c (pke_check_stall): Added more assertions. (pke_code_mskpath3): Use new GPUIF M3P control register. * sky-pke.h (VU[01]_CIA): New macros that give VU CIA pseudo-register addresses. * sky-vu.h (vu_device, VectorUnitState): Merged structs. (VectorUnitState.mflag): New field. (VU_REG_{CMSAR0,CMSAR1,FBRST}) Added missing control registers. * sky-vu.c (vu0_busy): New function. (vu0_q_busy): New function. (vu0_macro_issue): New function. (vu0_micro_interlock_released): New function. (vu0_busy_in_{micro,macro}_mode): Deleted stubs. (vu0_macro_hazard_check): Deleted stubs. (vu_attach): Adapted code to merged device & state struct. (read_vu_special_reg): Compute VBS0/VBS1 bits in STAT register. [ChangeLog] start-sanitize-sky Sun Apr 5 12:05:44 1998 Frank Ch. Eigler <fche@cygnus.com> * interp.c (*): Adapt code to merged VU device & state structs. (decode_coproc): Execute COP2 each macroinstruction without pipelining, by stepping VU to completion state. Adapted to read_vu_*_reg style of register access. * mips.igen ([SL]QC2): Removed these COP2 instructions. * r5900.igen ([SL]QC2): Transplanted these COP2 instructions here. * sim-main.h (cop_[ls]q): Enclosed in TARGET_SKY guards. end-sanitize-sky
1998-04-05aclocal.m4: Don't enable inlining when cross-compiling.Andrew Cagney7-674/+769
mips/*: Tune mips simulator - allow all memory transfer code to be inlined.
1998-04-04Cleanup INLINE support for simulators using common framework.Andrew Cagney2-71/+102
Make IGEN responsible for co-ordinating inlining of generated files. By default, aclocal.m4 disabled all inlining.
1998-04-02 * sim-main.h: add vif registersRon Unrau2-146/+167
* interp.c: incorporate vif register load/store * sky-pke.[ch]: add register load/store routines * sku-vu.c: P register is float
1998-04-02Re-do load/store operations so that they work for both 32 and 64 bitAndrew Cagney5-19/+72
ISAs. Enable tx39 as igen again.
1998-04-02For mips get_mem_size call. Force the return of a 32 bit valueAndrew Cagney3-46/+16
regardless of the target's word bitsize.
1998-04-01sky-vu.[ch]: prototype decls, cast floats to ints before register transferRon Unrau2-54/+152
interp.c: integrate VU register read/writes sim-main.h : track tm-txvu.h
1998-04-01* You bop one on the head ... another one appears.Frank Ch. Eigler2-2/+12
Wed Apr 1 08:20:31 1998 Frank Ch. Eigler <fche@cygnus.com> * mips.igen (SQC2/LQC2): Make bodies sky-target-only also.
1998-03-31 * sky-dma.c: Clarify text in warning msg.James Lemke1-3/+27
* interp.c: Add global option "float-type". * sky-vu.h: Add SIM_DESC sd; to VectorUnitState for accessing global options.
1998-03-30* Continuing sky R5900 / COP2 work. Added extra sanitize tags to hideFrank Ch. Eigler3-61/+113
128-bit MIPS part. [ChangeLog] Mon Mar 30 18:41:43 1998 Frank Ch. Eigler <fche@cygnus.com> * interp.c (decode_coproc): Continuing COP2 work. (cop_[ls]q): Hide 128-bit COP2 more. * sim-main.h (COP_[LS]Q): Hide 128-bit COP2 more. [ChangeLog.sky] Mon Mar 30 18:44:15 1998 Frank Ch. Eigler <fche@cygnus.com> * sky-libvpe.c: Code too wide - ran indent on SCEI code. * sky-vu.h (vu0_busy*, vu0_macro*): New entry points for COP2 interface. * sky-vu.c (vu0_busy*, vu0_macro*): Stub functions for above.
1998-03-30 * configure.in (mipstx39*-*-*): Use gencode simulator ratherGavin Romig-Koch3-74/+76
than igen one. * configure : Rebuild.
1998-03-29* Oops, added #ifdef TARGET_SKY around R5900 COP2 implementation skeleton.Frank Ch. Eigler2-0/+10
1998-03-28* Modified sky PKE behavior according to new SCEI specs.Frank Ch. Eigler1-9/+11
1998-03-27* Inserted skeleton of R5900 COP2 simulation. Merged old vu[01].[ch] codeFrank Ch. Eigler12-506/+864
into single PKE-style vu.[ch]. [ChangeLog] Fri Mar 27 16:19:29 1998 Frank Ch. Eigler <fche@cygnus.com> start-sanitize-sky * Makefile.in (SIM_SKY_OBJS): Replaced sky-vu[01].o with sky-vu.o. * interp.c (sim_{load,store}_register): Use new vu[01]_device static to access VU registers. (decode_coproc): Added skeleton of sky COP2 (VU) instruction decoding. Work in progress. * mips.igen (LDCzz, SDCzz): Removed *5900 case for this overlapping/redundant bit pattern. (LQC2, SQC2): Added *5900 COP2 instruction skeleta. Work in progress. * sim-main.h (status_CU[012]): Added COP[n]-enabled flags for status register. end-sanitize-sky * interp.c (cop_lq, cop_sq): New functions for future 128-bit access to coprocessor registers. * sim-main.h (COP_LQ, COP_SQ): New macro front-ends for above. [ChangeLog.sky] * sky-engine.c (engine_run): Adapted from vu[01] -> vu merge. * sky-hardware.c (register_devices): Ditto * sky-pke.c (pke_fifo_*): Made these functions private again, now that the GPUIF code does not use them. * sky-pke.h (pke_fifo_*): Removed newly private declarations. * sky-vu.c (*): Major rework: merge of old sky-vu0.c and sky-vu1.c. Management of two VU devices parallels two PKEs. Work in progress. * sky-vu.h (*): Other half of merge. (vu_device): New struct, parallel to pke_device.