Commit Graph

193 Commits

Author SHA1 Message Date
ReinUsesLisp 9aed1ef451 shader_decode: Implement LOP32I 2019-01-15 17:54:51 -03:00
ReinUsesLisp 5d71064f60 shader_decode: Implement BFE 2019-01-15 17:54:51 -03:00
ReinUsesLisp 6d21611470 shader_decode: Implement FSET 2019-01-15 17:54:51 -03:00
ReinUsesLisp 22618d59df shader_decode: Implement F2I 2019-01-15 17:54:51 -03:00
ReinUsesLisp d373f13b8a shader_decode: Implement I2F 2019-01-15 17:54:51 -03:00
ReinUsesLisp e456e2c1f3 shader_decode: Implement F2F 2019-01-15 17:54:50 -03:00
ReinUsesLisp d72735028d shader_decode: Stub DEPBAR 2019-01-15 17:54:50 -03:00
ReinUsesLisp 6f10bfaa08 shader_decode: Implement SSY and SYNC 2019-01-15 17:54:50 -03:00
ReinUsesLisp fc0b3219fd shader_decode: Implement PSETP 2019-01-15 17:54:50 -03:00
ReinUsesLisp 839abe1408 shader_decode: Implement TMML 2019-01-15 17:54:50 -03:00
ReinUsesLisp 0425f475d5 shader_decode: Implement TEX and TXQ 2019-01-15 17:54:50 -03:00
ReinUsesLisp c8d0937ae5 shader_decode: Implement TEXS (F32) 2019-01-15 17:54:50 -03:00
ReinUsesLisp ec28320c14 shader_decode: Implement FSETP 2019-01-15 17:54:50 -03:00
ReinUsesLisp 3aa53e3c01 shader_decode: Partially implement BRA 2019-01-15 17:54:50 -03:00
ReinUsesLisp 0398f7d0a4 shader_decode: Implement IPA 2019-01-15 17:54:50 -03:00
ReinUsesLisp bc5992fccb shader_decode: Implement EXIT 2019-01-15 17:54:50 -03:00
ReinUsesLisp efda47fa37 shader_decode: Implement ST_A 2019-01-15 17:54:50 -03:00
ReinUsesLisp 0673f11907 shader_decode: Implement LD_A 2019-01-15 17:54:50 -03:00
ReinUsesLisp b7b08104e5 shader_decode: Implement FADD32I 2019-01-15 17:54:50 -03:00
ReinUsesLisp 0b08169b9d shader_decode: Implement FMUL32_IMM 2019-01-15 17:54:50 -03:00
ReinUsesLisp 4e1582eed1 shader_decode: Implement MOV32_IMM 2019-01-15 17:54:50 -03:00
ReinUsesLisp b558235ec6 shader_decode: Stub RRO_C, RRO_R and RRO_IMM 2019-01-15 17:54:50 -03:00
ReinUsesLisp cb19ed0316 shader_decode: Implement FMNMX_C, FMNMX_R and FMNMX_IMM 2019-01-15 17:54:50 -03:00
ReinUsesLisp 12d5281eff shader_decode: Implement MUFU 2019-01-15 17:54:50 -03:00
ReinUsesLisp bdafb25d16 shader_decode: Implement FADD_C, FADD_R and FADD_IMM 2019-01-15 17:54:50 -03:00
ReinUsesLisp aa64616724 shader_decode: Implement FMUL_C, FMUL_R and FMUL_IMM 2019-01-15 17:54:50 -03:00
ReinUsesLisp 42b7053aa4 shader_decode: Implement MOV_C and MOV_R 2019-01-15 17:54:50 -03:00
ReinUsesLisp 5678498dfd glsl_decompiler: Implementation 2019-01-15 17:54:50 -03:00
ReinUsesLisp 74ee18de5e shader_ir: Add condition code helper 2019-01-15 17:54:50 -03:00
ReinUsesLisp 283dd9fb61 shader_ir: Add predicate combiner helper 2019-01-15 17:54:49 -03:00
ReinUsesLisp d28033adca shader_ir: Add comparison helpers 2019-01-15 17:54:49 -03:00
ReinUsesLisp c0d053482c shader_ir: Add half float helpers 2019-01-15 17:54:49 -03:00
ReinUsesLisp e46dd3ce5f shader_ir: Add integer helpers 2019-01-15 17:54:49 -03:00
ReinUsesLisp b91929bf10 shader_ir: Add float helpers 2019-01-15 17:54:49 -03:00
ReinUsesLisp 83e750c9ae shader_ir: Add setters 2019-01-15 17:54:49 -03:00
ReinUsesLisp 394f906044 shader_ir: Add local memory getters 2019-01-15 17:54:49 -03:00
ReinUsesLisp 311d1af657 shader_ir: Add internal flag getters 2019-01-15 17:54:49 -03:00
ReinUsesLisp a66682374f shader_ir: Add attribute getters 2019-01-15 17:54:49 -03:00
ReinUsesLisp 9d5d96500c shader_ir: Add constant buffer getters 2019-01-15 17:54:49 -03:00
ReinUsesLisp 7f89f99c60 shader_ir: Add register getter 2019-01-15 17:54:49 -03:00
ReinUsesLisp f43041efe1 shader_ir: Add immediate node constructors 2019-01-15 17:54:49 -03:00
ReinUsesLisp 25f868d8be shader_ir: Initial implementation 2019-01-15 17:54:49 -03:00
James Rowe a5b9cd4d18 Remove references to PICA and rasterizers in video_core 2018-01-12 19:11:03 -07:00
Huw Pascoe 1089bdda80 Improved performance of FromAttributeBuffer
Ternary operator is optimized by the compiler
whereas std::min() is meant to return a value.

I've noticed a 5%-10% emulation speed increase.
2017-09-17 15:56:36 +01:00
wwylele 6d51febdc4 pica/shader/jit: implement SETEMIT and EMIT 2017-08-19 10:13:20 +03:00
wwylele 4283f4b244 correct constness 2017-08-19 10:13:20 +03:00
wwylele 4d4dbc83a7 pica/shader/interpreter: implement SETEMIT and EMIT 2017-08-19 10:13:20 +03:00
wwylele 2599928707 pica/shader: extend UnitState for GS
Among four shader units in pica, a special unit can be configured to run both VS and GS program. GSUnitState represents this unit, which extends UnitState (which represents the other three normal units) with extra state for primitive emitting. It uses lots of raw pointers to represent internal structure in order to keep it standard layout type for JIT to access.
This unit doesn't handle triangle winding (inverting) itself; instead, it calls a WindingSetter handler. This will be explained in the following commits
2017-08-19 10:13:20 +03:00
wwylele dc6f41bcc5 pica/shader_interpreter: fix off-by-one in LOOP 2017-07-27 13:48:27 +03:00
Yuri Kunde Schlesner ccdeacf149 Stop using reserved operator names (and/or/xor) with Xbyak
Also has the Dynarmic upgrade with the same change
2017-06-17 12:20:22 -07:00