Search
lxdream.org :: lxdream/src/sh4/sh4trans.c :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/sh4trans.c
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
914:72abecf5a31514 yearsnkeynesFix (extremely boneheaded) failure to convert pc to physical address before
906:268ea359f88414 yearsnkeynesChange xlat_get_native_pc to pass in the expected code region - this lets the Mac
905:4c17ebd9ef5e14 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
901:32c5cf5e206f14 yearsnkeynesMove the precision/size tests to translation-time rather than execution-time,
809:8bdbf4d95da414 yearsnkeynesFix core-exit-on-flush in a delay branch slot. Bit of a hack really
740:dd11269ee48b14 yearsnkeynesRationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
736:a02d1475ccfd14 yearsnkeynesRe-indent everything consistently
711:4f0ba72e58fe14 yearsnkeynesFix size test before end-of-block extension, and add assert after sh4_translate_end_block() for consistency
669:ab344e42bca914 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
619:0800a013747214 yearsnkeynesDeliver TMU interrupts precisely rather than only at end of time slice
617:476a717a54f314 yearsnkeynesStart getting SLEEP into order
600:3b0f94d0faed14 yearsnkeynesReturn immediately from xlat_get_code_by_vma if the icache is hit
596:dfc0c93d882e14 yearsnkeynesFix MAC.L/MAC.W stack issues
593:6c710c7c683514 yearsnkeynesFix block overruns from long epilogues
592:4343cbfdd21b14 yearsnkeynesChange recovery table to offset rather than pointer (so as to survive block moves)
591:7b9612fd239514 yearsnkeynesAdd flag to skip breakpoints when it's the very first instruction of a run
588:978ec0b3354514 yearsnkeynesFix vma lookups after itlb exception
586:2a3ba82cf24314 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
585:371342a39c0914 yearsnkeynesHandle sh4 aborts/reset within the translator lxdream-mmu
577:a181aeacd6e814 yearsnkeynesRemove asm file and convert to inline (easier to cope with platform conventions) lxdream-mmu
571:9bc09948d0f214 yearsnkeynesMore MMU work in progess. Much better now... lxdream-mmu
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
527:14c9489f647e15 yearsnkeynesx86-64 translator work-in-progress
430:467519b050f415 yearsnkeynesFix compilation warnings
417:bd927df302a915 yearsnkeynesSuppress redundant T flag loads
410:5f8413358e7f15 yearsnkeynesChange extend-block to take a requested size
408:af496b73473415 yearsnkeynesChange block signature to return pointer to next block (if known)
398:16b0856ea51115 yearsnkeynesAdd a 'translate and run' method for running uncached code
390:d066209999f115 yearsnkeynesEnsure correct end-of-block PC
368:36fac4c4232215 yearsnkeynesMore translator WIP - blocks are approaching something sane
359:c588dce7ebde15 yearsnkeynesCommit decoder generator
.