Commit Graph

15402 Commits

Author SHA1 Message Date
b689954a71 Update the android cmake toolchain to latest.
To properly support 64bit architectures and clang we need the latest version.
2014-11-30 01:05:37 -06:00
cd13d2d66f [ARM32] Fix a couple bugs in the paired loadstore routines.
This code was obviously wrong, we were sign extending 8 bit unsigned values and loading from the wrong offset as well.
This fixes a bug in Muramasa where some colours were going insane.
2014-11-30 04:10:17 +00:00
b848365f78 [ARM32] Minor optimization in paired loadstores.
When the offset can fit in the instruction encoding make sure to do so.
2014-11-30 04:10:16 +00:00
52c6fb180b [ARM32] Moves loadstore extend flag to backpatch code. 2014-11-30 04:10:16 +00:00
32dc105aa3 [ARM32] Eat a register to store our memory base.
This saves at least two instructions per fastmem operation.
2014-11-30 04:10:16 +00:00
e2f8286415 [ARM32] Adds unsigned compares.
Superscedes PR #1131.
Optimizes cmpi a bit.
2014-11-30 04:10:16 +00:00
581ab9edec [ARM32] cntlzwx optimization if source is immediate 2014-11-30 04:10:16 +00:00
9c82adb14f [ARM32] negx optimization if source is immediate 2014-11-30 04:10:15 +00:00
1dbb39f791 [ARM32] srawix optimization when source is an immediate. 2014-11-30 04:10:15 +00:00
fca0fd9dd5 [ARM32] rlwimix and rlwnmx optimizations. 2014-11-30 04:10:15 +00:00
239eaf122a VideoCommon: Fix -Wsign-compare warnings. 2014-11-29 17:40:14 -06:00
c693cf46e9 JIT: remove unused flag. 2014-11-29 12:41:36 -08:00
72c96c20d3 JIT: more optimizing of float ops based on known input characteristics
If the inputs are both float singles, and the top half is known to be identical
to the bottom half, we can use packed arithmetic instead of scalar to skip
the movddup.

This is slower on a few rather old CPUs, plus the Atom+Silvermont, so detect
Atom and disable it in that case.

