Search
lxdream.org :: lxdream/src/sh4/sh4.c :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/sh4.c
changeset1067:d3c00ffccfcd
authornkeynes
dateSun Jul 05 13:54:48 2009 +1000 (10 years ago)
permissions-rw-r--r--
last changeNo-op merge lxdream-mem to tip to remove head (Long since merged in
actuality)
file annotate diff log rss
1067:d3c00ffccfcd10 yearsnkeynesNo-op merge lxdream-mem to tip to remove head (Long since merged in
1065:bc1cc0c5491710 yearsnkeynesNo-op merge lxdream-mmu to remove head (actually merged long ago)
998:1754a8c6a9cf11 yearsnkeynesAdd preliminary implementation of the GDB remote debugging server - attaches to
991:60c7fab9c88011 yearsnkeynesMove xltcache to xlat/ src directory
984:a01567058a4711 yearsnkeynesCompile in C99 standards mode, albeit with -D_GNU_SOURCE. Helps portability slightly as well
975:007bf7eb944f11 yearsnkeynesAdd read_byte_for_write mem function for correct implementation of AND.B and friends
971:886e1ec8447d11 yearsnkeynesFix 1k-entry allocation
968:6fb1481859a411 yearsnkeynesFix various compile-time warnings
953:f4a156508ad111 yearsnkeynesMerge lxdream-mem branch back to trunk
951:63483914846f11 yearsnkeynesTidy up exceptions+resets lxdream-mem
948:545c85cc56f111 yearsnkeynesIntroduce sh4_finalize_instruction to clean-up on instruction exits lxdream-mem
941:c67574ed435511 yearsnkeynesImplement CORE_EXIT_EXCEPTION for use when direct frame messing about doesn't work lxdream-mem
939:6f2302afeb8911 yearsnkeynesMMU work-in-progress lxdream-mem
937:81b0c79d978811 yearsnkeynesUpdate sh4x86 to take advantage of SR assumptions. nice 2% there :) lxdream-mem
936:f394309c399a11 yearsnkeynesReplace fpscr_mask/fpscr flags in xlat_cache_block with a single xlat_sh4_mode, lxdream-mem
935:45246788ca0011 yearsnkeynesSimplify xlat_lut slightly (cache now always initialized even if we're not lxdream-mem
934:3acd3b3ee6d111 yearsnkeynesChange RAM regions to use static arrays rather than mmap regions, for a 2-3% performance gain. lxdream-mem
931:430048ea8b7111 yearsnkeynesMore refactoring and general cleanup. Most things should be working again now. lxdream-mem
930:07e5b11419db11 yearsnkeynesRemove pointer cache and add full address-space map. Much better lxdream-mem
929:fd8cb0c82f5f11 yearsnkeynesFirst pass experiment using cached decoding. lxdream-mem
905:4c17ebd9ef5e11 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
903:1337c7a7dd6b11 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
841:808d64b0507311 yearsnkeynesInitial implementation of the performance counters, only working one for now
823:8a592668322f11 yearsnkeynesMask fpscr correctly as well while we're in there
822:6e053675846511 yearsnkeynesMask off SR correctly when writing to it - this turns out to be important
790:a0c7d28bbb0c11 yearsnkeynesDon't invoke sh4_translate_flush_cache() when we're not actually using the translator
740:dd11269ee48b11 yearsnkeynesRationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
736:a02d1475ccfd11 yearsnkeynesRe-indent everything consistently
671:a530ea88eebd12 yearsnkeynesPermanently add SH4 instruction statistics tracking (enabled with --enable-sh4stats)
669:ab344e42bca912 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
638:d6dc39e935af12 yearsnkeynesFix SLEEP wakeup on IRQ to not screwup the slice_cycle
619:0800a013747212 yearsnkeynesDeliver TMU interrupts precisely rather than only at end of time slice
617:476a717a54f312 yearsnkeynesStart getting SLEEP into order
597:87cbdf62aa3512 yearsnkeynesInitial VMA support for the SH4 disassembly
591:7b9612fd239512 yearsnkeynesAdd flag to skip breakpoints when it's the very first instruction of a run
586:2a3ba82cf24312 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
585:371342a39c0912 yearsnkeynesHandle sh4 aborts/reset within the translator 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
569:a1c49e1e877612 yearsnkeynesBring icache partially into line with the mmu, a little less slow with AT off lxdream-mmu
566:59be465e5f0112 yearsnkeynesAdd breakpoint_type_t enum (general cleanup) 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
526:ba3da45b575412 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:c4ecae2b1b5e12 yearsnkeynesAdd sh4ptr_t type, start converting bare pointer refs to it
472:8a3ae91eb21512 yearsnkeynesEnsure xlat cache is flushed on state load and reset
422:61a0598e07ff12 yearsnkeynesFix compilation warnings
418:b9b14afa095912 yearsnkeynesAdd explicit branch cases for main ram - yes it's faster...
412:d58e4d69de1612 yearsnkeynesFix fr_bank on save file load
401:f79327f3981812 yearsnkeynesMove support routines to sh4.c
378:f10fbdd4e24b12 yearsnkeynesStart splitting the common SH4 parts into sh4.c, with sh4core.c to become
.