Tyler Stachecki
0a9b8c2367
Make read_acc_* return a value.
...
Instead of writing through a pointer, just return the value.
Thank you, Jared, for pointing out my stupidity.
2014-11-13 19:54:33 -05:00
Tyler Stachecki
33d2e15278
Reduce size of rsp_vload_dmem dynarec code.
...
We're going to want to instantiate all possible branch targets
ahead of time to avoid SMC penalties, so we want each target to
fit into the smallest block of code possible.
2014-11-10 22:51:33 -05:00
Tyler Stachecki
fc22ab18ba
Fix some corner-case bugs in the last commit.
2014-11-10 19:04:23 -05:00
Tyler Stachecki
b4b95d1f21
Fix SS2 RSP vector loads/stores implementation.
2014-11-10 18:32:12 -05:00
Tyler Stachecki
316214d82d
(Finally) permit SSE2-only builds.
...
Add SSE2 codepaths where necessary (even if not complete), while
still allowing the project to be compiled with SSSE3+ intrinsics.
2014-11-10 14:29:13 -05:00
Tyler Stachecki
f66894935b
Mark more initialization functions as cold.
2014-11-09 19:11:09 -05:00
Tyler Stachecki
a0f1eb5d7c
Move intrinsics to a common location.
2014-11-09 18:51:54 -05:00
Tyler Stachecki
1513f3cac2
arch/x86_64: Prefer _mm_set_s* over _mm_load_s*.
2014-11-09 18:27:14 -05:00
Tyler Stachecki
4cfb7275a9
Fix and optimize rsp_uclamp_acc (once again).
2014-11-08 19:07:08 -05:00
Tyler Stachecki
9f8a9f9d62
Add implementations of VMADH and VMUDH.
2014-11-08 14:01:41 -05:00
Tyler Stachecki
007d72eda1
Add implementations of VMADL and VMADM.
2014-11-08 12:21:06 -05:00
Tyler Stachecki
16a7c434da
Fix/optimize the RSP accumulator clamp LO algorithm.
2014-11-05 16:58:59 -05:00
Tyler Stachecki
6a0604eaca
Fix the RSP accumulator clamping algorithm.
2014-11-05 15:09:16 -05:00
Tyler Stachecki
b668296589
Add implementations of VADD and VSUB.
2014-11-03 18:06:32 -05:00
Tyler Stachecki
083ad75286
arch/x86_64: Cache RSP accumulator regs in host CPU.
2014-11-03 16:48:38 -05:00
Tyler Stachecki
da0436cbe1
Fix SSE preprocessor macro mistake.
2014-11-02 22:50:06 -05:00
Tyler Stachecki
716410d7b0
Remove an extra newline.
2014-11-02 22:48:31 -05:00
Tyler Stachecki
b5ff809881
Add an implementation of VMADN.
2014-11-02 22:31:58 -05:00
Tyler Stachecki
bf197cf3bd
Implement VMUDL, VMUDM, VMUDN.
2014-11-02 12:44:19 -05:00
Tyler Stachecki
6a6f4174ca
Fix edge cases for some LWC2 operations.
2014-10-25 16:46:18 -04:00
Tyler Stachecki
b9b989131f
More peephole optimizations.
2014-10-25 13:25:07 -04:00
Tyler Stachecki
e698bfe1d1
Improving accuracy of RSP LWC2/SWC2 operations.
2014-10-25 02:06:30 -04:00
Tyler Stachecki
c027d75198
Fix a typo leading to an unnecessarily large array.
2014-10-24 23:44:36 -04:00
Tyler Stachecki
ba2ca6f427
Fix more byte-ordering issues. This was hard.
2014-10-24 23:43:24 -04:00
Tyler Stachecki
1292220694
Fix a byte-ordering issue in the x86_64 RSP backend.
2014-10-24 21:27:18 -04:00
Tyler Stachecki
e63b13605e
Various LWC2/SWC2 fixes, add VSAR.
2014-10-24 21:07:25 -04:00
Tyler Stachecki
97587e3811
Add guards around SSSE3 version of rsp_vstore_dmem.
2014-10-24 18:34:36 -04:00
Tyler Stachecki
f395be631e
Start adding in support for LWC2/SWC2 ops: LQV/SQV.
2014-10-24 18:31:13 -04:00
Tyler Stachecki
e9e82b9b22
Fix a compilation error in the last commit.
2014-10-22 18:17:30 -04:00
Tyler Stachecki
519f59f429
Start implementing some vector operators.
2014-10-22 18:15:44 -04:00
Tyler Stachecki
620c1cbec5
Add SSE2 support to arch/x86_64/rsp.
2014-10-21 18:39:26 -04:00
Tyler Stachecki
6c4d9569d3
arch/x86_64: Fix a precedence issue in tlb_read.
2014-09-04 13:30:42 -04:00
Tyler Stachecki
d72a7d38ef
Last batch of TLB translation fixes.
2014-08-23 23:52:52 -04:00
Tyler Stachecki
404bbb9253
Use the correct page mask value.
2014-08-23 22:36:46 -04:00
Tyler Stachecki
6ef9115668
Fix a bunch of TLB translation bugs.
2014-08-23 22:10:46 -04:00
Tyler Stachecki
e6bc8ebe64
Add more TLB support, verify things.
2014-08-23 20:06:45 -04:00
Tyler Stachecki
5f5d4da9a6
Commit preliminary (untested) TLB support.
2014-08-23 14:24:21 -04:00
Tyler Stachecki
38ba3f7893
Fix x86_64 build errors in last commits.
2014-08-21 12:24:08 -04:00
Tyler Stachecki
65d4da87c6
Add SSE2/SSSE3 implementations of RSP bitwise functions.
2014-08-19 16:08:42 +00:00
Tyler Stachecki
1d3e7bac33
Add NEON implementations of RSP bitwise functions.
2014-08-19 15:18:28 +00:00
Tyler Stachecki
0158b65c0c
Start implementing NEON backend for RSP.
2014-08-19 11:39:42 +00:00
Tyler Stachecki
ced4183158
More restructuring of arch/ and os/ code.
2014-08-18 16:54:01 +00:00
Tyler Stachecki
3e8ba50851
Add common arch/ folder, move headers out of os/.
...
Much of the architecture-specific code uses compiler-agnostic
intrinsics. For this reason, split it out into an arch/ folder,
leaving only the compiler and environment-specific code in os/.
2014-08-18 16:08:45 +00:00