Commit Graph
6575 Commits
Author SHA1 Message Date
Unknown W. Brackets 0c1dcfeacf Avoid comparing invalidated iterators. 2014-10-22 00:50:39 -07:00
Unknown W. Brackets 65ecc9a464 jit: Use an exclusive end in the block map.
Simpler, was not consistent before, oops.
2014-10-21 11:52:19 -07:00
Henrik Rydgard e6334dd9d8 Display .7z files in file listings. Can't decompress them though. 2014-10-21 00:09:24 +02:00
Henrik Rydgard d24abb3af0 More GetPointer cleanup. memCardDirectory->memStickDirectory. 2014-10-19 23:20:51 +02:00
BlackDog f7e8ca486c add lwc1 lwc2 swc1 swc2 opcodes 2014-10-19 20:42:12 +02:00
Unknown W. Brackets ef6d583542 x86jit: Oops, don't pad INT3s in prelinked blocks.
Fixes #7007.
2014-10-15 22:07:56 -07:00
Unknown W. Brackets b53f13480a x86jit: Centralize continuing logic. 2014-10-12 19:01:04 -07:00
Unknown W. Brackets 040a6d1745 jit: Improve performance of clearing jit. 2014-10-12 19:00:03 -07:00
Unknown W. Brackets e6373aaed9 jit: Remove from the block map more carefully. 2014-10-12 17:47:07 -07:00
Unknown W. Brackets 2e81a38892 jit: Fix a possible infinite loop in invalidation. 2014-10-12 17:46:54 -07:00
Unknown W. Brackets 4853a1b7a0 jit: Optimize proxy block lookup from address.
It was really slow before with enough proxy blocks.
2014-10-12 17:35:23 -07:00
Unknown W. Brackets 1064f580e4 armjit: Add proxy blocks for continuing. 2014-10-12 17:20:26 -07:00
Unknown W. Brackets d98adf27d6 x86jit: Add proxy blocks for continuing. 2014-10-12 17:15:31 -07:00
Unknown W. Brackets 01f9521dc5 jit: Invalidate blocks even if they end unevenly.
This allows blocks to start and end where ever they need, which should be
good for replacements and for continuing.
2014-10-12 17:13:04 -07:00
Unknown W. Brackets 90821b761d x86jit: Pad linked exits with breakpoints.
So that we don't get garbage, and so we see if we end up there.
2014-10-12 16:00:58 -07:00
Unknown W. Brackets 5fd402222b x86jit: Use the shorter MDisp() offset for andLink. 2014-10-12 15:18:22 -07:00
Unknown W. Brackets 0f32103615 x86jit: Consistently use mips_. 2014-10-12 15:16:09 -07:00
Henrik Rydgård afbe50d3b9 Merge pull request #6998 from unknownbrackets/jit-minor2
x86jit: Preload sp and similar regs used often
2014-10-13 00:00:28 +02:00
Unknown W. Brackets e3a04aa2d2 x86jit: Preload sp and similar regs used often.
This can help us avoid using a temporary.

Very tiny performance improvement.
2014-10-12 14:53:56 -07:00
Unknown W. Brackets 0f45c3516d Skip setting a0 in the idle thread.
We don't need the param for our fake syscall.  This is safe since it's all
savestated.
2014-10-12 12:51:48 -07:00
Unknown W. Brackets 6fae78cd3f x86jit: Fix a bug in branch continuing.
When we predict it won't take a likely delay slot, we'd lose our register
allocation state.
2014-10-12 12:51:47 -07:00
Unknown W. Brackets 2f598e8f38 jit: Statically jump for fixed branches.
This handles both loops (first step is known) and static branches (some
code uses them instead of jumps, and we disassemble that to "b".)

Not likely to be a big improvement, but might help if the branch predictor
was wrong.

