Commit graph

2390 commits

Author SHA1 Message Date
Yuri Kunde Schlesner 698a15f0e3 Merge pull request #1065 from yuriks/shader-fp
Shader FP compliance fixes
2015-08-27 16:34:13 -07:00
bunnei 3cc5b3c4ad gl_rasterizer_cache: Detect and ignore unnecessary texture flushes. 2015-08-27 19:07:53 -04:00
aroulin 2c48cd4b6c Shader JIT: Fix float to integer rounding in MOVA
MOVA converts new address register values from floats to integers using truncation
2015-08-27 15:26:41 +02:00
bunnei eff02466f7 Merge pull request #1074 from lioncash/bool
dyncom: Minor changes to CondPassed
2015-08-26 18:44:52 -04:00
archshift 89241b3e89 Shader JIT: ifdef out reference to ifdef'd out shader_map
shader_map was only defined on x86 architectures, but was cleared on shutdown
with no ifdef protection. Ifdef this out so non-x86 architectures can be built.
2015-08-26 22:28:19 +00:00
Lioncash 3fb10e8f62 dyncom: Simplify some comparisons in CondPassed 2015-08-26 00:10:23 -04:00
Lioncash f8425c3dad dyncom: Change return type of CondPassed to bool 2015-08-25 23:59:01 -04:00
Lioncash efad1a17bf citra-qt: Add a missing header guard to util.h 2015-08-25 23:07:33 -04:00
Yuri Kunde Schlesner 424b0fa646 Integrate the MicroProfile profiling library
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
2015-08-24 22:16:28 -03:00
Yuri Kunde Schlesner 2436b1c104 citra-qt: Add helper function to get a monospace QFont 2015-08-24 22:16:28 -03:00
bunnei 7010a27c7d Merge pull request #1063 from Subv/hw_renderer_debug_fb
HWRenderer: Only reload the framebuffer from gpu memory if the hw renderer is in use during a breakpoint
2015-08-24 13:02:44 -04:00
Yuri Kunde Schlesner 08e13a10f7 fixup! Shaders: Fix multiplications between 0.0 and inf 2015-08-24 02:10:11 -03:00
Yuri Kunde Schlesner 9023d7a1d4 Shader JIT: Tiny micro-optimization in DPH 2015-08-24 01:48:37 -03:00
Yuri Kunde Schlesner 9a4a0cc8e0 Shaders: Fix multiplications between 0.0 and inf
The PICA200 semantics for multiplication are so that when multiplying
inf by exactly 0.0, the result is 0.0, instead of NaN, as defined by
IEEE. This is relied upon by games.

