Unknown W. Brackets
7f8cf7f800
arm64: Use XXH64 for vertex hashing, etc.
...
Based on benchmarks, it performs better than XXH32 on an A57.
2015-07-22 21:38:01 -07:00
Unknown W. Brackets
a98706f813
arm64: Correct some offset snapping.
2015-07-05 08:59:36 -07:00
Unknown W. Brackets
46c1030530
arm64: small optimization for weights.
2015-07-05 08:35:51 -07:00
Unknown W. Brackets
809f398760
arm64: Set vertexFullAlpha.
2015-07-05 00:17:06 -07:00
Unknown W. Brackets
37bc3cd347
arm64: Optimize some texcoord and normal decode.
2015-07-04 23:40:11 -07:00
Unknown W. Brackets
f8bb7f3c52
arm64: Optimize pos and nrm conversions.
2015-07-04 18:22:16 -07:00
Unknown W. Brackets
75c8ccd2c1
arm64: Update emitter from Dolphin.
...
From dolphin-emu/dolphin@d09d59007a .
2015-07-04 00:00:28 -07:00
Henrik Rydgard
3587b36f86
Minor cleanups in BackgroundAudio and ARM64 vtx dec. Update native.
2015-06-22 00:09:02 +02:00
Unknown W. Brackets
0597b92998
For consistency, push fp regs here too.
2015-06-14 09:24:56 -07:00
Henrik Rydgard
e848247f88
ARM64: Also save FP registers around the JIT dispatcher loop
2015-06-14 13:03:46 +02:00
Henrik Rydgard
2c05334d47
ARM64: Fix bug where we didn't save the FP registers correctly in the vertex decoder.
...
Also port a few ops from dolphin's ARM64 emitter.
2015-06-14 12:56:44 +02:00
Henrik Rydgard
cc6db7a8df
Declare DoTexSwizzle16 outside #ifdef _M_SSE, fixing build on ARM
2015-06-14 11:25:18 +02:00
Unknown W. Brackets
401bd35691
Swizzle video texture data on write to mirrors.
2015-06-13 16:29:56 -07:00
Henrik Rydgard
5736f3aba6
Shouldn't check for NEON on ARM64
2015-06-11 12:44:45 +02:00
Henrik Rydgård
2a1f6bca97
Fix NEON 4444 CheckAlpha, workaround for failed bNEON detection on ARM64
2015-05-31 12:29:08 +02:00
Henrik Rydgård
7b50ec7b75
Merge branch 'CheckAlphaNEON' of git://github.com/KentuckyCompass/ppsspp into KentuckyCompass-CheckAlphaNEON
2015-05-31 12:00:10 +02:00
Jan Beich
5f278b2d94
Unbreak build with SSE 4.1 (clang -march=penryn)
...
Common/ColorConv.cpp:199:33: error: use of undeclared identifier '_mm_packus_epi32';
did you mean '_mm_packs_epi32'?
_mm_store_si128(&dstp[i / 2], _mm_packus_epi32(c1, c2));
^~~~~~~~~~~~~~~~
_mm_packs_epi32
/usr/bin/../lib/clang/3.6.0/include/emmintrin.h:1254:1: note: '_mm_packs_epi32'
declared here
_mm_packs_epi32(__m128i __a, __m128i __b)
^
Common/ColorConv.cpp:241:33: error: use of undeclared identifier '_mm_packus_epi32';
did you mean '_mm_packs_epi32'?
_mm_store_si128(&dstp[i / 2], _mm_packus_epi32(c1, c2));
^~~~~~~~~~~~~~~~
_mm_packs_epi32
/usr/bin/../lib/clang/3.6.0/include/emmintrin.h:1254:1: note: '_mm_packs_epi32'
declared here
_mm_packs_epi32(__m128i __a, __m128i __b)
^
2 errors generated.
GPU/Common/TextureScalerCommon.cpp:294:6: error: unknown type name '__m128'
__m128 result = _mm_set1_ps(0.0f);
^
GPU/Common/TextureScalerCommon.cpp:294:22: error: use of undeclared identifier
'_mm_set1_ps'
__m128 result = _mm_set1_ps(0.0f);
^
GPU/Common/TextureScalerCommon.cpp:305:9: error: unknown type name '__m128i'
__m128i samp...
^
GPU/Common/TextureScalerCommon.cpp:305:26: error: use of undeclared identifier
'_mm_cvtsi32_si128'
...__m128i sample = _mm_cvtsi32_si128(data[csy*w + csx]);
^
GPU/Common/TextureScalerCommon.cpp:307:9: error: unknown type name '__m128'
__m128 col ...
^
GPU/Common/TextureScalerCommon.cpp:308:31: error: use of undeclared identifier
'_mm_set1_ps'
...col = _mm_mul_ps(col, _mm_set1_ps(weight));
^
GPU/Common/TextureScalerCommon.cpp:314:6: error: unknown type name '__m128i'
__m128i pixel = _mm_cvtps_epi32(_mm_...
^
GPU/Common/TextureScalerCommon.cpp:314:57: error: use of undeclared identifier
'_mm_set1_ps'
...__m128i pixel = _mm_cvtps_epi32(_mm_mul_ps(result, _mm_set1_ps(bicubicInvSum...
^
8 errors generated.
2015-05-26 15:20:10 +03:00
KentuckyCompass
880697f40a
Add NEON versions of the CheckAlpha family
2015-05-25 18:04:52 -07:00
Unknown W. Brackets
ba77ad607e
Erp, dumb typo.
2015-05-25 15:47:14 -07:00
Henrik Rydgård
43744b0239
Merge pull request #7741 from hrydgard/frame-profiler
...
Frame profiler overlay
2015-05-26 00:42:01 +02:00
Henrik Rydgard
0b2a1dfe53
Profile a few more scopes
2015-05-26 00:39:27 +02:00
Unknown W. Brackets
5d244229ba
Silence a type conversion warning.
2015-05-25 10:07:05 -07:00
Unknown W. Brackets
f78acfb867
Cleanup a few things in SSE CheckAlpha.
2015-05-25 07:39:31 -07:00
Unknown W. Brackets
c75010931c
Use SSE in CheckAlpha scanning.
2015-05-24 22:55:43 -07:00
Henrik Rydgard
26624709f7
Hook up the frame profiler to a few measurements
2015-05-24 23:45:36 +02:00
Unknown W. Brackets
4880c29a90
Use TextureDecoderNEON funcs statically on arm64.
...
Not sure if they were being used before (HAVE_ARMV7...?)
2015-05-23 11:30:05 -07:00
Henrik Rydgård
83182a0469
Merge pull request #7739 from hrydgard/screen-rotation
...
Implement basic screen rotation as requested in #297
2015-05-18 16:31:19 +02:00
Unknown W. Brackets
c6b55459b1
vertexjit: Skip soft skinning setup when morphing.
...
This makes x86 match arm.
2015-05-16 21:47:13 -07:00
Henrik Rydgard
95b6b50fd5
Disable screen rotation in non-buffered rendering (as it won't worK)
2015-05-12 22:44:18 +02:00
Henrik Rydgard
3f7830743a
Implement basic screen rotation as requested in #297 . Does not work correctly in non-buffered rendering yet.
2015-05-12 21:01:15 +02:00
Henrik Rydgard
5d0d67140f
Reverse Y when checking for rotated rects in Direct3D 9. Fixes #7738 .
2015-05-12 20:01:04 +02:00
Unknown W. Brackets
b782165b6a
Avoid some division.
2015-05-10 14:39:38 -07:00
Unknown W. Brackets
a090b5853f
Process UV rotation even in full transform.
2015-05-10 14:17:20 -07:00
Unknown W. Brackets
c8fc9b0bf3
Cleanup some incorrect handling of clut offset.
2015-04-26 00:31:00 -07:00
Unknown W. Brackets
5b61c03b7f
Avoid accidental sign ext for > 24 bit clut shift.
2015-04-26 00:26:24 -07:00
Unknown W. Brackets
5ee062c681
Try to optimize bezier color sampling.
2015-04-18 12:47:21 -07:00
Unknown W. Brackets
327ca4c96e
Stub invalid vertex decoder colors to avoid crash.
...
These values are invalid, but before we'd call a null pointer if we hit
them. Should do tests to see what actual behavior is.
2015-04-17 23:24:21 -07:00
Henrik Rydgard
a9ff7c22fe
Reject too-small spline patches. Might help #7690 .
2015-04-17 08:33:05 +02:00
Henrik Rydgard
68893c763f
Spline: Fix an unrelated kind-of-bug
2015-04-16 18:32:37 +02:00
Henrik Rydgard
6587f4de8f
Spline: Fix #7684 by removing awful epsilons that "fixed" off-by-ones depending on vertex count because of fp rounding.
2015-04-16 18:32:13 +02:00
Henrik Rydgard
2e38762708
Spline: Add commented-out sanity check for debugging
2015-04-16 18:22:08 +02:00
Henrik Rydgard
b3305246a3
Spline: Not that it should matter, but move the patch_div clamping down after the subsampling
2015-04-16 18:18:49 +02:00
Henrik Rydgard
6bc9a525f8
Spline: remove n and m, confusing
2015-04-16 18:14:46 +02:00
Unknown W. Brackets
be7d1d1169
Add a bit of a hack for smaller framebuf memcpys.
...
Hopefully this doesn't false-positive in any other games. Helps Valkyrie
Profile's battle entry effect.
2015-04-12 11:05:28 -07:00
Unknown W. Brackets
fa85229d3d
Use a temporary for more code clarity.
...
Static analysis thinks there are typos here. Temporary is clearer and
possibly faster depending on compiler intelligence.
2015-04-10 11:48:45 -07:00
Henrik Rydgard
a19ea78b4b
Consolidate the texture scaler code.
2015-04-08 22:52:49 +02:00
Henrik Rydgard
c2cf2bd97e
Move some more color conversion functions to ColorConv
2015-04-08 22:52:47 +02:00
Henrik Rydgard
31961eace9
Color conv attempt 2. Start consolidating simple color conversion functions in a single header+cpp.
2015-04-08 22:52:46 +02:00
Henrik Rydgård
a67f009679
Merge pull request #7668 from hrydgard/consolidate-spline
...
Consolidate spline code
2015-04-08 22:20:55 +02:00
Henrik Rydgard
058499e5bf
De-dupe the spline code
2015-04-08 21:44:54 +02:00