Merry
b4ac8fd6c1
oaknut: Fix MOV for applications of MOVN
2023-10-09 21:43:56 +01:00
Merry
0575cadc49
oaknut: Disable certain functionality where absolute addressing is not available
2023-10-09 21:43:25 +01:00
Merry
394a3c8f0a
oaknut: Appease MSVC
2023-10-09 21:19:51 +01:00
Merry
e83c9f3276
oaknut: Add VectorCodeGenerator
2023-10-09 01:49:24 +01:00
Merry
5eb122cc58
oaknut: Tidy up public header
2023-10-09 01:33:13 +01:00
Wunkolo
36243256f3
oaknut: Add const qualifier to AddrOffset ctor
...
Can't seem to tell if this is intentionally non-const, or not, but this
fixes some function-pointer issues I was facing on MacOS.
2023-09-29 00:44:20 +01:00
Wunkolo
4af500cb5b
oaknut: Add ptr accessor to Label
...
Accesses the underlying `m_addr` for a `Label`. Allows client code to
derive the actual memory location of a `Label`. Also adds `is_bound` to
ensure the Label has an actual address.
2023-09-21 05:54:57 +01:00
Wunkolo
bccb06669f
oaknut: CodeGenerator const correctness
...
Adds `const` qualifier to some functions so that const CodeGenerator
objects can be operated upon.
2023-09-20 23:29:33 +01:00
Merry
3a70cd40aa
oaknut: Run clang-format
2023-04-27 21:24:29 +01:00
Steveice10
dc54784b87
oaknut: Add support for iOS memory protection.
2023-04-19 17:16:32 +01:00
Merry
841f9b6932
oaknut: throw OaknutException instead of plain C string
2023-01-02 14:46:53 +00:00
SachinVin
caf9cbbdc8
oaknut: Implement ADRL and MOVP2R pseudo instructions ( #2 )
...
* offset.hpp: constify PageOffset
* okanut: Implement ADRL and MOVP2R pseudo instructions
2022-11-21 21:28:00 +00:00
Wunk
0b5745e4eb
oaknut: Add Windows on Arm support ( #1 )
...
* Add instruction-cache invalidation for Windows
chromium uses this function as well for their `CpuFeatures::FlushICache`
implementation and similarly utilizes `sys_icache_invalidate` on OSX.
* Fix MSVC compiler warning flags
Avoids build errors on MSVC. Just copied the warning flags used on
dynarmic.
* Implement `OAKNUT_USE_BUNDLED_CATCH`
For building on Windows. This was previously unimplemented as
`DYNARMIC_USE_BUNDLED_CATCH`.
2022-11-15 09:45:59 +00:00
Merry
2952b759f7
oaknut: Correct MOV (UMOV alias)
2022-11-15 01:08:59 +00:00
Merry
7c777a28f8
oaknut: Fix ADR and ADRP
2022-11-06 14:58:12 +00:00
Merry
7470c76117
oaknut: Add ARMv8.2 instructions
2022-08-29 19:33:27 +01:00
Merry
542128b519
oaknut: Add ARMv8.1 instructions
2022-08-28 19:10:18 +01:00
Merry
9acafdcdd9
oaknut: fpsimd MOV and UMOV corrections
2022-08-02 00:33:33 +01:00
Merry
636f91bacc
oaknut: MOV: Fix MOVN case
2022-07-31 08:22:13 +01:00
Merry
9cb3326215
oaknut: Implement arranged accessors from DReg and QReg
2022-07-25 20:58:29 +01:00
Merry
ba2dc2afe9
oaknut: dx
2022-07-24 13:15:48 +01:00
Merry
94bf56b08a
oaknut: align
2022-07-24 13:15:48 +01:00
Merry
aa7a3519f7
oaknut: Add dw
2022-07-24 00:37:04 +01:00
Merry
898f666ecb
oaknut: Add common system registers
2022-07-23 17:13:15 +01:00
Merry
c0c7155050
oaknut: pragma once
2022-07-16 20:23:16 +01:00
Merry
1ed4284bca
code_block: Correct headers
2022-07-12 16:36:20 +01:00
Merry
86f2ca8722
list: Make constexpr
2022-07-10 09:32:24 +01:00
Merry
ebcb562e70
list: Avoid comparison of different signs
2022-07-10 08:55:36 +01:00
Merry
60710cd718
CodeGenerator: Add MOV (immediate)
2022-07-09 23:09:16 +01:00
Merry
e27d2f0306
Implement CodeBlock
2022-07-09 20:50:38 +01:00
Merry
373448b3ec
Add ARMv8.0 FP & SIMD instructions
2022-07-09 14:26:39 +01:00
Merry
2ea8edd88a
imm: Simplify bit immediate encoding
2022-07-07 23:26:53 +01:00
Merry
3a67203cd4
Update notices
2022-07-03 20:21:36 +01:00
Merry
b78ce55fb6
Minor fixes
2022-07-03 17:16:04 +01:00
Merry
7a9c21c613
Add Policy, Implement Labels
2022-07-03 10:50:45 +01:00
Merry
6e5a93ae9d
Correct LslShift encoding
2022-07-02 22:26:08 +01:00
Merry
f9de15be61
encode: Only check MovImm16 encode size in hiiiiiiiiiiiiiiii case
2022-07-02 22:12:19 +01:00
Merry
e1aa3456f6
arm64_mnemonics: Apply AddSubExt::LSL correction before verification
2022-07-02 21:30:21 +01:00
Merry
9e19be37bd
Refactor encode helpers into new file
2022-07-02 21:25:50 +01:00
Merry
ff3eb7a796
First commit
2022-07-02 20:31:43 +01:00