Search
lxdream.org :: lxdream/src/sh4/x86op.h :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/x86op.h
changeset936:f394309c399a
authornkeynes
dateSat Dec 27 02:59:35 2008 +0000 (13 years ago)
permissions-rw-r--r--
last changeReplace fpscr_mask/fpscr flags in xlat_cache_block with a single xlat_sh4_mode,
which tracks the field of the same name in sh4r - actually a little faster this way.
Now depends on SR.MD, FPSCR.PR and FPSCR.SZ (although it doesn't benefit from the SR
flag yet).

Also fixed the failure to check the flags in the common case (code address returned
by previous block) which took away the performance benefits, but oh well.
file annotate diff log rss
936:f394309c399a13 yearsnkeynesReplace fpscr_mask/fpscr flags in xlat_cache_block with a single xlat_sh4_mode, lxdream-mem
930:07e5b11419db13 yearsnkeynesRemove pointer cache and add full address-space map. Much better lxdream-mem
929:fd8cb0c82f5f13 yearsnkeynesFirst pass experiment using cached decoding. lxdream-mem
927:17b6b9e245d813 yearsnkeynesAdd return-address-modifying exception return code to mmu TLB lookups (a little bit faster)
926:68f3e0fe02f113 yearsnkeynesSetup a 'proper' stackframe in translated blocks. This doesn't affect performance noticeably,
903:1337c7a7dd6b14 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
901:32c5cf5e206f14 yearsnkeynesMove the precision/size tests to translation-time rather than execution-time,
800:0d1be79c9b3314 yearsnkeynesFix x86-64 bugs (only visible on OS X)
736:a02d1475ccfd14 yearsnkeynesRe-indent everything consistently
675:b97020f9af1c14 yearsnkeyneshange 64-bit configuration to use sizeof(void *) rather than the system id
669:ab344e42bca914 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
601:d8d1af0d133c14 yearsnkeynesInvoke emulator single-step for untranslatable delay slots (and fix a few
590:4db6a084ca3c14 yearsnkeynesEnsure PC correctness in presence of delay-slot exceptions
586:2a3ba82cf24314 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
569:a1c49e1e877614 yearsnkeynesBring icache partially into line with the mmu, a little less slow with AT off lxdream-mmu
561:533f6b47807114 yearsnkeynesEnable Id keyword on all source files lxdream-mmu
559:06714bc6427114 yearsnkeynesCommit first pass at full TLB support - still needs a lot more work lxdream-mmu
547:d6e00ffc4adc14 yearsnkeynesFix stack alignment on x86-64
539:75f3e594d4a715 yearsnkeynesAdd support for the darwin ABI
527:14c9489f647e15 yearsnkeynesx86-64 translator work-in-progress
394:7eb172bfeefe15 yearsnkeynesFix SUBC (not updating T), FTRC (not truncating), and XTRCT (just b0rked)
388:13bae2fb037315 yearsnkeynesMore fixes and complete missing instructions
386:6fb10951326a15 yearsnkeynesImplement MAC.W, MAC.L and DIV1
380:2e8166bf683215 yearsnkeynesFix load_spreg/store_spreg
377:fa18743f690515 yearsnkeynesFill in most of the FP operations and fix the stack adjustments
375:4627600f7f8e15 yearsnkeynesStart in on the FP instructions (simplest possible impl)
374:8f80a795513e15 yearsnkeynesCache the pointer to the last FR bank (speeds fp ops up by about 10%)
368:36fac4c4232215 yearsnkeynesMore translator WIP - blocks are approaching something sane
361:be3de4ecd95415 yearsnkeynesTranslator WIP: fill out and correct another batch of instructions
359:c588dce7ebde15 yearsnkeynesCommit decoder generator
.