Fixes #1024 (missing OoT interface items)
2015-08-24 01:48:15 -03:00
Yuri Kunde Schlesner 8b0a7e7afe Shaders: Explicitly conform to PICA semantics in MAX/MIN 2015-08-24 01:46:58 -03:00
Yuri Kunde Schlesner c0959ca635 Shader JIT: Add name to second scratch register (XMM4) 2015-08-24 01:46:10 -03:00
Lioncash 33955e171b shader_jit: Replace two MDisp usages with MatR 2015-08-24 00:39:50 -04:00
Yuri Kunde Schlesner f02539e59d Shader JIT: Fix CMP NaN behavior to match hardware 2015-08-24 01:29:40 -03:00
bunnei 986b526e83 Merge pull request #1062 from aroulin/shader-rcp-rsq
Shader: RCP and RSQ computes only the 1st component
2015-08-23 17:56:35 -04:00
bunnei ff54784aac Merge pull request #1057 from aroulin/shader-dph-dphi
Shader: Implement DPH and DPHI in interpreter/JIT
2015-08-23 17:47:09 -04:00
Subv ebb0e78d80 HWRenderer: Only reload the framebuffer from gpu memory if the hw renderer is in use during a breakpoint. 2015-08-23 15:26:17 -05:00
aroulin 8367db5dcd Shader: Use std::sqrt for float instead of sqrt 2015-08-23 22:03:07 +02:00
aroulin 2bcee80587 Shader: RCP and RSQ computes only the 1st component 2015-08-23 22:01:17 +02:00
aroulin 5429dbf738 x64-emitter: add RCPSS SSE instruction 2015-08-23 15:42:58 +02:00
Lioncash 3a56bd4a9e Merge pull request #1058 from lioncash/ptr
emitter: Remove pointer casts
2015-08-22 18:42:47 -04:00
Yuri Kunde Schlesner 91fcf7f484 Fix broken boot introduced by last-minute change in #1025 2015-08-22 18:12:23 -03:00
Yuri Kunde Schlesner e3936a67b7 Merge pull request #1025 from yuriks/heap-management
Kernel: Correct(er) handling of Heap and Linear Heap allocations
2015-08-22 14:01:57 -07:00
aroulin fd789c6858 Shader: implement DPH/DPHI in JIT 2015-08-22 11:09:53 +02:00
aroulin 677a97c8bf Shader: implement DPH/DPHI in interpreter
Tests revealed that the component with w=1 is
SRC1 and not SRC2, it is now fixed on 3dbrew.
2015-08-22 11:09:53 +02:00
Lioncash b150e1d68f emitter: Remove pointer casts
This should also technically silence quite a few ubsan warnings.
2015-08-21 17:09:33 -04:00
Lioncash 70ca886a39 emitter: Remove unnecessary defines 2015-08-20 04:45:32 -04:00
Lioncash fdd90321ea emitter: Remove unnecessary else keywords 2015-08-20 04:45:31 -04:00
Lioncash 911d072bf6 emitter: Remove unused code 2015-08-20 04:45:30 -04:00
Lioncash 3bcd976780 emitter: Remove unimplemented JMP prototype 2015-08-20 04:45:29 -04:00
Lioncash c46738bebc emitter: Pass OpArg by reference where possible 2015-08-20 04:45:28 -04:00
Lioncash 62626196cb emitter: Remove unnecessary inline specifiers
Functions implemented in a class definition are already implicitly inline.
2015-08-20 04:45:22 -04:00
bunnei cbcf9e8eaf Merge pull request #1035 from darkf/mingw-fix
Fix building under MinGW
2015-08-19 20:40:31 -04:00
bunnei addc2ed6fe Merge pull request #1055 from aroulin/shader-sge-sgei-slt
Shader: Implement SGE, SGEI and SLT in interpreter/JIT
2015-08-19 19:58:49 -04:00
Yuri Kunde Schlesner d7230928d6 Merge pull request #1045 from LittleWhite-tb/qt-recent-files
Improvements for MRU
2015-08-19 13:04:03 -07:00
LittleWhite 02b4412e66 Improvements for MRU
avoid duplicates
always put the last file loaded to top of the list
2015-08-19 21:33:34 +02:00
aroulin d1c8dcd844 Shader: implement SGE, SGEI and SLT in JIT 2015-08-19 14:29:39 +02:00
aroulin 76afa48b0c Shader: implement SGE, SGEI in interpreter 2015-08-19 14:29:39 +02:00
Yuri Kunde Schlesner 8220a201eb Merge pull request #996 from yuriks/texture-copy
GPU: Implement TextureCopy-mode display transfers
2015-08-18 20:52:40 -07:00
bunnei 4b36548b41 Merge pull request #1047 from aroulin/shader-ex2-lg2
Shader: Save caller-saved registers in JIT before a CALL
2015-08-18 22:02:25 -04:00
aroulin 12e2cb045f Shader: Save caller-saved registers in JIT before a CALL 2015-08-19 03:40:07 +02:00
bunnei b358d3e07a Merge pull request #1037 from aroulin/shader-ex2-lg2
Shader: Implement EX2 and LG2 in interpreter/JIT
2015-08-18 19:42:32 -04:00
darkf 8d212ff881 Fix building under MinGW 2015-08-17 22:21:14 -07:00
bunnei 21029bea74 Merge pull request #1034 from yuriks/rg8-textures
videocore: Added RG8 texture support
2015-08-16 22:17:12 -04:00
aroulin 28f5cdc0dd Shader: implement EX2 and LG2 in JIT 2015-08-17 01:12:34 +02:00
LittleWhite a98d1fc3fa Fix Linux GCC 4.9 build (complaining about undeclared memset) 2015-08-16 17:21:08 +02:00