Commit graph

3178 commits

Author SHA1 Message Date
Merry
d6f2a15834 backend/arm64: Simple block linking 2022-11-08 21:40:45 +00:00
Merry
fa6b58d3a8 emit_arm64: EmitAddCycles: Do not emit code if cycles_to_add == 0 2022-11-08 21:40:45 +00:00
Merry
7dbd87ba2d backend/arm64/a32_address_space: Terminate early if halted prior to execution beginning 2022-11-08 21:40:45 +00:00
Liam
282bd3ad5c a32_interface: fix copy paste error 2022-11-06 21:24:05 +00:00
Merry
e476fad5a2 backend/arm64: Implement cycle counting 2022-11-06 01:10:29 +00:00
SachinVin
b5ad066372
backend/arm64: Properly return halt reason (#713) 2022-11-05 19:32:48 +00:00
Merry
848e0913df decoder_detail: Fix Android NDK compilation issue 2022-11-05 19:25:12 +00:00
Banny
4b80be4bd9
backend/arm64/a32_address_space: Protect code memory at end of prologue emission (#712)
Bug fix
2022-10-23 23:04:10 +01:00
Macdu
f374d6acb0 FPVectorFromHalf32 implementation 2022-10-18 15:04:30 +01:00
Macdu
58a1e4cc63 Implement CallHostFunction 2022-10-18 15:04:30 +01:00
Macdu
79ff9401f3 Small fixes 2022-10-18 15:04:30 +01:00
FreddyFunk
64a5ca7c2e tests: remove unused default iterations in TestThumb 2022-10-18 15:04:30 +01:00
Merry
85fa32ce98 github: Run unit tests for aarch64 2022-10-18 15:04:30 +01:00
Merry
1d60047078 a32_interface: Temporary implementation of ranged cache invalidation 2022-10-18 15:04:30 +01:00
Merry
d90e0db502 backend/arm64: Implement Step 2022-10-18 15:04:30 +01:00
Merry
cf47ab3b42 emit_arm64_a32_memory: Implement all callbacks 2022-10-18 15:04:30 +01:00
Merry
d2deb496da tests/A32: Add coprocessor tests 2022-10-18 15:04:30 +01:00
Merry
94f5ae4f37 emit_arm64_a32_coprocessor: Implement coprocessor IR instructions 2022-10-18 15:04:30 +01:00
Merry
0f0744cb78 emit_arm64_a32: Implement A32CallSupervisor and A32ExceptionRaised 2022-10-18 15:04:30 +01:00
Merry
882490b372 frontend: Fix MSVC narrowing conversion warning for VectorSignedSaturatedShiftLeftUnsigned argument 2022-10-18 15:04:30 +01:00
Merry
f4747aea10 test_generator: Increase iterations 2022-10-18 15:04:30 +01:00
Merry
806a50703b test_generator: Test ASIMD 2022-10-18 15:04:30 +01:00
Merry
2532cfba4d emit_arm64_vector_floating_point: Implement 2022-10-18 15:04:30 +01:00
Merry
1badc92456 emit_arm64_cryptography: Fix sha256h2 2022-10-18 15:04:30 +01:00
Merry
d4b98c7be4 emit_arm64_vector: Implement VectorPaired{Max,Min}Lower 2022-10-18 15:04:30 +01:00
Merry
f92cb5e66f IR: Remove VectorShuffleWords
Introduce VectorRotateWholeVectorRight
2022-10-18 15:04:30 +01:00
Merry
8fb37e0e4f IR: Introduce VectorPaired{Min,Max}Lower 2022-10-18 15:04:30 +01:00
Merry
3df0eb30be emit_arm64_vector: Implement Saturated Accumulate 2022-10-18 15:04:30 +01:00
Merry
c5b45dc5d5 emit_arm64_vector: Implement VectorSignedSaturatedShiftLeftUnsigned 2022-10-18 15:04:30 +01:00
Merry
08b123feb5 IR: Modify VectorSignedSaturatedShiftLeftUnsigned to only accept immediate shift amounts 2022-10-18 15:04:30 +01:00
Merry
3216ed3451 emit_arm64_vector: Fix VectorTranspose 2022-10-18 15:04:30 +01:00
Merry
0a5ebd5b57 emit_arm64_vector: Fix VectorTableLookup64 2022-10-18 15:04:30 +01:00
Merry
99d5caa06d A32/asimd_two_regs_misc: Remove use of VectorShuffleWords in VUZP 2022-10-18 15:04:30 +01:00
Merry
4417314619 emit_arm64_vector: Implement VectorReverseElement 2022-10-18 15:04:30 +01:00
Merry
9313f5ea88 IR: Remove VectorShuffleHighHalfwords and VectorShuffleLowHalfwords 2022-10-18 15:04:30 +01:00
Merry
c6667997bc emit_arm64_vector: Implement VectorSignedSaturatedDoublingMultiply{High,HighRounding,Long} 2022-10-18 15:04:30 +01:00
Merry
600f8e29c1 emit_arm64_cryptography: Implement most 2022-10-18 15:04:30 +01:00
Merry
a97105c296 IR: Split VectorSignedSaturatedDoublingMultiply into VectorSignedSaturatedDoublingMultiply{High,HighRounding} 2022-10-18 15:04:30 +01:00
Merry
aaf7c41ab3 emit_arm64_vector_saturation: Implement all 2022-10-18 15:04:30 +01:00
Merry
6306e3462e emit_arm64_vector: Implement most IR insturctions 2022-10-18 15:04:30 +01:00
Merry
61d509dda2 IR: Add VectorMultiply{Signed,Unsigned}Widen instructions
Polyfill for x86-64 backend
2022-10-18 15:04:30 +01:00
Merry
bbf0179d30 test_generator: Enable vfp testing 2022-10-18 15:04:30 +01:00
Merry
11c02e5a62 backend/arm64/fpsr_manager: Bugfixes 2022-10-18 15:04:30 +01:00
Merry
2ab0e64be4 backend/arm64/reg_alloc: Update uses on all locations
Trying to optimize just for args is incorrect when inst has zero uses
2022-10-18 15:04:30 +01:00
Merry
2c75ca746b backend/arm64/stack_layout: Remove unused variable 2022-10-18 15:04:30 +01:00
Merry
72357aba04 emit_arm64_vector: Implement VectorBroadcast 2022-10-18 15:04:30 +01:00
Merry
3c3f30c0ac emit_arm64_vector: Implement Vector{Get,Set}Element 2022-10-18 15:04:30 +01:00
Merry
ee6433889e emit_arm64_floating_point: Implement a majority of floating point instructions 2022-10-18 15:04:30 +01:00
Merry
2cc5b09bdf emit_arm64_data_processing: Implement ConditionalSelect 2022-10-18 15:04:30 +01:00
Merry
a4a665148c emit_arm64_a32: Get/Set ext_reg state 2022-10-18 15:04:30 +01:00