2282 Commits

Author SHA1 Message Date
SachinVin
5958810e56 a64 emitter: Absolute Difference and add across vector instructions 2020-11-22 17:30:23 -05:00
SachinVin
ab27fbc0c6 backend\A64\emit_a64_packed.cpp: Implement Packed Select 2020-11-22 17:30:23 -05:00
SachinVin
01682cd735 Backend/a64: Fix asset when falling back to interpreter 2020-11-22 17:30:23 -05:00
SachinVin
2c2666b0eb backend\A64\emit_a64_packed.cpp: Implement Packed Halving Add/Sub instructions 2020-11-22 17:30:23 -05:00
SachinVin
758481f5db backend\A64\emit_a64_packed.cpp: Implement Packed Saturating instructions 2020-11-22 17:30:23 -05:00
SachinVin
c8a910a009 backend\A64\emit_a64_packed.cpp: Implement SignedPacked*- ADD and SUB 2020-11-22 17:30:23 -05:00
SachinVin
2a378692fa a64 emitter: Vector Halving and Saturation instructions 2020-11-22 17:30:23 -05:00
SachinVin
a698e35422 backend\A64\emit_a64_packed.cpp: Implement UnsignedPacked*- ADD and SUB...
with few other in the emitter
2020-11-22 17:30:23 -05:00
SachinVin
7b6cc4ec70 a64 emitter: fix Scalar Saturating Instructions 2020-11-22 17:30:23 -05:00
SachinVin
1a03e361c3 A64 Emitter: Implement Saturating Add and Sub 2020-11-22 17:30:23 -05:00
SachinVin
2f9f317c9e backend\A64\emit_a64_data_processing.cpp: Implement Division 2020-11-22 17:30:23 -05:00
SachinVin
374c703335 backend\A64\emit_a64_data_processing.cpp: Implement 64bit CLZ 2020-11-22 17:30:23 -05:00
SachinVin
78619e5620 backend\A64\emit_a64_data_processing.cpp: Implement 64bit LSL and ROR Instructions
Also EmitTestBit
2020-11-22 17:30:23 -05:00
SachinVin
0398fc9b41 backend\A64\emit_a64_data_processing.cpp: Implement 64bit Logical Instructions 2020-11-22 17:30:23 -05:00
SachinVin
08ada2919d backend/a64: implememnt CheckBit 2020-11-22 17:30:23 -05:00
SachinVin
263a7c823a backend/a64: Redesign Const Pool 2020-11-22 17:30:23 -05:00
SachinVin
cb7228828e backend\A64\emit_a64_floating_point.cpp: Fix include paths 2020-11-22 17:30:23 -05:00
SachinVin
fe63ef0486 backend\A64\a32_emit_a64.cpp: Fix Coproc* after rebase 2020-11-22 17:30:23 -05:00
SachinVin
5bf010cc62 backend/a64/opcodes.inc: Coproc instructions 2020-11-22 17:30:23 -05:00
SachinVin
99728efc1b a64 emitter: Fix LDR literal 2020-11-22 17:30:23 -05:00
SachinVin
c45d11e0af a64 emitter: Move IsInRange* and MaskImm* into anon namespace 2020-11-22 17:30:23 -05:00
SachinVin
157435bd07 backend\A64\emit_a64_floating_point.cpp: Implement VADD VSUB VMUL and other stuff 2020-11-22 17:30:23 -05:00
SachinVin
7bae3c14ba backend\A64\emit_a64_floating_point.cpp: Implement VABS VNEG VCMP and a few others 2020-11-22 17:30:23 -05:00
SachinVin
b491d1aae6 frontend/A32/Decoder : (backend/a64)VMOV 2020-11-22 17:30:23 -05:00
SachinVin
0784f2fe0d backend\A64\emit_a64_floating_point.cpp: Implement VCVT instructions 2020-11-22 17:30:23 -05:00
SachinVin
b61bb8e313 backend\A64\emit_a64_floating_point.cpp: part 1 2020-11-22 17:30:23 -05:00
SachinVin
25532e4999 backend/a64/reg_alloc: Fix EmitMove for FPRs 2020-11-22 17:30:23 -05:00
SachinVin
c1130497b1 A64 emitter: Support for 64bit FMOV 2020-11-22 17:30:23 -05:00
SachinVin
c4fb80bf05 a64 backend: Load "guest_FPSR" 2020-11-22 17:30:23 -05:00
SachinVin
83ef2b7070 A64 backend: Add Get/SetExtendedRegister and Get/SetGEFlags 2020-11-22 17:30:23 -05:00
SachinVin
eacc261010 tests: Dont compile A64 tests for non x64 backend 2020-11-22 17:30:23 -05:00
SachinVin
89bb32bed5 travis a64: unicorn 2020-11-22 17:30:23 -05:00
SachinVin
20ab2e2e80 travis a64 backend 2020-11-22 17:30:23 -05:00
SachinVin
3850598ca2 Frontend/A32: a64 backend; Interpret SEL 2020-11-22 17:30:23 -05:00
SachinVin
80a67a8f31 frontend/A32: A64 Backend implemented instructions 2020-11-22 17:30:23 -05:00
SachinVin
0deeb504b6 backend\A64\emit_a64_data_processing.cpp: Implement REV and CLZ ops 2020-11-22 17:30:23 -05:00
SachinVin
0b9008680a backend\A64\emit_a64_data_processing.cpp: Implement Sext an Zext ops 2020-11-22 17:30:23 -05:00
SachinVin
71bf3432a0 backend\A64\emit_a64_data_processing.cpp: Implement Logical ops 2020-11-22 17:30:23 -05:00
SachinVin
ea54d71e3b backend\A64\emit_a64_data_processing.cpp: Implement Arithmetic ops 2020-11-22 17:30:23 -05:00
SachinVin
361d221741 backend\A64\emit_a64_data_processing.cpp: Implement Shift and Rotate ops 2020-11-22 17:30:23 -05:00
SachinVin
85fa3096dd backend\A64\emit_a64_data_processing.cpp:Implement ops 2020-11-22 17:30:23 -05:00
SachinVin
ddf33c425b backend\A64\emit_a64_data_processing.cpp: Mostly empty file 2020-11-22 17:30:23 -05:00
SachinVin
3119f62f24 backend/a64: Add a32_interface 2020-11-22 17:30:23 -05:00
SachinVin
454aee658f backend/a64: Port a32_emit_a64 2020-11-22 17:30:23 -05:00
SachinVin
cc83d2344e backend/a64: Port block_of_code and emit_a64 2020-11-22 17:30:23 -05:00
SachinVin
4edf81f785 backend/a64: Port callback functions 2020-11-22 17:30:23 -05:00
SachinVin
ea221bcc94 backend/a64: Port exception handler 2020-11-22 17:30:23 -05:00
SachinVin
598392c9f6 backend/a64: Port const pool 2020-11-22 17:30:23 -05:00
SachinVin
800d1e34e2 backend/a64: Port reg_alloc 2020-11-22 17:30:23 -05:00
SachinVin
2645f51713 backend/a64: Port ABI functions 2020-11-22 17:30:23 -05:00