Search
lxdream.org :: lxdream/src/sh4/sh4.c :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/sh4.c
changeset1218:be02e87f9f87
authornkeynes
dateMon Feb 13 21:02:42 2012 +1000 (10 years ago)
permissions-rw-r--r--
last changeMove profile_block setting out of sh4x86 and back into sh4.c. Fix last bits
preventing non-translation build
file annotate diff log rss
1218:be02e87f9f8710 yearsnkeynesMove profile_block setting out of sh4x86 and back into sh4.c. Fix last bits
1194:ee6ce580460810 yearsnkeynesHandle memory exceptions thrown while in shadow mode
1188:1cc9bb0b384810 yearsNathan KeynesRearrange the profile dump code so as to avoid xlat => SH4 references
1187:266e7a1bae9010 yearsnkeynesRefactor event processing into sh4_handle_pending_events()
1182:b38a327ad8fa10 yearsnkeynesAdd block profiling option to count the number of executions of each block,
1171:d644413208a311 yearsNathan KeynesFix SLEEP issue on timeslice border
1125:9dd5dee45db911 yearsnkeynesImplement shadow-execution 'core' to run translator + interpreter side by
1112:4cac5e474d4c12 yearsnkeynesRearrange the main translation loop to allow translated blocks to jump
1091:18655837434512 yearsnkeynesAdd side-by-side x86+sh4 disassembly output
1071:182cfe43c09e13 yearsnkeynesFix assorted -Wall warnings
1067:d3c00ffccfcd13 yearsnkeynesNo-op merge lxdream-mem to tip to remove head (Long since merged in
1065:bc1cc0c5491713 yearsnkeynesNo-op merge lxdream-mmu to remove head (actually merged long ago)
998:1754a8c6a9cf13 yearsnkeynesAdd preliminary implementation of the GDB remote debugging server - attaches to
991:60c7fab9c88013 yearsnkeynesMove xltcache to xlat/ src directory
984:a01567058a4713 yearsnkeynesCompile in C99 standards mode, albeit with -D_GNU_SOURCE. Helps portability slightly as well
975:007bf7eb944f13 yearsnkeynesAdd read_byte_for_write mem function for correct implementation of AND.B and friends
971:886e1ec8447d13 yearsnkeynesFix 1k-entry allocation
968:6fb1481859a413 yearsnkeynesFix various compile-time warnings
953:f4a156508ad113 yearsnkeynesMerge lxdream-mem branch back to trunk
951:63483914846f13 yearsnkeynesTidy up exceptions+resets lxdream-mem
948:545c85cc56f113 yearsnkeynesIntroduce sh4_finalize_instruction to clean-up on instruction exits lxdream-mem
941:c67574ed435513 yearsnkeynesImplement CORE_EXIT_EXCEPTION for use when direct frame messing about doesn't work lxdream-mem
939:6f2302afeb8913 yearsnkeynesMMU work-in-progress lxdream-mem
937:81b0c79d978813 yearsnkeynesUpdate sh4x86 to take advantage of SR assumptions. nice 2% there :) lxdream-mem
936:f394309c399a13 yearsnkeynesReplace fpscr_mask/fpscr flags in xlat_cache_block with a single xlat_sh4_mode, lxdream-mem
935:45246788ca0013 yearsnkeynesSimplify xlat_lut slightly (cache now always initialized even if we're not lxdream-mem
934:3acd3b3ee6d113 yearsnkeynesChange RAM regions to use static arrays rather than mmap regions, for a 2-3% performance gain. lxdream-mem
931:430048ea8b7113 yearsnkeynesMore refactoring and general cleanup. Most things should be working again now. 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
905:4c17ebd9ef5e13 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
903:1337c7a7dd6b13 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
841:808d64b0507313 yearsnkeynesInitial implementation of the performance counters, only working one for now
823:8a592668322f13 yearsnkeynesMask fpscr correctly as well while we're in there
822:6e053675846513 yearsnkeynesMask off SR correctly when writing to it - this turns out to be important
790:a0c7d28bbb0c14 yearsnkeynesDon't invoke sh4_translate_flush_cache() when we're not actually using the translator
740:dd11269ee48b14 yearsnkeynesRationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
736:a02d1475ccfd14 yearsnkeynesRe-indent everything consistently
671:a530ea88eebd14 yearsnkeynesPermanently add SH4 instruction statistics tracking (enabled with --enable-sh4stats)
669:ab344e42bca914 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
638:d6dc39e935af14 yearsnkeynesFix SLEEP wakeup on IRQ to not screwup the slice_cycle
619:0800a013747214 yearsnkeynesDeliver TMU interrupts precisely rather than only at end of time slice
617:476a717a54f314 yearsnkeynesStart getting SLEEP into order
597:87cbdf62aa3514 yearsnkeynesInitial VMA support for the SH4 disassembly
591:7b9612fd239514 yearsnkeynesAdd flag to skip breakpoints when it's the very first instruction of a run
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
566:59be465e5f0114 yearsnkeynesAdd breakpoint_type_t enum (general cleanup) 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
526:ba3da45b575414 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:c4ecae2b1b5e14 yearsnkeynesAdd sh4ptr_t type, start converting bare pointer refs to it
472:8a3ae91eb21514 yearsnkeynesEnsure xlat cache is flushed on state load and reset
422:61a0598e07ff14 yearsnkeynesFix compilation warnings
418:b9b14afa095914 yearsnkeynesAdd explicit branch cases for main ram - yes it's faster...
412:d58e4d69de1614 yearsnkeynesFix fr_bank on save file load
401:f79327f3981814 yearsnkeynesMove support routines to sh4.c
.