Also avoid PPC_FP on stores if we know that the output came from a float op.
2014-11-29 11:33:11 -08:00
4e0591cdf1 JIT: float instruction attribute fixes, fix binding mistakes
These instructions modify only the bottom halves of the output register,
so the output register needs to be treated as an input too.
2014-11-29 11:30:52 -08:00
8d039a77af JIT: minor cleanup, avoid MOVSD where MOVAPD will do
Avoids false dependencies.
2014-11-29 11:30:51 -08:00
7df50b0710 JIT: skip weird fmul rounding if the input is known to be single precision 2014-11-29 11:30:51 -08:00
36b886cb80 D3D: Viewport min and max depth is now clamped to [0..1] range 2014-11-29 11:42:53 +01:00
a886d8a8ee Renamed DEPTHPARAMS to PIXELCENTERCORRECTION
This shader constant was previously used for depth remapping in D3D and for pixel center correction. Now it only serves one purpose and the new name makes it clear.
2014-11-29 11:42:52 +01:00
1fe3d07cbd D3D: Removed somewhat mysterious comment
It would be good to know which games exactly exhibited the issue.
2014-11-29 11:11:28 +01:00
cc2227fbc3 D3D: Replaced shader-based depth range remap with viewport
This fixes UI rendering in some games mentioned in https://code.google.com/p/dolphin-emu/issues/detail?id=7785
2014-11-29 11:11:28 +01:00
d4125231f3 Merge pull request #1608 from Sonicadvance1/fix-gles3-rendering
Fixes OpenGL ES rendering.
2014-11-29 01:28:36 -06:00
38dfc970df Fixes OpenGL ES rendering.
sampler2DArray doesn't have a default precision, so we need to set it ourselves.
2014-11-29 01:27:47 -06:00
f588a82b9a Merge pull request #1294 from FioraAeterna/noaccuratefcmp
JIT: remove "accurate fcmp" option
2014-11-28 22:48:11 -06:00
1aed2542c7 Merge pull request #1602 from FioraAeterna/fixforce25bitimprecise
JIT: fix Force25BitPrecision with accurate single precision mode off
2014-11-28 22:42:44 -06:00
e7daf6b3bc Merge pull request #1606 from FioraAeterna/vertexloadercall
Vertex loader: use ABI_CallFunction
2014-11-28 22:40:06 -06:00
5003618587 Merge pull request #1605 from FioraAeterna/fixcrormerge
JIT: fix fcmp+cror merging bug
2014-11-28 22:39:13 -06:00
1a85df0459 Merge pull request #1603 from FioraAeterna/nofastinterrupts
JIT: remove "fast interrupts" option set and then used nowhere
2014-11-28 22:37:52 -06:00
2d2baec65d Merge pull request #1595 from degasus/master
OGL: require GL version >= 3.0
2014-11-28 22:37:35 -06:00
7acd5eba17 Vertex loader: use ABI_CallFunction
Should result in faster/shorter code sequences on platforms where generated
code is close enough to the code segment (e.g. Windows).
2014-11-28 20:26:00 -08:00
ec3d6da7b5 [ARM32] Remove conditional execution from store instructions. 2014-11-29 02:44:17 +00:00
6c399ce9ae [ARM32] Removes a block of conditional execution in the dispatcher. 2014-11-29 02:42:30 +00:00
e358696d46 [ARM32] Removes conditional execution from ARMv7's Jit function. 2014-11-29 02:42:22 +00:00
c2e5715034 Merge pull request #1601 from RachelBryk/wiimote-hotkey2
Fix wiimote connect hotkeys.
2014-11-28 19:50:13 -05:00
d42305aba0 JIT: fix fcmp+cror merging bug
Destination CR bit needs to be cleared if it's not one of the sources.
2014-11-28 16:11:04 -08:00
ce059769f6 Merge pull request #1439 from Armada651/ogl-stereo-3d
OGL: Stereoscopic 3D Support
2014-11-28 11:45:38 -06:00
41f5ef3304 JIT: remove "fast interrupts" option set and then used nowhere 2014-11-28 06:42:40 -08:00
3e893913dd JIT: fix Force25BitPrecision with accurate single precision mode off
Doesn't affect anything now, but it's more correct (and should make setting
AccurateSinglePrecision to false work properly now).
2014-11-28 06:39:47 -08:00
df9ace0985 Fix wiimote connect hotkeys. 2014-11-28 08:55:19 -05:00
0e3d20c349 Merge pull request #1599 from FioraAeterna/fixfifowrite
JIT: clear FIFO write addresses when block cache is cleared
2014-11-28 12:49:22 +11:00
561e96b080 JIT: clear FIFO write addresses when block cache is cleared
Fixes a spurious FIFO write check which caused a flags locking assert in
Splinter Cell: Double Agent.
2014-11-27 17:15:01 -08:00
815b7bec96 DiscIO: Change a memset() to zero initialization. 2014-11-27 11:12:17 -08:00
f54bf81520 DiscIO: Avoid zeroing buffer when compressing gcz.
This saves 6% time.
2014-11-27 08:58:09 -08:00
2635e7d9ea DiscIO: Decompress to file using a larger buffer.
This improves performance by around 20% for me, and the memory use impact
is negligible considering Dolphin is otherwise unusable.
2014-11-27 08:34:44 -08:00
f2f83a0c60 DolphinWX: Allow cancelling gcz compression. 2014-11-27 07:53:28 -08:00
6d51455195 VideoConfig: Further optimize convergence and separation values and update their descriptions.
Previous convergence distance was much too large.
2014-11-27 16:19:26 +01:00
b3c6602d06 OGL: Only show the options when stereoscopy was enabled in the INI file.
We'll enable the stereoscopy options globally when it is ready for release.
2014-11-27 16:17:37 +01:00
c63a38088a OGL: require GL version >= 3.0
This "fix" a crash because of glVertexAttribI only available on gl3+ contexts.
2014-11-26 21:33:47 +01:00
f151f5ed23 Merge pull request #1594 from rohit-n/build-pch
Fix building with PCH disabled.
2014-11-26 10:40:07 -06:00
84b060d313 Fix building with PCH disabled. 2014-11-26 10:21:04 -06:00
25492f3d70 Merge pull request #1593 from lioncash/arm
Arm(64)Emitter: Make some variables static
2014-11-26 07:56:21 -05:00