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
|
9c79831237
|
ARM64 emitter: Fix FP immediates
|
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
|
9a5a093105
|
ARM64 emitter/disasm: More scalar FPU instructions
|
2015-04-06 18:13:27 +02:00 |
|
Henrik Rydgard
|
ff758f58ad
|
ARM64: The Return of the Pointer Truncator - The Movie
|
2015-04-06 18:13:26 +02:00 |
|
Henrik Rydgard
|
db0fd1042f
|
Add "Arm64EmitterTest" which can run on startup to play around with instructions.
|
2015-04-06 18:13:26 +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
|
5a5f3c94fd
|
ARM64: Guess what? more emitter & disasm
|
2015-04-06 18:13:24 +02:00 |
|
Henrik Rydgard
|
1e9fdf08c5
|
Temporarily disable vertexjit
|
2015-04-06 18:13:23 +02:00 |
|
Henrik Rydgard
|
0f430e6cd1
|
ARM64: More asimd scalar disasm, encoding fix
|
2015-04-06 18:13:23 +02:00 |
|
Henrik Rydgard
|
9f689b871a
|
ARM64: Work on emitting and disassembling fp conversion ops
|
2015-04-06 18:13:22 +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
|
2566972a4d
|
ARM64: Further disasm work
|
2015-04-06 18:13:21 +02:00 |
|
Henrik Rydgard
|
5496b3d3b1
|
ARM64: Some minor vertex decoder work. Hm, I think SCVTF will actually divide by 128.0, not 127.0 :/
|
2015-04-06 18:13:20 +02:00 |
|
Henrik Rydgard
|
1a02e32ad1
|
ARM64: Implement the multiplication instructions
|
2015-04-06 18:13:20 +02:00 |
|
Henrik Rydgard
|
120e0bba3c
|
ARM64: Disassemble csel and multiply instructions
|
2015-04-06 18:13:19 +02:00 |
|
Henrik Rydgard
|
a8be978154
|
ARM64 emitter: Add fixed point versions of SCVTF and UCVTF
|
2015-04-06 18:13:19 +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
|
d5faf8b97a
|
ARM64: Fix conditional branch instruction (!)
|
2015-04-06 18:13:18 +02:00 |
|
Henrik Rydgard
|
acd9502b44
|
ARM64: stp/ldp disasm improvements
|
2015-04-06 18:13:17 +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
|
da2f4147da
|
Update CMakeLists for ARM64 (untested)
|
2015-04-06 18:13:15 +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 |
|
Henrik Rydgard
|
70f44c3894
|
ARM64 emitter: Default to non-extend instruction forms (LSL 0), fix bugs. also fixes to disasm.
|
2015-04-06 18:13:12 +02:00 |
|
Henrik Rydgard
|
d3669daba4
|
ARM64: Fixes to emitter and disassembly for logical immediates
|
2015-04-06 18:13:12 +02:00 |
|
Henrik Rydgard
|
0922db6062
|
ARM64: Some FP work.
|
2015-04-06 18:13:11 +02:00 |
|
Henrik Rydgard
|
d2c746dd64
|
ARM64: Get the FP reg cache working, implement some basic FP arith
|
2015-04-06 18:13:11 +02:00 |
|
Henrik Rydgard
|
2ff608b72e
|
ARM64: Add FDIV to emitter
|
2015-04-06 18:13:10 +02:00 |
|
Henrik Rydgard
|
d16bd1fd30
|
ARM64: Port over basic load/store from ARM. Works in FastMem only.
|
2015-04-06 18:13:10 +02:00 |
|
Henrik Rydgard
|
8dc77ff32e
|
ARM64: Turn off some debugging stuff, start implementing instructions. Something is wrong though, if I implement more than addiu things break..
|
2015-04-06 18:13:09 +02:00 |
|
Henrik Rydgard
|
742f48ad56
|
ARM64: More emitter and disasm work
|
2015-04-06 18:13:08 +02:00 |
|
Henrik Rydgard
|
c4cdca83fc
|
ARM64: Fix some branch distance checks, add more stuff to disasm
|
2015-04-06 18:13:08 +02:00 |
|
Henrik Rydgard
|
cc722f09f6
|
Improve ARM64 disassembly by merging MOVZ+MOVK. Minor stuff.
|
2015-04-06 18:13:07 +02:00 |
|
Henrik Rydgard
|
73dd26fb75
|
More ARM64 disasm, warning fixes
|
2015-04-06 18:13:07 +02:00 |
|
Henrik Rydgard
|
80a813bcbd
|
ARM64 Emitter: Optimize MOVI2R by always starting with a MOVZ, killing the register dependency in the out-of-order engine of the CPU.
|
2015-04-06 18:13:06 +02:00 |
|
Henrik Rydgard
|
58b059ca14
|
Some casting cleanup, misc
|
2015-04-06 18:13:06 +02:00 |
|
Henrik Rydgard
|
34ab532971
|
ARM64 jit: Fix some pointer truncations and other fun stuff..
|
2015-04-06 18:13:05 +02:00 |
|
Henrik Rydgard
|
feec574ece
|
Arm64Emitter: Add some helper functions to add / sub by immediate
|
2015-04-06 18:13:05 +02:00 |
|
Henrik Rydgard
|
e7e58591da
|
More JIT work, not quite there yet...
|
2015-04-06 18:13:04 +02:00 |
|
Henrik Rydgard
|
f732fbb885
|
ARM64 emitter: Add MRS/MSR support (only for the flags register). Add some more to ARM64 Disasm
|
2015-04-06 18:13:04 +02:00 |
|
Henrik Rydgard
|
524583d53e
|
ARM64 emitter work, dispatcher work, etc. More work needed.
|
2015-04-06 18:13:03 +02:00 |
|