gdkchan and GitHub
e9c15d32cb
Use a different method for out of bounds blit ( #2302 )
...
* Use a different method for out of bounds blit
* This is not needed
2021-05-22 01:26:49 +02:00
gdkchan and GitHub
a03bbef4d6
Add another Depth32F texture format ( #2304 )
2021-05-22 01:15:08 +02:00
gdkchan and GitHub
f0add129e2
Fix non-independent blend state not being updated ( #2303 )
...
* Fix non-independent blend state not being updated
* Actually, this is not needed
2021-05-22 01:08:00 +02:00
gdkchan and GitHub
12533e5c9d
Fix buffer and texture uses not being propagated for vertex A/B shaders ( #2300 )
...
* Fix buffer and texture uses not being propagated for vertex A/B shaders
* Shader cache version bump
2021-05-20 21:43:23 +02:00
gdkchan and GitHub
b34c0a47b4
Fix constant buffer array size when indexing is used and other buffer descriptor and resolution scale regressions ( #2298 )
...
* Fix constant buffer array size when indexing is used
* Change default QueryConstantBufferUse value
* Fix more regressions
* Ensure proper order
2021-05-20 15:12:15 -03:00
gdkchan and GitHub
49745cfa37
Move shader resource descriptor creation out of the backend ( #2290 )
...
* Move shader resource descriptor creation out of the backend
* Remove now unused code, and other nits
* Shader cache version bump
* Nits
* Set format for bindless image load/store
* Fix buffer write flag
2021-05-19 23:15:26 +02:00
gdkchan and GitHub
e318022b89
Fold constant offsets and group constant addresses ( #2285 )
...
* Fold constant offsets and group constant addresses
* PPTC version bump
2021-05-13 21:26:57 +02:00
gdkchan and GitHub
a8022ca3a1
Fix race in SM initialization ( #2280 )
2021-05-12 00:57:21 +02:00
gdkchan and GitHub
ebdbaa6db0
Fix a specific core migration bug on the scheduler ( #2271 )
2021-05-11 13:18:50 -03:00
gdkchan and GitHub
0e9823d7e6
Fix shader buffer write flag on atomic instructions ( #2261 )
...
* Fix shader buffer write flag on atomic instructions
* Shader cache version bump
2021-05-01 20:46:21 +02:00
gdkchan and GitHub
20d2347971
Fix GetClockSnapshot not writing steady clock timepoint ( #2249 )
2021-04-26 23:56:14 +02:00
gdkchan and GitHub
992133e9ca
Fix IsRegionInUse check on NV memory allocator ( #2243 )
2021-04-25 02:13:58 +02:00
gdkchan and GitHub
4770cfa920
Only enable clip distance if written to on shader ( #2217 )
...
* Only enable clip distance if written to on shader
* Signal InstanceId use through FeatureFlags
* Shader cache version bump
2021-04-20 12:33:54 +02:00
gdkchan and GitHub
40e276c9b5
Improve shader global memory to storage pass ( #2200 )
...
* Improve shader global memory to storage pass
* Formatting and more comments
* Shader cache version bump
2021-04-18 12:31:39 +02:00
gdkchan and GitHub
001005b3d5
Fix sub-image copies on intel GPUs ( #2198 )
2021-04-13 03:09:42 +02:00
gdkchan and GitHub
d43a56726c
(CPU) Fix CRC32 instruction when constant values are used as input ( #2183 )
2021-04-07 23:43:08 +02:00
gdkchan and GitHub
874540bb5c
Allow DRAM size to be increased from 4GB to 6GB ( #2174 )
...
* Allow DRAM size to be increased from 4GB to 6GB
* Add option on the UI
2021-04-04 14:06:59 +02:00
gdkchan and GitHub
f665e1b409
Hold reference for render targets in use ( #2156 )
2021-04-02 16:33:39 +02:00
gdkchan and GitHub
524fe3bea4
Implement shader HelperThreadNV ( #2163 )
...
* Implement shader HelperThreadNV
* Bump shader cache version
* Use gl_HelperInvocation since its supported across all vendors
* Nit
2021-04-02 21:50:35 +11:00
gdkchan and GitHub
a0b4799f19
Fix ZN flags set for shader instructions using RZ.CC dest ( #2147 )
...
* Fix ZN flags set for shader instructions using RZ.CC dest
* Shader cache version bump and nits
2021-03-27 22:59:05 +01:00
gdkchan and GitHub
5ab5b0e709
Close ILibraryAppletAccessor handles on disposal ( #2094 )
2021-03-10 21:36:38 +01:00
gdkchan and GitHub
9d82d27df2
Fix memory tracking performance regression ( #2026 )
...
* Fix memory tracking performance regression
* Set PTC version
2021-02-17 09:16:20 +11:00
715b605e95
Validate CPU virtual addresses on access ( #1987 )
...
* Enable PTE null checks again
* Do address validation on EmitPtPointerLoad, and make it branchless
* PTC version increment
* Mask of pointer tag for exclusive access
* Move mask to the correct place
Co-authored-by: LDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com >
2021-02-16 19:04:19 +01:00
gdkchan and GitHub
c465d771dd
Enable multithreaded VP9 decoding ( #2009 )
...
* Enable multithreaded VP9 decoding
* Limit the number of threads used for video decoding
2021-02-11 01:54:42 +01:00
gdkchan and GitHub
5ea7d77981
Fix inter-process data copy on non-contiguous physical regions ( #1988 )
2021-02-08 10:54:49 +11:00
gdkchan and GitHub
4047477866
Simplify handling of shader vertex A ( #1999 )
...
* Simplify handling of shader vertex A
* Theres no transformation feedback, its transform
* Merge TextureHandlesForCache
2021-02-08 10:42:17 +11:00
gdkchan and GitHub
ee28ccebf4
Disable partial JIT invalidation on unmap ( #1991 )
2021-02-08 10:25:14 +11:00
gdkchan and GitHub
7016d95eb1
Implement ETC2 (RGB) texture format ( #2000 )
...
* Implement ETC2 format
* Fix component counts for compressed formats
2021-02-08 10:23:56 +11:00
gdkchan and GitHub
67033ed8e0
Do not flush multisample textures ( #1973 )
2021-02-01 08:30:16 +01:00
gdkchan and GitHub
053dcfdb05
Use multiple dest operands for shader call instructions ( #1975 )
...
* Use multiple dest operands for shader call instructions
* Passing opNode is no longer needed
2021-02-01 11:13:38 +11:00
gdkchan and GitHub
f93089a64f
Implement geometry shader passthrough ( #1961 )
...
* Implement geometry shader passthrough
* Cache version change
2021-01-29 14:38:51 +11:00
gdkchan and GitHub
4b7c7dab9e
Support multiple destination operands on shader IR and shuffle predicates ( #1964 )
...
* Support multiple destination operands on shader IR and shuffle predicates
* Cache version change
2021-01-28 10:59:47 +11:00
gdkchan and GitHub
dcce407071
Lower precision of estimate instruction results to match Arm behavior ( #1943 )
...
* Lower precision of estimate instruction results to match Arm behavior
* PTC version update
* Nits
2021-01-28 10:23:00 +11:00
gdkchan and GitHub
98d0240ce6
Support shader F32 to Bool reinterpretation ( #1969 )
2021-01-27 09:19:30 +01:00
gdkchan and GitHub
a8e9dd2f83
Fix regression on shader atomic SSBO operations ( #1967 )
...
* Fix regression on shader atomic SSBO operations
* Update comment
2021-01-27 11:26:23 +11:00
gdkchan and GitHub
caf049ed15
Avoid some redundant GL calls ( #1958 )
2021-01-27 08:44:07 +11:00
gdkchan and GitHub
d6bd0470fb
Fix conditional rendering without queries ( #1965 )
2021-01-27 08:42:12 +11:00
gdkchan and GitHub
9551bfdeeb
Fix compute shader code dumping ( #1960 )
2021-01-26 18:27:18 +01:00
gdkchan and GitHub
e453ba69f4
Add support for shader atomic min/max (S32) ( #1948 )
2021-01-26 17:38:33 +11:00
gdkchan and GitHub
f94acdb4ef
Allow out of bounds storage buffer access by aligning their sizes ( #1870 )
...
* Allow out of bounds storage buffer access by aligning their sizes
* Use correct size
* Fix typo and comment on the reason for the change
2021-01-25 09:22:19 +11:00
gdkchan and GitHub
f565b0e5a6
Match texture if the physical range is the same ( #1934 )
...
* Match texture if the physical range is the same
* XML docs and comments
2021-01-23 13:38:00 +01:00
gdkchan and GitHub
6a95a3b01a
Fix alignment on CreateTransferMemoryStorage ( #1937 )
2021-01-19 21:48:27 -03:00
gdkchan and GitHub
b8353f5639
Enable parallel ASTC decoding by default ( #1930 )
2021-01-19 14:19:52 +11:00
gdkchan and GitHub
03aab63e03
Fix out of range exception when a invalid base lod is used ( #1931 )
2021-01-19 14:04:38 +11:00
gdkchan and GitHub
734747ae58
Reduce temporary copy/fill buffer size ( #1926 )
2021-01-19 13:31:15 +11:00
gdkchan and GitHub
c4f56c5704
Support for resources on non-contiguous GPU memory regions ( #1905 )
...
* Support for resources on non-contiguous GPU memory regions
* Implement MultiRange physical addresses, only used with a single range for now
* Actually use non-contiguous ranges
* GetPhysicalRegions fixes
* Documentation and remove Address property from TextureInfo
* Finish implementing GetWritableRegion
* Fix typo
2021-01-17 19:44:34 +01:00
gdkchan and GitHub
3bad321d2b
Fix mipmap base level being ignored for sampled textures and images ( #1911 )
...
* Fix mipmap base level being ignored for sampled textures and images
* Fix layer size and max level for textures
* Missing XML doc + reorder comments
2021-01-15 19:14:00 +01:00
gdkchan and GitHub
5be6ec6364
Fix shader LOP3 predicate write condition ( #1910 )
...
* Fix LOP3 predicate write condition
* Bump shader cache version
2021-01-14 01:07:50 +01:00
gdkchan and GitHub
36c6e67df2
Implement shader CC mode for ISCADD, X mode for ISETP and fix STL/STS/STG with RZ ( #1901 )
...
* Implement shader CC mode for ISCADD, X mode for ISETP and fix STS/STG with RZ
* Fix STG too and bump shader cache version
* Fix wrong name
* Fix Carry being inverted on comparison
2021-01-13 08:52:13 +11:00
gdkchan and GitHub
df820a72de
Implement clear buffer (fast path) ( #1902 )
...
* Implement clear buffer (fast path)
* Remove blank line
2021-01-13 08:50:54 +11:00
gdkchan and GitHub
6ed19c1488
Fix compute reserved constant buffer updates ( #1892 )
2021-01-10 21:02:58 +01:00
gdkchan and GitHub
8e0a421264
Fix remap when handle is 0 ( #1882 )
...
* Nvservices cleanup and attempt to fix remap
* Unmap if remap handle is 0
* Remove mapped pool add from Remap
2021-01-10 10:11:31 +11:00
gdkchan and GitHub
b9200dd734
Support conditional on BRK and SYNC shader instructions ( #1878 )
...
* Support conditional on BRK and SYNC shader instructions
* Add TODO comment and bump cache version
2021-01-08 22:55:55 -03:00
gdkchan and GitHub
532b8cad13
Update KAddressArbiter implementation to 11.x kernel ( #1851 )
...
* Update KAddressArbiter implementation to 11.x kernel
* InsertSortedByPriority is no longer needed
2021-01-01 14:59:26 -03:00
gdkchan and GitHub
f5d64b4d68
Terminate application before services ( #1812 )
...
* Terminate application before services
* Use flags instead of title ID
2020-12-17 01:44:06 +01:00
61634dd415
Clear JIT cache on exit ( #1518 )
...
* Initial cache memory allocator implementation
* Get rid of CallFlag
* Perform cache cleanup on exit
* Basic cache invalidation
* Thats not how conditionals works in C# it seems
* Set PTC version to PR number
* Address PR feedback
* Update InstEmitFlowHelper.cs
* Flag clear on address is no longer needed
* Do not include exit block in function size calculation
* Dispose jump table
* For future use
* InternalVersion = 1519 (force retest).
Co-authored-by: LDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com >
2020-12-16 17:07:42 -03:00
gdkchan and GitHub
47ba81c661
Fix pre-allocator shift instruction copy on a specific case ( #1752 )
...
* Fix pre-allocator shift instruction copy on a specific case
* Fix to make shift use int rather than long for constants
2020-12-14 17:56:07 -03:00
gdkchan and GitHub
c8bb3cc50e
Fix register read after write on STREX implementation ( #1801 )
...
* Fix register read after write on STREX implementation
* PTC version update
2020-12-13 12:19:38 -03:00
gdkchan and GitHub
19d18662ea
Correct type of executable sizes ( #1802 )
2020-12-13 08:30:27 +01:00
gdkchan and GitHub
ef157bbe26
Remove inexistent buffer from GetNintendoAccountUserResourceCacheForApplication ( #1809 )
2020-12-12 22:10:12 +11:00
gdkchan and GitHub
74aa7b20be
Rewrite size for fixed size buffers ( #1808 )
2020-12-12 14:06:20 +11:00
gdkchan and GitHub
48278905d1
Rewrite scheduler context switch code ( #1786 )
...
* Rewrite scheduler context switch code
* Fix race in UnmapIpcRestorePermission
* Fix thread exit issue that could leave the scheduler in a invalid state
* Change context switch method to not wait on guest thread, remove spin wait, use SignalAndWait to pass control
* Remove multi-core setting (it is always on now)
* Re-enable assert
* Remove multicore from default config and schema
* Fix race in KTimeManager
2020-12-09 19:20:05 -03:00
gdkchan and GitHub
1b053d2222
Close audio WorkBuffer transfer memory handle ( #1770 )
2020-12-02 21:58:20 +01:00
gdkchan and GitHub
f7617cae12
Create a single guest process per IPC message processor ( #1769 )
2020-12-02 13:14:44 +01:00
cf6cd71488
IPC refactor part 2: Use ReplyAndReceive on HLE services and remove special handling from kernel ( #1458 )
...
* IPC refactor part 2: Use ReplyAndReceive on HLE services and remove special handling from kernel
* Fix for applet transfer memory + some nits
* Keep handles if possible to avoid server handle table exhaustion
* Fix IPC ZeroFill bug
* am: Correctly implement CreateManagedDisplayLayer and implement CreateManagedDisplaySeparableLayer
CreateManagedDisplaySeparableLayer is requires since 10.x+ when appletResourceUserId != 0
* Make it exit properly
* Make ServiceNotImplementedException show the full message again
* Allow yielding execution to avoid starving other threads
* Only wait if active
* Merge IVirtualMemoryManager and IAddressSpaceManager
* Fix Ro loading data from the wrong process
Co-authored-by: Thog <me@thog.eu >
2020-12-02 00:23:43 +01:00
gdkchan and GitHub
7f536b5a15
Do not perform layout conversion on buffer texture flushes ( #1729 )
2020-11-18 22:17:40 +01:00
gdkchan and GitHub
eafee34fee
Improvements with new .NET 5 functions or bugfixes ( #1714 )
...
* Improvements with new .NET 5 functions or bugfixes
* This no longer needs to be unsafe
2020-11-18 19:28:40 +01:00
gdkchan and GitHub
9435d62206
Simplify depth test state updates ( #1695 )
2020-11-17 23:20:17 +01:00
gdkchan and GitHub
5189a807c4
Fix buffer to texture copy with remap enabled ( #1721 )
2020-11-17 19:06:02 -03:00
gdkchan and GitHub
787e20937f
Propagate zeta format properly ( #1716 )
2020-11-16 09:37:16 +01:00
gdkchan and GitHub
3c60d4b0ea
Do not report unmapped pages as dirty ( #1672 )
...
* Do not report unmapped pages as dirty
* Make tests pass again
* PR feedback
2020-11-10 22:07:52 -03:00
gdkchan and GitHub
c3d62bd078
Implement ATOM shader instruction ( #1687 )
...
* Implement ATOM shader instruction
* Fix reduction type decoding
2020-11-10 01:06:46 +01:00
gdkchan and GitHub
934a78005e
Simplify logic for bindless texture handling ( #1667 )
...
* Simplify logic for bindless texture handling
* Nits
2020-11-09 19:35:04 -03:00
gdkchan and GitHub
8d168574eb
Use explicit buffer and texture bindings on shaders ( #1666 )
...
* Use explicit buffer and texture bindings on shaders
* More XML docs and other nits
2020-11-08 12:10:00 +01:00
gdkchan and GitHub
ce9105a130
Support single precision contants for double precision operations ( #1673 )
2020-11-06 18:54:13 +01:00
gdkchan and GitHub
24dbfc0fe6
Correct BPP of buffer to texture copies ( #1670 )
2020-11-06 18:37:05 +01:00
gdkchan and GitHub
a89b81a812
Separate zeta from color formats ( #1647 )
2020-11-05 23:50:34 +01:00
gdkchan and GitHub
11a7c99764
Support 3D BC4 and BC5 compressed textures ( #1655 )
...
* Support 3D BC4 and BC5 compressed textures
* PR feedback
* Fix some typos
2020-11-01 15:32:53 -03:00
gdkchan and GitHub
6222f173f0
Fix compressed to non-compressed texture copy size ( #1649 )
2020-11-01 15:26:24 -03:00
gdkchan and GitHub
876fa656f6
Remove unused texture and sampler pool invalidation code ( #1648 )
2020-11-01 15:17:29 -03:00
gdkchan and GitHub
423da5cc91
Scale texture resolution before sending to backend ( #1646 )
...
* Work
* Propagate scale factor to copy temp. Not really needed, just here for consistency
* PR feedback
2020-10-29 22:57:34 +01:00
gdkchan and GitHub
0031edae27
Avoid sampler conflicts on bindless samplers with the same name ( #1642 )
2020-10-28 21:20:43 +01:00
gdkchan and GitHub
c9841dab38
Fix vertex buffer handle null check ( #1638 )
2020-10-26 01:40:50 +01:00
gdkchan and GitHub
812e32f775
Fix transform feedback errors caused by host pause/resume and multiple uses ( #1634 )
...
* Fix transform feedback errors caused by host pause/resume
* Fix TFB being used as something else issue with copies
* This is supposed to be StreamCopy
2020-10-25 17:23:42 -03:00
gdkchan and GitHub
cf0f0fc4e7
Improve the speed of redundant ASTC texture data updates ( #1636 )
2020-10-25 17:09:45 -03:00
gdkchan and GitHub
49f970d5bd
Implement CAL and RET shader instructions ( #1618 )
...
* Add support for CAL and RET shader instructions
* Remove unused stuff
* Fix a bug that could cause the wrong values to be passed to a function
* Avoid repopulating function id dictionary every time
* PR feedback
* Fix vertex shader A/B merge
2020-10-25 17:00:44 -03:00
gdkchan and GitHub
973a615d40
Fix shader image load/store array index register ( #1637 )
...
* Fix shader image load/store array index register
* Y should come before the array index
2020-10-25 14:51:26 -03:00
gdkchan and GitHub
2f16491712
Get rid of Reflection.Emit dependency on CPU and Shader projects ( #1626 )
...
* Get rid of Reflection.Emit dependency on CPU and Shader projects
* Remove useless private sets
* Missed those due to the alignment
2020-10-21 09:13:44 -03:00
gdkchan and GitHub
efa77a2415
Add missing null check on image binding ( #1632 )
2020-10-21 14:06:13 +02:00
gdkchan and GitHub
2dcc6333f8
Fix image binding format ( #1625 )
...
* Fix image binding format
* XML doc
2020-10-20 19:03:20 -03:00
gdkchan and GitHub
5264d55b39
Fix gl_in being used with built-in variables that are not per-vertex ( #1624 )
2020-10-17 10:16:40 +02:00
gdkchan and GitHub
f02791b20c
Fix LOP3 (cbuf) shader instruction encoding ( #1616 )
2020-10-13 19:33:04 -03:00
gdkchan and GitHub
329ba5b39b
Fix incorrect GPU GL blend func values ( #1612 )
2020-10-13 14:45:41 +11:00
gdkchan and GitHub
d36c4bfba5
Fix output component register on pixel shaders ( #1613 )
...
* Fix output component register on pixel shaders
* Clean up usings
* Do not advance if no component is enabled for the target, this keeps the previous behavior
2020-10-13 14:44:55 +11:00
gdkchan and GitHub
6a51b628f9
Fix error when dual source blend is used ( #1610 )
...
* Fix error when dual source blend is used
* Ensure framebuffer
2020-10-12 21:50:41 -03:00
gdkchan and GitHub
e4777717cd
Implement LEA.HI shader instruction ( #1609 )
2020-10-12 21:46:04 -03:00
gdkchan and GitHub
b066cfc1a3
Add support for shader constant buffer slot indexing ( #1608 )
...
* Add support for shader constant buffer slot indexing
* Fix typo
2020-10-12 21:40:50 -03:00
gdkchan and GitHub
14fd9aa640
Fix H264 output frame size when decoding videos of different sizes ( #1606 )
2020-10-11 11:09:38 +02:00
gdkchan and GitHub
0954e76a26
Improve BRX target detection heuristics ( #1591 )
2020-10-03 15:43:33 +10:00
gdkchan and GitHub
86412ed30a
Supper 2D array ASTC compressed texture formats decoding ( #1593 )
2020-10-02 11:22:23 +10:00