Commit Graph
14343 Commits
Author SHA1 Message Date
Henrik Rydgård 95cd1478de Restore the x86 build. 2015-04-06 18:13:37 +02:00
Henrik Rydgård fbaffdceab Remove some outdated comments, minor stuff 2015-04-06 18:13:36 +02:00
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 7d918c0ad8 ARM64: Just some disasm improvements 2015-04-06 18:13:35 +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 4618275f99 ARM64: Add a few aliases to emitter. Disasm fixes. 2015-04-06 18:13:33 +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 0849e270ee ARM64: fmla encoding, more disasm 2015-04-06 18:13:31 +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 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 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 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 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 a12e448fb4 ARM64: Stub vertex decoder jit, implementing just enough for the cube.elf cube. 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 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 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 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