SachinVin
|
a79bd7e8c8
|
backend/A64/a32_jitstate: Upstream changes from x64 backend
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
ef898c6181
|
backend/A64: Add test for q flag being incorrectly set
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
9f07aa0b7d
|
backend/A64/a32_emit_a64.cpp: Use unused HostCall registers
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
ff5c3d5ab5
|
backend/A64/a32_emit_a64.cpp: Use MOVP2R instead of MOVI2R.
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
3972263e73
|
backend/A64/abi: Fix FP caller and callee save registers
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
c3bc26b6f5
|
a64/block_of_code: use GetWritableCodePtr() instead of const_cast<...>(GetCodePtr())
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
b7b65f10e6
|
backend/A64/constant_pool: Clean up unused stuff
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
aa95927614
|
emit_a64_data_processing.cpp: remove pointless DoNZCV .
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
8cd195beaf
|
IR + backend/*: add SetCpsrNZCVRaw and change arg1 type of SetCpsrNZCV to IR::NZCV
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
5246568d10
|
backend/A64: Fix ASR impl
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
103ab07fa4
|
a64_emitter: Use Correct alias for ZR and WZR in CMP
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
1e37ecaa25
|
backend/A64: Use CSLE instead of branches for LSL LSR and ASR + minor cleanup
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
6ab3c04037
|
backend/A64: Use correct register size for EmitNot64
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
ea2c5e6dce
|
tests/A32: Check if Q flag is cleared properly
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
fcfd3f3183
|
backend/A64: SignedSaturatedSub and SignedSaturatedAdd
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
1b6d9e417f
|
backend/A64/emit_a64_saturation.cpp: Implement EmitSignedSaturation and EmitUnsignedSaturation
Implements SSAT SSAT16 USAT USAT16 QASX QSAX UQASX UQSAX
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
82488c7feb
|
backend/A64: add emit_a64_saturation.cpp
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
8eea0660ce
|
backend/A64: Fix EmitA32SetCpsr
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
cc1caa5007
|
backend/A64/devirtualize: remove unused DevirtualizeItanium
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
4cdb8ec142
|
backend/A64: refactor to fpscr from mxcsr
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
f671e1ef4d
|
backend/A64: Use ScratchGpr() instead of ABI_SCRATCH1 where possible
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
743aa2385e
|
backend/A64: support for always_little_endian
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
a11111bcde
|
backend/a64: Add hook_hint_instructions option
534eb0f
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
2d5b21ecc2
|
backend /A64: cleanup
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
23d30423d7
|
gitignore: add .vs dir
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
962a359ec4
|
Minor style fix
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
b883dbe240
|
backend\A64\emit_a64_packed.cpp: Implement AddSub halving and non halving
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
6adc894ffd
|
backend\A64: Instructions that got implemented on the way
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
93a183de02
|
backend\A64\emit_a64_packed.cpp: Implement Unsigned Sum of Absolute Differences
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
e3b8eb1735
|
a64 emitter: Absolute Difference and add across vector instructions
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
664914d141
|
backend\A64\emit_a64_packed.cpp: Implement Packed Select
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
a4ca210798
|
Backend/a64: Fix asset when falling back to interpreter
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
ea2c98a7c3
|
backend\A64\emit_a64_packed.cpp: Implement Packed Halving Add/Sub instructions
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
93c946dfb3
|
backend\A64\emit_a64_packed.cpp: Implement Packed Saturating instructions
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
d3c4ffbdc8
|
backend\A64\emit_a64_packed.cpp: Implement SignedPacked*- ADD and SUB
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
0f00a1a00b
|
a64 emitter: Vector Halving and Saturation instructions
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
d2847a202e
|
backend\A64\emit_a64_packed.cpp: Implement UnsignedPacked*- ADD and SUB...
with few other in the emitter
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
5550e6f157
|
a64 emitter: fix Scalar Saturating Instructions
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
5d6242ac46
|
A64 Emitter: Implement Saturating Add and Sub
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
5e55e8297f
|
backend\A64\emit_a64_data_processing.cpp: Implement Division
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
d6f0b3532f
|
backend\A64\emit_a64_data_processing.cpp: Implement 64bit CLZ
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
b9c6a99cf5
|
backend\A64\emit_a64_data_processing.cpp: Implement 64bit LSL and ROR Instructions
Also EmitTestBit
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
2ff25d4fbb
|
backend\A64\emit_a64_data_processing.cpp: Implement 64bit Logical Instructions
|
2020-04-07 23:07:24 -05:00 |
|
SachinVin
|
f33a51cb09
|
backend/a64: implememnt CheckBit
|
2020-04-07 23:07:23 -05:00 |
|
SachinVin
|
2dc985237b
|
backend/a64: Redesign Const Pool
|
2020-04-07 23:07:23 -05:00 |
|
SachinVin
|
66978a9fb7
|
backend\A64\emit_a64_floating_point.cpp: Fix include paths
|
2020-04-07 23:07:23 -05:00 |
|
SachinVin
|
5af7146374
|
backend\A64\a32_emit_a64.cpp: Fix Coproc* after rebase
|
2020-04-07 23:07:23 -05:00 |
|
SachinVin
|
0fbb8a5a73
|
backend/a64/opcodes.inc: Coproc instructions
|
2020-04-07 23:07:23 -05:00 |
|
SachinVin
|
49dce5c8fa
|
a64 emitter: Fix LDR literal
|
2020-04-07 23:07:23 -05:00 |
|
SachinVin
|
ec41144951
|
a64 emitter: Move IsInRange* and MaskImm* into anon namespace
|
2020-04-07 23:07:23 -05:00 |
|