1
0
mirror of https://github.com/prirun/p50em.git synced 2026-02-23 15:12:14 +00:00
Commit Graph

16 Commits

Author SHA1 Message Date
Jim
c4f7df2944 Fine tune eap supercache, other performance optimizations +
Change tracing to show when supercache is used
Symbolic names for supercache entries
Added supercache entries for sector 0 and PB (different from RP)
Add invalidate_brp to invalidate supercache
Separate get16trap (WILL trap) from get16t (MIGHT trap)
Use supercache in get32 and various get/put routines
2007-09-10 00:00:00 -04:00
Jim
84ae6fc905 eap register and gvp->brp page cache: 5 entries for PB, SB, LB, XB, "other"
removed "char unmodified" from STLB; uses access[2] instead, to
  avoid a multiply instruction in mapva (can use shift now)
use ea instead of pa when checking for page crossing in get32,
  in preparation for read VA caching, like iget16 uses
2007-09-09 00:00:00 -04:00
Jim
6afd8f2c52 added inline to shift procedures (reduced the executable size, + faster) +
changed gvp->prevppa from Prime memory offset to mem[] pointer
added inline to tch, tcr, adlr
added -DNOIDLE to make BDX use CPU cycles instead of sleeping
changed ea64v.h so ixy avoids branching (hot spot in Shark)
2007-09-07 00:00:00 -04:00
Jim
24179fd2ac added dispatch table for SRV memory references instructions vs switch +
inlined and simplified iget16 instruction fetch
moved pio test to R-mode path
moved and simplified effective address calculation switch stmt
removed mode switch stmt for EA calcs, changed to cascaded if
moved iget16 static vars to gvp, for inlining
changed mapva and iget16 so that the normal path is predicted
2007-09-05 00:00:00 -04:00
Jim
3e4c98c296 Added gvp->livereglim to speed up "live register" addressing mode tests 2007-09-02 00:00:00 -04:00
Jim
fdb4d4ae4c New ea64v, missing memory check, #ifdef FAST 2007-09-02 00:00:00 -04:00
Jim
0ea78958b0 Backout ea64v changes, PCL fixes, disabled curtrack/maxtrack check in devdisk 2007-09-01 00:00:00 -04:00
Jim
62b8229961 gvp dedicated global variable register, iget16 page cache 2007-08-31 00:00:00 -04:00
Jim
7601dcb718 INCRP, ADDRP macros, code optimization
added INCRP macro - now does 32-bit increments of RP for speed
added ADDRP macro to return RP incremented by n (CGT)
changed globals to static (didn't help speed much - thought it might)
moved around some functions
changed shift instructions to create bitmask at runtime (faster)
manually inlined mathexception (but used inline keyword in later revs)
2007-08-25 00:00:00 -04:00
Jim
8c0020d0dd get/put16t, crs/crsl macro, PowerPC register variables, tape bugs
changed get16/put16 to get16t/put16t where address trap might occur
this eliminates ea<0 test for all other non-trappable get16/put16 calls
changed crs & crsl to macros to reference a union vs 2 distinct variables
changed crs and RP to be register variables (regs.h)
fixed tape drive problems
2007-08-23 00:00:00 -04:00
Jim
319b868345 added ea32i.h include file, ea64v, devamlc, PNC
ea64v never needs to return a bit offset
added devamlc feature to set room available in user's input buffer
misc PNC changes (not working yet)
2007-04-19 00:00:00 -04:00
Jim
ec2ba390d0 MPY, DIV, devasr, devamlc changes +
for R-mode MPY, do the math THEN generate the exception
DIV exception handling was wrong, code was wrong too
a few devasr changes
changed devamlc to always turn off parity instead of flipping it
2007-02-25 00:00:00 -05:00
Jim
4b76c2ea1d changed fprintf(stderr... to TRACE macro
writes tracing to a buffered log file instead of stderr
added clear of first 32K of physical memory to master clear
changed all exit() calls to fatal() calls
more changes to the devmt tape driver
2007-02-18 00:00:00 -05:00
Jim
4703c0b8fd extensive changes to devmt tape controller emulation
changed to use iget16 instead of get16 to fetch instructions
added test in notify for semaphore overflow - call fatal()
2007-02-07 00:00:00 -05:00
Jim
6146f076fc Enhanced load map routines to print nearest symbol
Boots rev 20 (driveb) using --ss 14314, gets an uncorrected
disk read error, then hangs.
It also exhibits various failures in the file "fail".
2005-08-25 00:00:00 -04:00
Jim
8648e7426b moved ea64v to an include file ea64v.h
implemented stack extensions
more PCL/fault work
more PX work
more FP work
2005-08-19 00:00:00 -04:00