Age | Commit message (Collapse) | Author | Files | Lines |
|
* Complete and informative details can be found in ChangeLog.sky
|
|
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.
|
|
* 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).
|
|
|
|
1st parm of wrong type. Converted remaining "/" to "FDiv".
* interp.c: Make "--float-type host" the default.
|
|
* 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.
|
|
* config.in: Ditto.
* acconfig.h: New file.
* configure.in: Reverted change of Apr 24; use sinclude again.
|
|
* config.in: Ditto.
* configure.in: Don't call sinclude.
|
|
|
|
|
|
|
|
|
|
|
|
"begin-sanitize-*".
|
|
|
|
Add {signed,unsigned}_address type.
|
|
HI/LO registers. For old gencode simulator, delete all checks.
|
|
|
|
behavior.
|
|
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.
|
|
|
|
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.
|
|
Fix mips16 BRANCH, unsigned ADD/SUB and SRAV instructions.
|
|
Rework ifetch{16,32} to match the more recent do_load function.
|
|
* 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
|
|
|
|
[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.
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
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
|
|
mips/*: Tune mips simulator - allow all memory transfer code to be inlined.
|
|
Make IGEN responsible for co-ordinating inlining of generated files.
By default, aclocal.m4 disabled all inlining.
|
|
* interp.c: incorporate vif register load/store
* sky-pke.[ch]: add register load/store routines
* sku-vu.c: P register is float
|
|
ISAs.
Enable tx39 as igen again.
|
|
regardless of the target's word bitsize.
|
|
interp.c: integrate VU register read/writes
sim-main.h : track tm-txvu.h
|
|
Wed Apr 1 08:20:31 1998 Frank Ch. Eigler <fche@cygnus.com>
* mips.igen (SQC2/LQC2): Make bodies sky-target-only also.
|
|
* interp.c: Add global option "float-type".
* sky-vu.h: Add SIM_DESC sd; to VectorUnitState for accessing
global options.
|
|
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.
|
|
than igen one.
* configure : Rebuild.
|
|
|
|
|
|
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.
|