Commit Graph
18709 Commits
Author SHA1 Message Date
Henrik Rydgard e22fed8b9f Use unordered_map where it makes sense. Very tiny speed boost?
Also some microoptimizations.
2014-10-19 21:12:25 +02:00
Henrik Rydgard 7cb5e7f53f Some very minor optimizations. Remove little-used stat counter. 2014-10-19 21:12:25 +02:00
Henrik Rydgård 87bcb56e95 Merge pull request #7014 from BlackDogDog/master
add lwc1 lwc2 swc1 swc2 opcodes
2014-10-19 20:55:47 +02:00
BlackDog f7e8ca486c add lwc1 lwc2 swc1 swc2 opcodes 2014-10-19 20:42:12 +02:00
Henrik Rydgård 796e9ab880 Merge pull request #6937 from beaumanvienna/retrorig-pl1
dual head support (SDL_VIDEO_FULLSCREEN_HEAD) for Qt and SDL2
2014-10-18 16:19:33 +02:00
Henrik Rydgard 3c55f81b87 Fix #6988 (crash under startup of GTA Chinatown Wars) 2014-10-18 11:26:51 +02:00
Henrik Rydgård 28efc0aa13 Merge pull request #6694 from ToadKing/master
Try to allocate executable memory close to PPSSPP memory if not below 4GB
2014-10-18 11:14:20 +02:00
Henrik Rydgård 259c6c94c4 Merge pull request #6952 from fcooper/master-bbb-support
Support ARM Linux device and add Beaglebone as a support device
2014-10-18 11:11:49 +02:00
Henrik Rydgård 26d92b0f12 Merge pull request #7006 from mgaver/patch-9
iPhone 6 Plus Scale fix
2014-10-16 22:30:14 +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
mgaver 7f3ab8715f use nativeScale insted of scale, works fine.
iPhone 6 Plus scale fix
2014-10-16 09:11:26 +09:00
Henrik Rydgard 80e243655d Win buildfix 2014-10-16 00:38:22 +02:00
beaumanvienna f6bdfd8144 rebase 2014-10-15 23:29:03 +02:00
Henrik Rydgård 9e8a448914 Update submodules, buildfix before merging the rest of the dualhead support pull requeset 2014-10-15 23:02:59 +02:00
Henrik Rydgård faca4e72ec Merge pull request #240 from i25ffz/master
Compatibility ndk r9d armeabi-v7a-hard APP_ABI building.
2014-10-15 22:48:37 +02:00
Henrik Rydgård 401f3e6497 Merge pull request #238 from beaumanvienna/retrorig-pl1
dual head support (SDL_VIDEO_FULLSCREEN_HEAD) for Qt and SDL2
2014-10-15 22:48:21 +02:00
beaumanvienna e5682161da merged with upstream / amended SDL2 multi monitor support 2014-10-15 22:35:03 +02:00
beaumanvienna ce5edeb589 merged with upstream / amended SDL2 multi monitor support 2014-10-15 22:33:38 +02:00
Henrik Rydgård 0052fa5b68 Merge pull request #7005 from mgaver/patch-9
Fix a scale for iPhone 6 Plus
2014-10-15 20:44:22 +02:00
Henrik Rydgård c329236f96 Merge pull request #7001 from i25ffz/master
Compatibility ndk r9d armeabi-v7a-hard APP_ABI building.
2014-10-15 20:32:06 +02:00
mgaver 00173b7aee Update ViewController.mm
Fix scale for iPhone 6 Plus
2014-10-16 01:38:17 +09:00
Martin Foo c247c0c7b1 Compatibility ndk r9d armeabi-v7a-hard APP_ABI building. 2014-10-15 10:12:16 +08:00
Martin Foo b8d6a64f7a Compatibility ndk r9d armeabi-v7a-hard APP_ABI building. 2014-10-14 20:24:09 +08:00
Henrik Rydgård 54a87800d3 Merge pull request #6999 from unknownbrackets/jit-minor
Clean up jit invalidation with replaced and continued blocks
2014-10-13 18:31:53 +02: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
Henrik Rydgård c193f0615e Merge pull request #6997 from unknownbrackets/jit-minor
Avoid emitting rounding mode code when not needed
2014-10-12 23:59:06 +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 7bde976069 Merge x64 emitter from a newer Dolphin version.
This one can generate slightly smaller code by exploiting some EAX-only
encoding and various other short forms, and adds support for many newer
CPU instructions.
2014-10-12 19:46:58 +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 Rydgård 281ab5f9cb Sync x64 emitter to Dolphin's. 2014-10-12 19:45:26 +02:00
Henrik Rydgård b7f2731860 Merge pull request #6996 from hrydgard/x86-ctxreg
x86 JIT: Sacrifice a register for a pointer to the MIPS context. Shrinks emitted x86 code considerably.
2014-10-12 19:44:14 +02:00