1
0
mirror of https://github.com/prirun/p50em.git synced 2026-01-13 23:26:13 +00:00

8 Commits

Author SHA1 Message Date
Jim
73eaf5cfd5 jump directly to shift to eliminate a sub-switch (Primos rebuild gcov)
After profiling Primos rebuild, shift instructions are #8
2007-10-21 00:00:00 -04:00
Jim
c463fce90d large changes to dispatch.h to support 2 tables +
separate R/S-mode mem ref dispatch table to avoid R-mode check in V-mode inst
2007-10-04 00:00:00 -04:00
Jim
e095020a55 add access bits to brp.vpn entries, use brp cache for put16 & put32
added get32m & put32m: these always map
changed get32 and put32 to be inlined
changed mem[] references to MEM[] to allow experiments
tried using register for MEM pointer - not so great
tried using register for instcount - screwed up (very sluggish)
2007-09-12 00:00:00 -04:00
Jim
0948124f29 added "# of register sets" array, enabled multi-register set code ("ors") +
moved dispatch tables to global variable structure
2007-09-12 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
24e7bfaea0 optimize with Shark, dispatch.h & label arrays, inhcount
changed generics from switch table to indirect jumps
removed redundant test of inhcount
beginning of a long series of optimizations with Shark tool
2007-08-16 00:00:00 -04:00