Commit Graph

15394 Commits

Author SHA1 Message Date
Ryan Houdek 1dbb39f791 [ARM32] srawix optimization when source is an immediate. 2014-11-30 04:10:15 +00:00
Ryan Houdek fca0fd9dd5 [ARM32] rlwimix and rlwnmx optimizations. 2014-11-30 04:10:15 +00:00
Rohit Nirmal 239eaf122a VideoCommon: Fix -Wsign-compare warnings. 2014-11-29 17:40:14 -06:00
magumagu c693cf46e9 JIT: remove unused flag. 2014-11-29 12:41:36 -08:00
Fiora 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
Fiora 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
Fiora 8d039a77af JIT: minor cleanup, avoid MOVSD where MOVAPD will do
Avoids false dependencies.
2014-11-29 11:30:51 -08:00
Fiora 7df50b0710 JIT: skip weird fmul rounding if the input is known to be single precision 2014-11-29 11:30:51 -08:00
Yuriy O'Donnell 36b886cb80 D3D: Viewport min and max depth is now clamped to [0..1] range 2014-11-29 11:42:53 +01:00
Yuriy O'Donnell 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
Yuriy O'Donnell 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
Yuriy O'Donnell 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
Ryan Houdek d4125231f3 Merge pull request #1608 from Sonicadvance1/fix-gles3-rendering
Fixes OpenGL ES rendering.
2014-11-29 01:28:36 -06:00
Ryan Houdek 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
Ryan Houdek f588a82b9a Merge pull request #1294 from FioraAeterna/noaccuratefcmp
JIT: remove "accurate fcmp" option
2014-11-28 22:48:11 -06:00
Ryan Houdek 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
Ryan Houdek e7daf6b3bc Merge pull request #1606 from FioraAeterna/vertexloadercall
Vertex loader: use ABI_CallFunction
2014-11-28 22:40:06 -06:00
Ryan Houdek 5003618587 Merge pull request #1605 from FioraAeterna/fixcrormerge
JIT: fix fcmp+cror merging bug
2014-11-28 22:39:13 -06:00
Ryan Houdek 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
Ryan Houdek 2d2baec65d Merge pull request #1595 from degasus/master
OGL: require GL version >= 3.0
2014-11-28 22:37:35 -06:00
Fiora 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
Ryan Houdek ec3d6da7b5 [ARM32] Remove conditional execution from store instructions. 2014-11-29 02:44:17 +00:00
Ryan Houdek 6c399ce9ae [ARM32] Removes a block of conditional execution in the dispatcher. 2014-11-29 02:42:30 +00:00
Ryan Houdek e358696d46 [ARM32] Removes conditional execution from ARMv7's Jit function. 2014-11-29 02:42:22 +00:00
Lioncash c2e5715034 Merge pull request #1601 from RachelBryk/wiimote-hotkey2
Fix wiimote connect hotkeys.
2014-11-28 19:50:13 -05:00
Fiora 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
Ryan Houdek ce059769f6 Merge pull request #1439 from Armada651/ogl-stereo-3d
OGL: Stereoscopic 3D Support
2014-11-28 11:45:38 -06:00
Fiora 41f5ef3304 JIT: remove "fast interrupts" option set and then used nowhere 2014-11-28 06:42:40 -08:00
Fiora 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
Rachel Bryk df9ace0985 Fix wiimote connect hotkeys. 2014-11-28 08:55:19 -05:00
skidau 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
Fiora 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
Unknown W. Brackets 815b7bec96 DiscIO: Change a memset() to zero initialization. 2014-11-27 11:12:17 -08:00
Unknown W. Brackets f54bf81520 DiscIO: Avoid zeroing buffer when compressing gcz.
This saves 6% time.
2014-11-27 08:58:09 -08:00
Unknown W. Brackets 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
Unknown W. Brackets f2f83a0c60 DolphinWX: Allow cancelling gcz compression. 2014-11-27 07:53:28 -08:00
Jules Blok 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
Jules Blok 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
degasus 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
Ryan Houdek f151f5ed23 Merge pull request #1594 from rohit-n/build-pch
Fix building with PCH disabled.
2014-11-26 10:40:07 -06:00
Rohit Nirmal 84b060d313 Fix building with PCH disabled. 2014-11-26 10:21:04 -06:00
Lioncash 25492f3d70 Merge pull request #1593 from lioncash/arm
Arm(64)Emitter: Make some variables static
2014-11-26 07:56:21 -05:00
Lioncash e9b09a4c9f Arm(64)Emitter: Make some variables static 2014-11-25 23:27:48 -05:00
skidau b806680eac Merge pull request #1522 from jcowgill/sfml-2.1
Update / Port to SFML 2.1
2014-11-26 12:33:03 +11:00
skidau 69bd1562e2 Merge pull request #1561 from comex/10.9
Update OS X Requirement to 10.9 + fixes
2014-11-26 12:31:28 +11:00
Fiora 3be31ca2c8 JIT: remove "accurate fcmp" option
This doesn't seem to be necessary anymore now that FPRF is implemented in the
JIT. Technically, this isn't the same as before, since the JIT doesn't
implement the fcmp exception semantics, but as far as testing has shown, this
doesn't seem necessary.

This should make games that use FPRF a few percent faster (e.g. F-Zero GX)
since fcmpx no longer has to be fallbacked.
2014-11-25 09:54:40 -08:00
Lioncash 4afb85ef33 Merge pull request #1584 from degasus/master
OGL: also show driver warnings on release builds
2014-11-25 12:41:47 -05:00
Lioncash aa92797f93 Merge pull request #1582 from Stevoisiak/newImprovedFormatting
More formatting and consistency fixes
2014-11-25 12:41:32 -05:00
Lioncash dcdd4e51f6 Merge pull request #1589 from lioncash/x11
VideoOGL: Move X11 wxWidgets utilities to DolphinWX
2014-11-25 12:41:00 -05:00
James Cowgill a93f86330e Port dolphin to SFML 2.1 2014-11-25 16:44:38 +00:00