Search
lxdream.org :: lxdream/src/sh4/sh4x86.in :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/sh4x86.in
changeset905:4c17ebd9ef5e
authornkeynes
dateWed Oct 29 23:51:58 2008 +0000 (12 years ago)
permissions-rw-r--r--
last changeUse regparam calling conventions for all functions called from translated code,
along with a few other high-use functions. Can probably extend this to all functions,
but as it is this is a nice performance boost
file annotate diff log rss
905:4c17ebd9ef5e12 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
904:5b92e51ac06b12 yearsnkeynesEnable the FIPR SSE3 code for now, and add a comment on the sh4r.fr alignment
903:1337c7a7dd6b12 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
901:32c5cf5e206f12 yearsnkeynesMove the precision/size tests to translation-time rather than execution-time,
879:a07af43e03c412 yearsnkeynesFix corner flag case with conditional delayed branches
875:2147174fb32012 yearsnkeynesFix a few more subtle flag problems
872:a3041742bb7d12 yearsnkeynesFix CLRS/SETS - These kill the carry value, they don't set it.
824:016cda9d051812 yearsnkeynesCorrect generated UNDEF() => UNDEF(ir) for consistency with UNIMP(ir)
800:0d1be79c9b3312 yearsnkeynesFix x86-64 bugs (only visible on OS X)
789:7e7ec23217fc12 yearsnkeynesFix 64-bit correctness in ptr loads in FTRC
733:633ee022f52e12 yearsnkeynesBug 60: Fix off-by-one in recovery list size
732:f05753bbe72312 yearsnkeynesFix alignment check for 64-bit FMOVs
675:b97020f9af1c12 yearsnkeyneshange 64-bit configuration to use sizeof(void *) rather than the system id
673:44c579439d7312 yearsnkeynesCount fpscr ops separately from other LDS/STS instructions
671:a530ea88eebd12 yearsnkeynesPermanently add SH4 instruction statistics tracking (enabled with --enable-sh4stats)
669:ab344e42bca912 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
626:a010e30a30e912 yearsnkeynesFix LDS/STS to FPUL/FPSCR to check the FPU disabled bit. Fixes
604:1024c3a9cb8812 yearsnkeynesFix backpatching when the block moves during translation
601:d8d1af0d133c12 yearsnkeynesInvoke emulator single-step for untranslatable delay slots (and fix a few
596:dfc0c93d882e12 yearsnkeynesFix MAC.L/MAC.W stack issues
593:6c710c7c683512 yearsnkeynesFix block overruns from long epilogues
591:7b9612fd239512 yearsnkeynesAdd flag to skip breakpoints when it's the very first instruction of a run
590:4db6a084ca3c12 yearsnkeynesEnsure PC correctness in presence of delay-slot exceptions
586:2a3ba82cf24312 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
584:5c29dd7297df12 yearsnkeynesRemove sh4_read_word accidentally left in lxdream-mmu
577:a181aeacd6e812 yearsnkeynesRemove asm file and convert to inline (easier to cope with platform conventions) lxdream-mmu
571:9bc09948d0f212 yearsnkeynesMore MMU work in progess. Much better now... lxdream-mmu
570:d2893980fbf512 yearsnkeynesChange to generate different code for mmu on/off cases lxdream-mmu
569:a1c49e1e877612 yearsnkeynesBring icache partially into line with the mmu, a little less slow with AT off lxdream-mmu
561:533f6b47807112 yearsnkeynesEnable Id keyword on all source files lxdream-mmu
559:06714bc6427112 yearsnkeynesCommit first pass at full TLB support - still needs a lot more work lxdream-mmu
553:4e6166258c2212 yearsnkeynesFix immediate call to MMU_ldtlb (braino...) lxdream_0_8_2
550:a27e3134014712 yearsnkeynesAdd support for the MMIO side of the TLB (and LDTLB)
547:d6e00ffc4adc12 yearsnkeynesFix stack alignment on x86-64
539:75f3e594d4a713 yearsnkeynesAdd support for the darwin ABI
533:9764673fd4a513 yearsnkeynesFix TRAPA (translator) and add test case
532:43653e74803013 yearsnkeynesFix PREF for x86-64, add load_ptr macro
527:14c9489f647e13 yearsnkeynesx86-64 translator work-in-progress
526:ba3da45b575413 yearsnkeynesDon't build the translator if the architecture is unsupported. Also tidy things up a little to allow (theoretically) different translators to be selected at build time.
502:c4ecae2b1b5e13 yearsnkeynesAdd sh4ptr_t type, start converting bare pointer refs to it
417:bd927df302a913 yearsnkeynesSuppress redundant T flag loads
416:714df603c86913 yearsnkeynesRemove INC %esi (and esi in general), replace with load immediates (faster)
409:549e0083544813 yearsnkeynesModify termination again to allow early exit (eg on end-of-page), as well
408:af496b73473413 yearsnkeynesChange block signature to return pointer to next block (if known)
401:f79327f3981813 yearsnkeynesMove support routines to sh4.c
397:64032450532513 yearsnkeynesFix SHLL/SHLR/SHAL/SHAR flag setting
395:c473acbde18613 yearsnkeynesAdd alignment checks to LDC.L/STC.L/LDS.L/STS.L
394:7eb172bfeefe13 yearsnkeynesFix SUBC (not updating T), FTRC (not truncating), and XTRCT (just b0rked)
388:13bae2fb037313 yearsnkeynesMore fixes and complete missing instructions
386:6fb10951326a13 yearsnkeynesImplement MAC.W, MAC.L and DIV1
382:fce3f4da92ab13 yearsnkeynesFix exception handling
381:aade6c9aca4d13 yearsnkeynesFix default block return value
380:2e8166bf683213 yearsnkeynesFix load_spreg/store_spreg
377:fa18743f690513 yearsnkeynesFill in most of the FP operations and fix the stack adjustments
375:4627600f7f8e13 yearsnkeynesStart in on the FP instructions (simplest possible impl)
374:8f80a795513e13 yearsnkeynesCache the pointer to the last FR bank (speeds fp ops up by about 10%)
368:36fac4c4232213 yearsnkeynesMore translator WIP - blocks are approaching something sane
361:be3de4ecd95413 yearsnkeynesTranslator WIP: fill out and correct another batch of instructions
359:c588dce7ebde13 yearsnkeynesCommit decoder generator
.