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 (12 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:be02e87f9f8712 yearsnkeynesMove profile_block setting out of sh4x86 and back into sh4.c. Fix last bits
1194:ee6ce580460812 yearsnkeynesHandle memory exceptions thrown while in shadow mode
1188:1cc9bb0b384812 yearsNathan KeynesRearrange the profile dump code so as to avoid xlat => SH4 references
1187:266e7a1bae9012 yearsnkeynesRefactor event processing into sh4_handle_pending_events()
1182:b38a327ad8fa12 yearsnkeynesAdd block profiling option to count the number of executions of each block,
1171:d644413208a312 yearsNathan KeynesFix SLEEP issue on timeslice border
1125:9dd5dee45db913 yearsnkeynesImplement shadow-execution 'core' to run translator + interpreter side by
1112:4cac5e474d4c13 yearsnkeynesRearrange the main translation loop to allow translated blocks to jump
1091:18655837434514 yearsnkeynesAdd side-by-side x86+sh4 disassembly output
1071:182cfe43c09e14 yearsnkeynesFix assorted -Wall warnings
1067:d3c00ffccfcd14 yearsnkeynesNo-op merge lxdream-mem to tip to remove head (Long since merged in
1065:bc1cc0c5491714 yearsnkeynesNo-op merge lxdream-mmu to remove head (actually merged long ago)
998:1754a8c6a9cf15 yearsnkeynesAdd preliminary implementation of the GDB remote debugging server - attaches to
991:60c7fab9c88015 yearsnkeynesMove xltcache to xlat/ src directory
984:a01567058a4715 yearsnkeynesCompile in C99 standards mode, albeit with -D_GNU_SOURCE. Helps portability slightly as well
975:007bf7eb944f15 yearsnkeynesAdd read_byte_for_write mem function for correct implementation of AND.B and friends
971:886e1ec8447d15 yearsnkeynesFix 1k-entry allocation
968:6fb1481859a415 yearsnkeynesFix various compile-time warnings
953:f4a156508ad115 yearsnkeynesMerge lxdream-mem branch back to trunk
951:63483914846f15 yearsnkeynesTidy up exceptions+resets lxdream-mem
948:545c85cc56f115 yearsnkeynesIntroduce sh4_finalize_instruction to clean-up on instruction exits lxdream-mem
941:c67574ed435515 yearsnkeynesImplement CORE_EXIT_EXCEPTION for use when direct frame messing about doesn't work lxdream-mem
939:6f2302afeb8915 yearsnkeynesMMU work-in-progress lxdream-mem
937:81b0c79d978815 yearsnkeynesUpdate sh4x86 to take advantage of SR assumptions. nice 2% there :) lxdream-mem
936:f394309c399a15 yearsnkeynesReplace fpscr_mask/fpscr flags in xlat_cache_block with a single xlat_sh4_mode, lxdream-mem
935:45246788ca0015 yearsnkeynesSimplify xlat_lut slightly (cache now always initialized even if we're not lxdream-mem
934:3acd3b3ee6d115 yearsnkeynesChange RAM regions to use static arrays rather than mmap regions, for a 2-3% performance gain. lxdream-mem
931:430048ea8b7115 yearsnkeynesMore refactoring and general cleanup. Most things should be working again now. lxdream-mem
930:07e5b11419db15 yearsnkeynesRemove pointer cache and add full address-space map. Much better lxdream-mem
929:fd8cb0c82f5f15 yearsnkeynesFirst pass experiment using cached decoding. lxdream-mem
905:4c17ebd9ef5e15 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
903:1337c7a7dd6b15 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
841:808d64b0507315 yearsnkeynesInitial implementation of the performance counters, only working one for now
823:8a592668322f15 yearsnkeynesMask fpscr correctly as well while we're in there
822:6e053675846515 yearsnkeynesMask off SR correctly when writing to it - this turns out to be important
790:a0c7d28bbb0c15 yearsnkeynesDon't invoke sh4_translate_flush_cache() when we're not actually using the translator
740:dd11269ee48b15 yearsnkeynesRationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
736:a02d1475ccfd15 yearsnkeynesRe-indent everything consistently
671:a530ea88eebd15 yearsnkeynesPermanently add SH4 instruction statistics tracking (enabled with --enable-sh4stats)
669:ab344e42bca915 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
638:d6dc39e935af16 yearsnkeynesFix SLEEP wakeup on IRQ to not screwup the slice_cycle
619:0800a013747216 yearsnkeynesDeliver TMU interrupts precisely rather than only at end of time slice
617:476a717a54f316 yearsnkeynesStart getting SLEEP into order
597:87cbdf62aa3516 yearsnkeynesInitial VMA support for the SH4 disassembly
591:7b9612fd239516 yearsnkeynesAdd flag to skip breakpoints when it's the very first instruction of a run
586:2a3ba82cf24316 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
585:371342a39c0916 yearsnkeynesHandle sh4 aborts/reset within the translator lxdream-mmu
577:a181aeacd6e816 yearsnkeynesRemove asm file and convert to inline (easier to cope with platform conventions) lxdream-mmu
571:9bc09948d0f216 yearsnkeynesMore MMU work in progess. Much better now... lxdream-mmu
569:a1c49e1e877616 yearsnkeynesBring icache partially into line with the mmu, a little less slow with AT off lxdream-mmu
566:59be465e5f0116 yearsnkeynesAdd breakpoint_type_t enum (general cleanup) lxdream-mmu
561:533f6b47807116 yearsnkeynesEnable Id keyword on all source files lxdream-mmu
559:06714bc6427116 yearsnkeynesCommit first pass at full TLB support - still needs a lot more work lxdream-mmu
526:ba3da45b575416 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:c4ecae2b1b5e16 yearsnkeynesAdd sh4ptr_t type, start converting bare pointer refs to it
472:8a3ae91eb21516 yearsnkeynesEnsure xlat cache is flushed on state load and reset
422:61a0598e07ff16 yearsnkeynesFix compilation warnings
418:b9b14afa095916 yearsnkeynesAdd explicit branch cases for main ram - yes it's faster...
412:d58e4d69de1616 yearsnkeynesFix fr_bank on save file load
401:f79327f3981816 yearsnkeynesMove support routines to sh4.c
.