Lioncash
7139942976
common: Move byte swapping functions to bit_utils.h
...
These are quite general functions, so they can just be moved into common
instead of recreating a namespace here.
2020-04-22 20:57:37 +01:00
Lioncash
134bb02e19
ir/value: Replace includes with forward declarations
...
enum classes are still considered complete types when forward declared
(as the compiler knows the exact size of the type from the declaration
alone). The only difference in this case being that the members of the
enum class aren't visible. Given we don't use the members within this
header in any way, we can simply forward declare them here and remove
the inclusions.
2020-04-22 20:55:05 +01:00
MerryMage
f96c43d422
A32: Implement FastDispatchHint
2020-04-22 20:53:46 +01:00
MerryMage
a12854857b
A32: Add define_unpredictable_behaviour option
2020-04-22 20:53:46 +01:00
MerryMage
f73104633b
a32_emit_x64: Fix incorrect BMI2 implementation for SetCpsr
...
* The MSB for each byte in cpsr_ge were not being appropriately set.
* We also expand test coverage to test this case.
* We fix the disassembly of the MSR (imm) and MSR (reg) instructions as well.
2020-04-22 20:53:46 +01:00
MerryMage
f91a9f18cd
A32/testenv: Add missing headers
2020-04-22 20:53:45 +01:00
MerryMage
35c758f211
tests: Refactor unicorn_emu to allow for A32 unicorn
2020-04-22 20:46:23 +01:00
MerryMage
381821eda3
a32/fuzz_arm: Disable vfp tests
2020-04-22 20:46:23 +01:00
Lioncash
5b39e8dcf8
tests: Silence warnings in skyeye code
...
Gets rid of warning noise when compiling the tests.
2020-04-22 20:46:21 +01:00
Lioncash
64d4e40081
tests/A32/testenv: Add type aliases for register arrays
...
Allows avoiding duplicating std::array instance sizes and types.
2020-04-22 20:46:19 +01:00
MerryMage
a78e13ff19
fuzz_arm: Use SCOPE_FAIL
2020-04-22 20:46:13 +01:00
MerryMage
d7044bc751
assert: Use fmt in ASSERT_MSG
2020-04-22 20:46:12 +01:00
MerryMage
98ec9c5f90
A32: Change UserCallbacks to be similar to A64's interface
2020-04-22 20:46:12 +01:00
MerryMage
c34639f33d
fuzz_thumb: Off by one error
2020-04-22 20:42:45 +01:00
MerryMage
a59e9ad9c6
travis: Run A64 tests
2020-04-22 20:42:45 +01:00
MerryMage
d5725de26a
tests/A64: Fuzz against unicorn
2020-04-22 20:42:45 +01:00
MerryMage
72a793f5b0
ir_opt: Split off A32 specific passes
2020-04-22 20:42:45 +01:00
MerryMage
d1eb757f93
A64: Backend framework
2020-04-22 20:42:44 +01:00