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 (8 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:be02e87f9f878 yearsnkeynesMove profile_block setting out of sh4x86 and back into sh4.c. Fix last bits
1194:ee6ce58046088 yearsnkeynesHandle memory exceptions thrown while in shadow mode
1188:1cc9bb0b38489 yearsNathan KeynesRearrange the profile dump code so as to avoid xlat => SH4 references
1187:266e7a1bae909 yearsnkeynesRefactor event processing into sh4_handle_pending_events()
1182:b38a327ad8fa9 yearsnkeynesAdd block profiling option to count the number of executions of each block,
1171:d644413208a39 yearsNathan KeynesFix SLEEP issue on timeslice border
1125:9dd5dee45db910 yearsnkeynesImplement shadow-execution 'core' to run translator + interpreter side by
1112:4cac5e474d4c10 yearsnkeynesRearrange the main translation loop to allow translated blocks to jump
1091:18655837434510 yearsnkeynesAdd side-by-side x86+sh4 disassembly output
1071:182cfe43c09e11 yearsnkeynesFix assorted -Wall warnings
1067:d3c00ffccfcd11 yearsnkeynesNo-op merge lxdream-mem to tip to remove head (Long since merged in
1065:bc1cc0c5491711 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:4c17ebd9ef5e12 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
903:1337c7a7dd6b12 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
841:808d64b0507312 yearsnkeynesInitial implementation of the performance counters, only working one for now
823:8a592668322f12 yearsnkeynesMask fpscr correctly as well while we're in there
822:6e053675846512 yearsnkeynesMask off SR correctly when writing to it - this turns out to be important
790:a0c7d28bbb0c12 yearsnkeynesDon't invoke sh4_translate_flush_cache() when we're not actually using the translator
740:dd11269ee48b12 yearsnkeynesRationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
736:a02d1475ccfd12 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: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
472:8a3ae91eb21513 yearsnkeynesEnsure xlat cache is flushed on state load and reset
422:61a0598e07ff13 yearsnkeynesFix compilation warnings
418:b9b14afa095913 yearsnkeynesAdd explicit branch cases for main ram - yes it's faster...
412:d58e4d69de1613 yearsnkeynesFix fr_bank on save file load
401:f79327f3981813 yearsnkeynesMove support routines to sh4.c
.