This is as opposed to continuing, which would build a larger jit block.
2014-10-12 12:51:47 -07:00
Unknown W. Brackets 9228ac72da jit: Reorganize imm branch logic a bit. 2014-10-12 12:51:46 -07:00
Unknown W. Brackets 4d30288601 x86jit: Fix force flush to zero. 2014-10-12 12:51:46 -07:00
Unknown W. Brackets 928e2adfc9 jit: Avoid applying/restoring the rounding mode.
If the game never sets it, we can skip around syscalls, interpreter,
replacements, etc.
2014-10-12 12:51:45 -07:00
Unknown W. Brackets 8d0dca71fe jit: Rename the rounding mode funcs to clarify.
They apply/restore the value, set/clear is confusing.
2014-10-12 11:35:20 -07:00
Henrik Rydgård 6cb2c9c97d Merge pull request #6989 from hrydgard/x86-emitter-merge
Merge from Dolphin's x86-64 emitter
2014-10-12 19:52:59 +02:00
Henrik Rydgård 3b1476c8ec MIPSTables: Annotate fp and hi/lo in/out more accurately than just "other"
Some typo fixes
2014-10-12 19:46:50 +02:00
Henrik Rydgard 8177b4c43b Avoid an ifdef using PTRBITS 2014-10-12 19:35:55 +02:00
Henrik Rydgård eab010a0c0 x86 JIT: Sacrifice a register for a pointer to the MIPS context. Shrinks emitted x86 code considerably.
Nice in 64-bit, but might be a bit too much in 32-bit though... Needs testing.
2014-10-12 19:35:55 +02:00
Henrik Rydgård f99c2cd010 x86 Jit: Generate nicer code for some cases of addiu 2014-10-12 17:47:53 +02:00
Unknown W. Brackets 25a26eeaf9 Fix paths.
Hmm, this didn't happen when I added other things in ext... I blame 2013.
2014-10-11 12:29:31 -07:00
Unknown W. Brackets cb6634f54b Add udis86 b24baf1 (1.7.3?), not yet used.
Linked even on arm to avoid dependency complexity, might skip later.
2014-10-11 09:30:29 -07:00
Henrik Rydgård 91966824bb minor cleanup: No point in having special functions for ReadFCR/WriteFCR, they're smaller than many other ops.. 2014-10-11 15:57:36 +02:00
Henrik Rydgård 2feae8d98e Merge pull request #6978 from daniel229/replace_danganronpa
Replace frame download in danganronpa 1&2
2014-10-07 00:46:19 +02:00
Henrik Rydgård c9a21ab44d Add T2 and T3 to our register enum for clarity 2014-10-05 14:20:30 +02:00
daniel229 5ff098efb9 Another replace frame download in danganronpa 1 2014-10-05 13:46:47 +08:00
daniel229 ef1484da65 Replace frame download in danganronpa 1 2014-10-05 13:44:39 +08:00
daniel229 a7cf3aeafc Another replace frame download in danganronpa 2 2014-10-05 13:42:03 +08:00
daniel229 d7927009d0 Replace frame download in danganronpa 2 2014-10-05 13:39:15 +08:00
Unknown W. Brackets adef5bbe59 Discard packet data when seeking. 2014-10-03 23:23:36 -07:00
Unknown W. Brackets 50e4eded75 Actually use the temp packet. 2014-10-03 23:08:16 -07:00
Unknown W. Brackets 72e8e6448f Don't eat packet data when using a temp packet. 2014-10-03 22:17:25 -07:00
Unknown W. Brackets cf7e280185 Attempt to ensure we don't decode partial frames. 2014-10-03 22:11:45 -07:00
Unknown W. Brackets f421453bf9 Align samples even after a loop.
This corrects the amount of audio after certain loops, but it doesn't seem
to output the right data when this happens.

Possibly, seeking isn't doing the right thing and resetting state that
shouldn't be reset when a loop happens.  Not sure... but it was already
wrong before, this just reads the right amount of it.
2014-10-03 21:33:45 -07:00
Unknown W. Brackets 2f443f52a6 Ensure we request s16 samples.
We won't get these for atrac3+, but we should for atrac3 (seems to be the
default anyway, but better to be clear.)
2014-10-03 20:05:08 -07:00
Unknown W. Brackets 24ab84a0fe Centralize atrac frame decode logic. 2014-10-03 20:04:54 -07:00
Unknown W. Brackets 398646411a Properly handle atrac packets with multiple frames.
This gets us decoding the start of a file and near loops way more
correctly.
2014-10-03 19:48:39 -07:00
Henrik Rydgård 061fe9ab0a Merge pull request #6969 from daniel229/savedata
Savedata minor
2014-10-03 17:24:24 +02:00
Henrik Rydgård 7d44711198 Merge pull request #6957 from unknownbrackets/reporting
Add an option to provide compatibility feedback
2014-10-03 17:22:19 +02:00