gdkchan
9d789f99f9
Add intrinsics support ( #121 )
...
* Initial intrinsics support
* Update tests to work with the new Vector128 type and intrinsics
* Drop SSE4.1 requirement
* Fix copy-paste mistake
2018-05-11 20:10:27 -03:00
gdkchan
570ac65025
NvServices refactoring ( #120 )
...
* Initial implementation of NvMap/NvHostCtrl
* More work on NvHostCtrl
* Refactoring of nvservices, move GPU Vmm, make Vmm per-process, refactor most gpu devices, move Gpu to Core, fix CbBind
* Implement GetGpuTime, support CancelSynchronization, fix issue on InsertWaitingMutex, proper double buffering support (again, not working properly for commercial games, only hb)
* Try to fix perf regression reading/writing textures, moved syncpts and events to a UserCtx class, delete global state when the process exits, other minor tweaks
* Remove now unused code, add comment about probably wrong result codes
2018-05-07 15:53:23 -03:00
LDj3SNuD
222045bf49
Add Sqxtn_S, Sqxtn_V, Uqxtn_S, Uqxtn_V instructions and Tests (6). ( #110 )
...
* Update ILGeneratorEx.cs
* Update AOpCodeTable.cs
* Update AInstEmitSimdArithmetic.cs
* Update CpuTestSimd.cs
* Update CpuTestSimdReg.cs
* Update CpuTest.cs
* Update Pseudocode.cs
* Update Instructions.cs
* Update AInstEmitSimdArithmetic.cs
* Update AInstEmitSimdArithmetic.cs
* Update AInstEmitSimdArithmetic.cs
2018-04-29 20:39:58 -03:00
LDj3SNuD
f02d8bd7b5
Update AOpCodeTable.cs ( #108 )
2018-04-25 23:26:41 -03:00
LDj3SNuD
e20c415768
Add Cls_V, Clz_V, Orn_V instructions. Add 18 Tests: And_V, Bic_V, Bif_V, Bit_V, Bsl_V, Cls_V, Clz_V, Orn_V, Orr_V. ( #104 )
...
* Update AOpCodeTable.cs
* Update AInstEmitSimdLogical.cs
* Update AInstEmitSimdArithmetic.cs
* Update ASoftFallback.cs
* Update AInstEmitAlu.cs
* Update Pseudocode.cs
* Update Instructions.cs
* Update CpuTestSimdReg.cs
* Update CpuTestSimd.cs
2018-04-25 23:20:22 -03:00
gdkchan
ae8bb487db
Improved logging ( #103 )
2018-04-24 15:57:39 -03:00
gdkchan
dcd0b977f8
Print guest stack trace on a few points that can throw exceptions
2018-04-22 02:48:17 -03:00
gdkchan
464195813f
Stub a few services, add support for generating call stacks on the CPU
2018-04-22 01:22:46 -03:00
LDj3SNuD
90fabc8e0b
Fix Addp_S in AOpCodeTable. Add 5 Tests: ADDP (scalar), ADDP (vector), ADDV. ( #96 )
...
* Update AOpCodeTable.cs
* Update Pseudocode.cs
* Update Instructions.cs
* Update CpuTestSimd.cs
* Update CpuTestSimdReg.cs
* Update Instructions.cs
* Revert "Started to work in improving the sync primitives"
2018-04-21 16:15:04 -03:00
LDj3SNuD
8d1872cc96
Add ADDHN{2}, RADDHN{2}, SUBHN{2}, RSUBHN{2} (vector) instructions. Add 8 Tests. ( #92 )
...
* Update AOpCodeTable.cs
* Update AInstEmitSimdArithmetic.cs
* Update Pseudocode.cs
* Update Instructions.cs
* Update Bits.cs
* Create CpuTestSimd.cs
* Create CpuTestSimdReg.cs
* Update CpuTestSimd.cs
Provide a better supply of input values for the 20 Simd Tests.
* Update CpuTestSimdReg.cs
Provide a better supply of input values for the 20 Simd Tests.
* Update AOpCodeTable.cs
* Update AInstEmitSimdArithmetic.cs
* Update CpuTestSimd.cs
* Update CpuTestSimdReg.cs
2018-04-20 12:40:15 -03:00
gdkchan
0fcd0c3d86
Add SvcSetThreadActivity, tweak SignalProcessWideKey, add fmul32i shader instructions and other small fixes
2018-04-19 16:18:30 -03:00
MS-DOS1999
4c0da26c30
Fix Fmin/max and add vector version, add and modifying fmin/max tests ( #89 )
2018-04-19 00:22:12 -03:00
LDj3SNuD
7a306d9caa
Add ABS (scalar & vector), ADD (scalar), NEG (scalar) instructions. ( #88 )
...
* Update AOpCodeTable.cs
* Update AInstEmitSimdArithmetic.cs
* Update AOpCodeTable.cs
2018-04-18 10:56:27 -03:00
LDj3SNuD
8fddc8351f
Add TRN1 & TRN2 (vector) instructions. Add 4 simple tests (4S, 8B). ( #77 )
...
* Update AOpCodeTable.cs
* Update AInstEmitSimdMove.cs
* Update CpuTestSimdMove.cs
* Update AInstEmitSimdMove.cs
* Update CpuTestSimdMove.cs
2018-04-12 11:52:00 -03:00
gdkchan
29338dc446
[CPU] Speed up translation a little bit
2018-04-11 14:44:03 -03:00
gdkchan
d8550b8cda
[CPU] Fix CNT instruction
2018-04-10 20:58:32 -03:00
LDj3SNuD
bad6d9b7a0
Add FMUL (scalar, by element) instruction; add FRECPE, FRECPS (scalar & vector) instructions. Add 5 simple tests. ( #74 )
...
* Update AOpCodeTable.cs
* Update AInstEmitSimdArithmetic.cs
* Update AInstEmitSimdHelper.cs
* Update CpuTestSimdArithmetic.cs
* Update AOpCodeTable.cs
* Update AInstEmitSimdArithmetic.cs
2018-04-08 16:08:57 -03:00
gdkchan
189387ffe5
[CPU] Fix CBZ/CBNZ with 32 bits operands
2018-04-06 17:22:26 -03:00
gdkchan
576da7ae32
[CPU] Fail early when the index/size of the vector is invalid
2018-04-06 15:39:39 -03:00
gdkchan
91d43b31f0
Fix FRSQRTS and FCM* (scalar) instructions
2018-04-06 10:20:17 -03:00
gdkchan
fe1d7c3c4d
Add FMLS (vector) instruction
2018-04-06 01:41:54 -03:00
gdkchan
02f34e39e1
Add FRSQRTS and FCM* instructions
2018-04-05 23:28:12 -03:00
Merry
0c986ce8c5
Implement Frsqrte_S ( #72 )
...
* Implement Frsqrte_S
* Implement Frsqrte_V
* Add Frsqrte_S test
2018-04-05 20:36:19 -03:00
gdkchan
7d9a869b2e
Add Faddp (vector) instruction
2018-04-04 22:13:10 -03:00
gdkchan
21f6e3699e
HashSet is not thread safe, hopefully this fixes the CPU issue where it throws a exception on Add
2018-04-04 18:17:37 -03:00
gdkchan
cf7e8861d5
Add PRFM (unscaled) instruction
2018-04-04 18:10:20 -03:00
gdkchan
ac6e677798
Add FNEG (vector) instruction
2018-04-04 16:36:07 -03:00
gdkchan
9e36cf2dbb
Fix 32-bits extended register instructions with 64-bits extensions
2018-03-30 23:32:06 -03:00
gdkchan
edbbc1dfec
Enable all ld/st (single structure) instructions
2018-03-30 18:06:02 -03:00
gdkchan
63c0199701
Fix EXT/Widening instruction carrying garbage values on some cases, fix ABD (it shouldn't accumulate, this is another variation of the instruction)
2018-03-30 17:37:31 -03:00
gdkchan
b84e1e0653
Add BIT instruction
2018-03-30 16:46:00 -03:00
gdkchan
d884023579
Add UABD instruction
2018-03-30 16:30:23 -03:00
gdkchan
3594ead0ab
Add UABDL instruction
2018-03-30 16:16:16 -03:00
gdkchan
dc6b3fce12
Add UADDL instruction
2018-03-30 15:55:28 -03:00
gdkchan
d60d206cde
Add UHADD instruction
2018-03-30 12:37:07 -03:00
gdkchan
6268c2e3b4
Add FNMADD instruction
2018-03-24 00:28:23 -03:00
LDj3SNuD
7fb3d68a66
Add Cls Instruction. ( #67 )
...
* Update AInstEmitAlu.cs
* Update ASoftFallback.cs
* Update AOpCodeTable.cs
2018-03-23 22:06:05 -03:00
MS-DOS1999
3a7f42cc8e
Add Frint Instructions and Tests ( #62 )
...
* add 'ADC 32bit and Overflow' test
* Add WZR/WSP tests
* fix ADC and ADDS
* add ADCS test
* add SBCS test
* indent my code and delete comment
* '/' <- i hate you x)
* remove spacebar char
* remove false tab
* add frintx_S test
* update frintx_S test
* add ASRV test
* fix new line
* fix PR
* fix indent
* Add add_V tests
* work on Frintx_V
* Add Frintx_V Instruction
* add some instruction and test
* Syntax + indent
* Delete Console Write
* Delete Console Write 2
* CR del
* Skip NaNs tests
* Skip NaNs tests 2
* Fix errors 1
* Fix errors 2
2018-03-23 07:40:23 -03:00
gdkchan
d0afedbf02
Rename IpcServices -> Services
2018-03-20 17:00:00 -03:00
gdkchan
b3ff3e85d3
Add BFI instruction, even more audout fixes
2018-03-16 00:42:44 -03:00
gdkchan
3a964ca287
Add MLA (vector by element), fixes some cases of MUL (vector by element)?
2018-03-15 22:36:47 -03:00
gdkchan
d79cab48ae
Improvements to audout ( #58 )
...
* Some audout refactoring and improvements
* More audio improvements
* Change ReadAsciiString to use long for the Size, avoids some casting
2018-03-15 21:06:24 -03:00
gdkchan
af7683c6ad
Fix crc32 instruction with size greater than a byte
2018-03-15 18:14:22 -03:00
gdkchan
36354a9589
Fix CPU instruction Ld/St (single structure) with index != 0
2018-03-15 12:59:23 -03:00
gdkchan
cb3fea6aaa
CPU fix for the cases using a Mask with shift = 0
2018-03-14 01:59:22 -03:00
gdkchan
c29235420d
Remove unused function from CPU
2018-03-14 00:57:07 -03:00
gdkchan
5bdaf351a0
Add CRC32 instruction and SLI (vector)
2018-03-14 00:12:05 -03:00
gdkchan
bc41bea0cb
Add pl:u stub, use higher precision on CNTPCT_EL0 register tick count
2018-03-13 21:24:32 -03:00
gdkchan
54c791cd50
IAudioDeviceService -> IAudioDevice
2018-03-12 16:31:09 -03:00
gdkchan
2debd76527
Fix GetAudioRenderersProcessMasterVolume which was totally wrong
2018-03-12 16:29:06 -03:00