930 Commits

Author SHA1 Message Date
MerryMage
229ff47738 Merge branch 'feature/exclusive-mem' 2018-02-13 12:53:29 +00:00
MerryMage
43f27b3e15 A64: Implement STXP, STLXP, LDXP, LDAXP 2018-02-13 12:50:50 +00:00
MerryMage
11eb8c2bea A64: Implement CLREX 2018-02-13 12:31:16 +00:00
MerryMage
22285842af A64: Implement STXRB, STXRH, STXR, STLXRB, STLXRH, STLXR, LDXRB, LDXRH, LDXR, LDAXRB, LDAXRH, LDAXR 2018-02-13 12:30:58 +00:00
MerryMage
d7323d6799 fuzz_with_unicorn: Speed up tests by not initializing/tearing down constantly 2018-02-12 21:48:29 +00:00
MerryMage
eac0933738 Merge branch 'feature/direct-page-table-access' 2018-02-12 21:47:43 +00:00
MerryMage
49f1de3188 Direct Page Table Access: Handle address spaces less than the full 64-bit in size 2018-02-12 21:26:23 +00:00
MerryMage
406725e533 Implement direct page table access 2018-02-12 20:51:03 +00:00
MerryMage
adc2d5a3cc fuzz_with_unicorn: Fix read-past-end access via jit_iter 2018-02-12 20:51:03 +00:00
MerryMage
885e092f99 callbacks: Member functions should be const 2018-02-12 20:51:03 +00:00
MerryMage
9598bd45ef a64_emit_x64: Implement {Read,Write}Memory128 in terms of a function call 2018-02-12 18:26:08 +00:00
MerryMage
276326e0e8 abi: Add RAX to ABI_ALL_CALLER_SAVE 2018-02-12 18:17:39 +00:00
MerryMage
7a161ed35c A64: Partially implement MRS 2018-02-12 00:06:44 +00:00
MerryMage
b733479b5e A64: Implement DSB, DMB 2018-02-11 23:27:28 +00:00
MerryMage
1ba2642742 Implement DC instructions 2018-02-11 23:12:28 +00:00
Lioncash
e12fa19142 A64: Implement NOT (vector) 2018-02-11 20:14:03 +00:00
MerryMage
1b836b6deb IR: Implement FPMax, FPMin 2018-02-11 16:43:47 +00:00
MerryMage
94115d1775 A64: Implement FADD (vector), vector variant 2018-02-11 16:30:03 +00:00
MerryMage
24def19cd7 IR: Implement FPVectorAdd 2018-02-11 16:29:48 +00:00
MerryMage
9379d54a44 A64: Implement SSHLL, SSHLL2 2018-02-11 16:24:55 +00:00
MerryMage
a7e4202828 IR: Implement VectorSignExtend 2018-02-11 16:24:33 +00:00
MerryMage
01760f1a21 CMakeLists: Ignore warnings within xbyak 2018-02-11 14:57:35 +00:00
MerryMage
ae7d118f22 A64: Implement DUP (element), vector variant 2018-02-11 14:34:13 +00:00
MerryMage
b87814ce88 load_store_multiple_structures: Improve IR codegen for selem == 1 case 2018-02-11 12:48:49 +00:00
MerryMage
6113346a5b A64: Implement FSUB (vector) 2018-02-11 12:18:05 +00:00
MerryMage
8c6fce20d2 IR: Implement FPVectorSub 2018-02-11 12:17:53 +00:00
MerryMage
3fffeadf0d emit_x64_vector: EmitOneArgumentFallback 2018-02-11 11:59:43 +00:00
MerryMage
4df6c424df Forward declare IR::Opcode and IR::Type where possible 2018-02-11 11:52:44 +00:00
MerryMage
09632954d7 A64: Implement CNT 2018-02-11 11:52:44 +00:00
MerryMage
c2c9ea85a5 IR: Implement VectorPopulationCount 2018-02-11 11:52:44 +00:00
MerryMage
0996d4fd2e A64: Implement MLS (vector) 2018-02-11 11:04:46 +00:00
MerryMage
5319f6af95 A64: Implement MLA (vector) 2018-02-11 11:00:16 +00:00
MerryMage
17519df3e8 emit_x64_vector: Add SSE4.1 implementation for EmitVectorMultiply64 2018-02-11 10:47:22 +00:00
MerryMage
eac6a56a4b emit_x64_vector: More explicit lambda decay 2018-02-11 10:47:00 +00:00
MerryMage
727b1b0b51 A64: Implement MUL (vector) 2018-02-11 10:18:47 +00:00
MerryMage
80fce9c4b9 IR: Implement VectorMultiply 2018-02-11 10:18:29 +00:00
MerryMage
cb65a26da2 emit_x64_vector: Order alphabetically 2018-02-11 09:41:37 +00:00
MerryMage
2b968981a1 A64: Implement STR (register, SIMD&FP), LDR (register, SIMD&FP) 2018-02-11 01:06:26 +00:00
MerryMage
7681159811 decoder/a64: Don't rearrange unrelated decoders 2018-02-11 00:43:33 +00:00
MerryMage
56fe848e4e A64: Implement SUB (vector) 2018-02-10 23:58:33 +00:00
MerryMage
b429efa081 A64: Implement SIMD instruction SSRA, vector variant 2018-02-10 23:30:00 +00:00
MerryMage
0a96a437cb A64: Implement SIMD instruction SSHR, vector variant 2018-02-10 23:28:05 +00:00
MerryMage
a5299d0be5 IR: Implement VectorArithmeticShiftRight 2018-02-10 23:27:46 +00:00
MerryMage
8e8068cfaf impl: Improve Vpart setter 2018-02-10 17:05:52 +00:00
MerryMage
5ffa84f41d A64: Implement SIMD instructions XTN, XTN2 2018-02-10 17:01:33 +00:00
MerryMage
dc9785bdcd IR: Implement VectorNarrow 2018-02-10 17:01:33 +00:00
MerryMage
ebc594385c constant_pool: Allow for 128-bit constants 2018-02-10 16:36:00 +00:00
MerryMage
8e23683b63 emit_x64_vector: Add SSE4.1 implementations for VectorZeroExtend 2018-02-10 16:24:43 +00:00
MerryMage
d9f803924e IR: Implement VectorSub 2018-02-10 11:25:50 +00:00
MerryMage
c01bbbd09d A64: Implement SIMD instruction USRA, vector variant 2018-02-10 11:12:54 +00:00