Search
lxdream.org :: lxdream/src/sh4/x86op.h :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/x86op.h
changeset926:68f3e0fe02f1
authornkeynes
dateSun Dec 14 07:50:48 2008 +0000 (15 years ago)
permissions-rw-r--r--
last changeSetup a 'proper' stackframe in translated blocks. This doesn't affect performance noticeably,
but does ensure that
a) The stack is aligned correctly on OS X with no extra effort, and
b) We can't mess up the stack and crash that way anymore.
Replace all PUSH/POP instructions (outside of prologue/epilogue) with ESP-rel moves to stack
local variables.
Finally merge ia32mac and ia32abi together, since they're pretty much the same now anyway (and
thereby simplifying maintenance a good deal)
file annotate diff log rss
926:68f3e0fe02f115 yearsnkeynesSetup a 'proper' stackframe in translated blocks. This doesn't affect performance noticeably,
903:1337c7a7dd6b15 yearsnkeynesAdd SSE3 versions of FIPR and FTRV - the latter is about a 4.5% improvement
901:32c5cf5e206f15 yearsnkeynesMove the precision/size tests to translation-time rather than execution-time,
800:0d1be79c9b3315 yearsnkeynesFix x86-64 bugs (only visible on OS X)
736:a02d1475ccfd15 yearsnkeynesRe-indent everything consistently
675:b97020f9af1c15 yearsnkeyneshange 64-bit configuration to use sizeof(void *) rather than the system id
669:ab344e42bca915 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
601:d8d1af0d133c16 yearsnkeynesInvoke emulator single-step for untranslatable delay slots (and fix a few
590:4db6a084ca3c16 yearsnkeynesEnsure PC correctness in presence of delay-slot exceptions
586:2a3ba82cf24316 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
569:a1c49e1e877616 yearsnkeynesBring icache partially into line with the mmu, a little less slow with AT off 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
547:d6e00ffc4adc16 yearsnkeynesFix stack alignment on x86-64
539:75f3e594d4a716 yearsnkeynesAdd support for the darwin ABI
527:14c9489f647e16 yearsnkeynesx86-64 translator work-in-progress
394:7eb172bfeefe16 yearsnkeynesFix SUBC (not updating T), FTRC (not truncating), and XTRCT (just b0rked)
388:13bae2fb037316 yearsnkeynesMore fixes and complete missing instructions
386:6fb10951326a16 yearsnkeynesImplement MAC.W, MAC.L and DIV1
380:2e8166bf683216 yearsnkeynesFix load_spreg/store_spreg
377:fa18743f690516 yearsnkeynesFill in most of the FP operations and fix the stack adjustments
375:4627600f7f8e16 yearsnkeynesStart in on the FP instructions (simplest possible impl)
374:8f80a795513e16 yearsnkeynesCache the pointer to the last FR bank (speeds fp ops up by about 10%)
368:36fac4c4232216 yearsnkeynesMore translator WIP - blocks are approaching something sane
361:be3de4ecd95416 yearsnkeynesTranslator WIP: fill out and correct another batch of instructions
359:c588dce7ebde16 yearsnkeynesCommit decoder generator
.