Commit Graph

202 Commits

Author SHA1 Message Date
Lioncash
ac53b2569a video_core/engines: Remove unnecessary includes
Removes a few unnecessary dependencies on core-related machinery, such
as the core.h and memory.h, which reduces the amount of rebuilding
necessary if those files change.

This also uncovered some indirect dependencies within other source
files. This also fixes those.
2019-03-05 20:35:32 -05:00
Fernando Sahmkow
0f6f4aba3a shader_decompiler: Improve Accuracy of Attribute Interpolation. 2019-02-14 03:25:07 -04:00
Fernando Sahmkow
5264a6707b Corrected F2I None mode to RoundEven. 2019-02-11 18:46:45 -04:00
bunnei
f948b53db8 Merge pull request #2081 from ReinUsesLisp/lmem-64
shader_ir/memory: Add LD_L 64 bits loads
2019-02-05 09:17:48 -05:00
bunnei
6071201d9d Merge pull request #2082 from FernandoS27/txq-stl
Fix TXQ not using the component mask.
2019-02-04 20:22:32 -05:00
Mat M
36086fddaa Update src/video_core/engines/shader_bytecode.h
Co-Authored-By: FernandoS27 <fsahmkow27@gmail.com>
2019-02-03 21:27:26 -04:00
Fernando Sahmkow
59a9ee0096 Fix TXQ not using the component mask. 2019-02-03 18:17:18 -04:00
ReinUsesLisp
4820dd2935 shader_bytecode: Rename BytesN enums to BitsN 2019-02-03 00:25:40 -03:00
ReinUsesLisp
a597848a39 shader_ir: Unify constant buffer offset values
Constant buffer values on the shader IR were using different offsets if
the access direct or indirect. cbuf34 has a non-multiplied offset while
cbuf36 does. On shader decoding this commit multiplies it by four on
cbuf34 queries.
2019-01-30 02:45:50 -03:00
ReinUsesLisp
ef2e280aab shader_decode: Implement LDG and basic cbuf tracking 2019-01-30 00:00:15 -03:00
ReinUsesLisp
08c06ddfcb shader_decode: Implement VMAD and VSETP 2019-01-15 17:54:53 -03:00
ReinUsesLisp
f3ac038832 shader_decode: Implement HFMA2 2019-01-15 17:54:52 -03:00
ReinUsesLisp
64eb2135b8 shader_decode: Fixup clang-format 2019-01-15 17:54:52 -03:00
ReinUsesLisp
1d0c39d176 shader_ir: Initial implementation 2019-01-15 17:54:49 -03:00
ReinUsesLisp
c464d85d84 shader_bytecode: Fixup encoding 2019-01-15 17:54:49 -03:00
ReinUsesLisp
535437d828 shader_bytecode: Fixup TEXS.F16 encoding 2018-12-26 01:35:44 -03:00
David Marcec
9ca93aea8e Fixed uninitialized memory due to missing returns in canary
Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
2018-12-19 12:52:32 +11:00
ReinUsesLisp
1126015da5 shader_bytecode: Fixup half float's operator B encoding 2018-12-18 04:28:50 -03:00
heapo
b90caaf285 Implement postfactor multiplication/division for fmul instructions 2018-12-17 07:56:25 -08:00
ReinUsesLisp
7949353fda gl_shader_decompiler: Implement TEXS.F16 2018-12-05 02:06:34 -03:00
bunnei
e79e891413 Merge pull request #1763 from ReinUsesLisp/bfi
gl_shader_decompiler: Implement BFI_IMM_R
2018-11-25 23:04:57 -05:00
bunnei
856470896b Merge pull request #1760 from ReinUsesLisp/r2p
gl_shader_decompiler: Implement R2P_IMM
2018-11-25 22:38:42 -05:00
bunnei
aac622963a Merge pull request #1783 from ReinUsesLisp/clip-distances
gl_shader_decompiler: Implement clip distances
2018-11-25 22:35:30 -05:00
bunnei
62d6011f04 Merge pull request #1769 from ReinUsesLisp/cc
gl_shader_decompiler: Rename cc to condition code and name internal flags
2018-11-23 23:31:04 -05:00
Hexagon12
c646fd7416 Added predicate comparison LessEqualWithNan (#1736)
* Added predicate comparison LessEqualWithNan

* oops

* Clang fix
2018-11-23 08:51:32 -08:00
ReinUsesLisp
e26637b397 gl_shader_decompiler: Implement clip distances 2018-11-23 02:14:43 -03:00
ReinUsesLisp
ad78fdb0f0 gl_shader_decompiler: Rename control codes to condition codes 2018-11-21 22:31:16 -03:00
ReinUsesLisp
b4ca00f0bc gl_shader_decompiler: Implement BFI_IMM_R 2018-11-21 16:12:30 -03:00
ReinUsesLisp
387e0ed814 gl_shader_decompiler: Implement R2P_IMM 2018-11-21 04:56:00 -03:00
bunnei
5d42707d2f Merge pull request #1527 from FernandoS27/assert-flow
Assert Control Flow Instructions using Control Codes
2018-11-01 00:34:56 -04:00
bunnei
b8fc7a601e Merge pull request #1528 from FernandoS27/assert-control-codes
Assert Control Codes Generation on Shader Instructions
2018-10-31 22:34:18 -04:00
FernandoS27
ec11cc6b27 Assert Control Codes Generation 2018-10-30 13:37:55 -04:00
Frederic L
430fd4a964 global: Use std::optional instead of boost::optional (#1578)
* get rid of boost::optional

* Remove optional references

* Use std::reference_wrapper for optional references

* Fix clang format

* Fix clang format part 2

* Adressed feedback

* Fix clang format and MacOS build
2018-10-30 00:03:25 -04:00
FernandoS27
3f8638926e Assert Control Flow Instructions using Control Codes 2018-10-28 19:16:41 -04:00
FernandoS27
d346309468 Implemented LD_L and ST_L 2018-10-24 17:51:53 -04:00
FernandoS27
3c1a14b901 Implement PointSize 2018-10-23 15:08:00 -04:00
bunnei
17101df2e9 Merge pull request #1519 from ReinUsesLisp/vsetp
gl_shader_decompiler: Implement VSETP
2018-10-23 10:22:37 -04:00
ReinUsesLisp
162097902a gl_shader_decompiler: Implement VSETP 2018-10-23 01:07:20 -03:00
ReinUsesLisp
1c02ed4fc1 gl_shader_decompiler: Abstract VMAD into a video subset 2018-10-23 01:07:20 -03:00
bunnei
28060e35cf Merge pull request #1512 from ReinUsesLisp/brk
gl_shader_decompiler: Implement PBK and BRK
2018-10-23 00:01:38 -04:00
FernandoS27
f2953a73b8 Added Saturation to FMUL32I 2018-10-22 20:22:15 -04:00
FernandoS27
55ff461935 Fixed FSETP and FSET 2018-10-22 11:31:17 -04:00
bunnei
765563c7fc Merge pull request #1501 from ReinUsesLisp/half-float
gl_shader_decompiler: Implement H* instructions
2018-10-19 23:47:19 -04:00
ReinUsesLisp
48a94f383e gl_shader_decompiler: Implement PBK and BRK 2018-10-17 21:30:45 -03:00
ReinUsesLisp
fe9e70eea9 shader_bytecode: Add Control Code enum 0xf
Control Code 0xf means to unconditionally execute the instruction. This
value is passed to most BRA, EXIT and SYNC instructions (among others)
but this may not always be the case.
2018-10-15 15:36:47 -03:00
ReinUsesLisp
bc4a21bd68 gl_shader_decompiler: Implement HSET2_R 2018-10-15 02:55:51 -03:00
ReinUsesLisp
50f17d55eb gl_shader_decompiler: Implement HSETP2_R 2018-10-15 02:55:51 -03:00
ReinUsesLisp
9f1181cf15 gl_shader_decompiler: Implement HFMA2 instructions 2018-10-15 02:55:51 -03:00
ReinUsesLisp
234f972802 gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMM 2018-10-15 02:07:16 -03:00
ReinUsesLisp
8338eb154d gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructions 2018-10-15 02:04:31 -03:00