Commit Graph

311 Commits

Author SHA1 Message Date
Henrik Rydgard
0a70618f87 ARM64: Accurate floating point rounding. For some reason, FTZ doesn't seem to work though. 2015-04-06 18:13:36 +02:00
Henrik Rydgard
ad3d539451 ARM64: Attempt at lwl/lwr/swl/swr. The first two don't work 2015-04-06 18:13:35 +02:00
Henrik Rydgard
44286a2b37 ARM64: Accurate float->int conversion with rounding mode. 2015-04-06 18:13:34 +02:00
Henrik Rydgard
acf08eefa8 ARM64: Fix FCVTL, use it in v2hf 2015-04-06 18:13:33 +02:00
Henrik Rydgard
8eedcc7fb0 ARM64: Speedup fpu/vfpu load/stores too using "pointerification". Actually noticeable gain. 2015-04-06 18:13:32 +02:00
Henrik Rydgard
ad648baa9c ARM64 regcache: Add support to "pointerify" registers. Use in load/store to cut down instructions. 2015-04-06 18:13:32 +02:00
Henrik Rydgard
2780eef595 ARM64: Another couple of VFPU ops 2015-04-06 18:13:31 +02:00
Henrik Rydgard
ca58f322e5 ARM64: Port over some missing VFPU instructions from ARM. Not much left now. 2015-04-06 18:13:30 +02:00
Henrik Rydgard
f06e9a9d18 ARM64: Even more VFPU instructions 2015-04-06 18:13:30 +02:00
Henrik Rydgard
1b1ab73b0f ARM64: Enable some more VFPU instructions, some code cleanup 2015-04-06 18:13:29 +02:00
Henrik Rydgard
500ca94ab8 ARM64: Port over tons of VFPU code from ARM, leave most of it disabled. 2015-04-06 18:13:28 +02:00
Henrik Rydgard
8df8c210d1 ARM64: Start porting over VFPU stuff from ARM, fix regalloc bug 2015-04-06 18:13:28 +02:00
Henrik Rydgard
6cb107d6fc ARM64: Fix LDP disassembly 2015-04-06 18:13:25 +02:00
Henrik Rydgard
34e61ab875 ARM64: More FPU instructions (int<->float convert), minor stuff 2015-04-06 18:13:25 +02:00
Henrik Rydgard
25ec85551f ARM64: Implement FP compares, misc 2015-04-06 18:13:22 +02:00
Henrik Rydgard
ceb9f66502 ARM64: Fix bug in mult 2015-04-06 18:13:21 +02:00
Henrik Rydgard
1a02e32ad1 ARM64: Implement the multiplication instructions 2015-04-06 18:13:20 +02:00
Henrik Rydgard
a12e448fb4 ARM64: Stub vertex decoder jit, implementing just enough for the cube.elf cube. 2015-04-06 18:13:18 +02:00
Henrik Rydgard
57e759a605 ARM64: Fix and turn on basic block linking 2015-04-06 18:13:17 +02:00
Henrik Rydgard
5dff3f8c89 ARM64: Implement scalar FMOV. This makes the FPU2op ops work. 2015-04-06 18:13:16 +02:00
Henrik Rydgard
4233921ab7 ARM64: Some more instructions, func replacements 2015-04-06 18:13:16 +02:00
Henrik Rydgard
9e2786b319 ARM64: Fix and enable a bunch more instructions. temporarily disable movz movn 2015-04-06 18:13:15 +02:00
Henrik Rydgard
2bca05c4f2 ARM64: implement shifts, movz/movn. Corresponding fixes to emitter/disasm 2015-04-06 18:13:14 +02:00
Henrik Rydgard
86ff2a2806 ARM64: Enable a bunch of arithmetic instructions that now work, thanks to emitter fixes 2015-04-06 18:13:13 +02:00
Henrik Rydgard
77501e220d ARM64: Enable a few more instructions, more emitter/disasm unittests 2015-04-06 18:13:13 +02:00