Search
lxdream.org :: lxdream/src/sh4/sh4x86.in :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/sh4x86.in
changeset1301:b76840ccf94b
authornkeynes
dateWed May 27 09:42:24 2015 +1000 (5 years ago)
permissions-rw-r--r--
last changeFix stack alignment when calling the end-block callback (broken on OS X)
file annotate diff log rss
1301:b76840ccf94b5 yearsnkeynesFix stack alignment when calling the end-block callback (broken on OS X)
1298:d0eb2307b8475 yearsnkeynesFix assorted compile warnings reported by Clang
1292:799fdd4f704a8 yearsnkeynesMove the generated prologue/epilogue code out into a common entry stub
1263:b3de98d19faf8 yearsnkeynesBreak host disassembly bits out of sh4x86.in, and move the generic disasm
1218:be02e87f9f878 yearsnkeynesMove profile_block setting out of sh4x86 and back into sh4.c. Fix last bits
1216:defbd44429d88 yearsnkeynesFix typo
1214:49152b3d8b758 yearsnkeynesSetup the unlink_blocks function via a callback, rather than calling
1198:407659e01ef08 yearsNathan KeynesAdd volatile qualifier to return-address frobbing - works around optimizer
1197:904fba59a7058 yearsNathan KeynesImprove handling of NAN in fcmp/eq and ftrc
1196:a14dbddafd138 yearsNathan KeynesUpdate maximum epilogue size
1194:ee6ce58046088 yearsnkeynesHandle memory exceptions thrown while in shadow mode
1193:dff55bdc4f468 yearsnkeynesFix MAC.W operand ordering - reads from Rn first, then Rm (per the manual)
1191:12fdf3aafcd48 yearsnkeynesSH4 shadow-mode tweaks
1186:2dc47c67bb938 yearsnkeynesAdd support for block linking when the block target is fixed. Only a small
1182:b38a327ad8fa8 yearsnkeynesAdd block profiling option to count the number of executions of each block,
1176:70feb17494279 yearsNathan KeynesFix block-chaining epilogue for 64-bit builds (was loading a 32-bit pointer,
1149:da6124fceec69 yearsnkeynesAdd chain pointer to the xlat cache, so that we can maintain multiple blocks
1146:76c5d10642629 yearsnkeynesFix 32-bit non-fastcall build
1125:9dd5dee45db910 yearsnkeynesImplement shadow-execution 'core' to run translator + interpreter side by
1120:7c40a0f687b310 yearsnkeynesAdd missing sh4_translate_breakpoint_hit to the symbol table
1112:4cac5e474d4c10 yearsnkeynesRearrange the main translation loop to allow translated blocks to jump
1092:7c4ffe27e7b510 yearsnkeynesFix 64-bit x86 disassembly
1091:18655837434510 yearsnkeynesAdd side-by-side x86+sh4 disassembly output
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)
1011:fdd58619b76011 yearsnkeynesRestructure operand types - xlat-refactor
1008:4c8211637afc11 yearsnkeynesUpdate sh4_translate_end_block_size() to have the correct backpatch sizes
1006:3a169c224c1211 yearsnkeynesCommit current work-in-progress to xlat-refactor branch xlat-refactor
1004:eae00185813411 yearsnkeynesRemove last lingering bits of SH4-specific code from the ABI headers
1003:7b2688cbbca311 yearsnkeynesRevert change to xltcache and fix breakpoint precision correctly
996:2e8cf0a8724311 yearsnkeynesFix stupid mistake in non-frame-exception path
995:eb9d43e8aa0811 yearsnkeynesCleanup ABI headers - most of the content made consistent between versions, and moved into sh4x86.in proper
992:7c15f8a7199511 yearsnkeynesMove ABI headers to xlat/x86 as well (and finally rename erroneously named ia64abi to amd64abi)
991:60c7fab9c88011 yearsnkeynesMove xltcache to xlat/ src directory
975:007bf7eb944f11 yearsnkeynesAdd read_byte_for_write mem function for correct implementation of AND.B and friends
974:16b079ed11bb11 yearsnkeynesFix double-counting of instructions in delay slots in sh4_finalize_instruction
956:4c1ed9e0398511 yearsnkeynesExit immediately on an unconditional exception - makes those blocks a little simpler and shorter
953:f4a156508ad111 yearsnkeynesMerge lxdream-mem branch back to trunk
946:d41ee7994db711 yearsnkeynesFully integrate SQ with the new address space code - added additional 'prefetch' 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
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
927:17b6b9e245d811 yearsnkeynesAdd return-address-modifying exception return code to mmu TLB lookups (a little bit faster)
926:68f3e0fe02f111 yearsnkeynesSetup a 'proper' stackframe in translated blocks. This doesn't affect performance noticeably,
911:2f6ba75b84d112 yearsnkeynesDeclare mem_copy_* functions as FASTCALL
908:a00debcf260012 yearsnkeynesFix x86-64 build (typos et al)
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
.