Merry
1c70ef7333
Merge pull request #432 from lioncash/catch
...
externals: Update Catch to 2.6.1
2020-04-22 20:58:10 +01:00
Merry
24b0622093
Merge pull request #431 from lioncash/noexcept
...
backend/x64/a32_interface: Mark Context move constructor and move assignment as noexcept
2020-04-22 20:58:10 +01:00
Lioncash
20432c1683
externals: Update Catch to 2.6.1
...
Keeps the unit testing library up to date.
2020-04-22 20:58:09 +01:00
Merry
20fabc5083
Merge pull request #430 from lioncash/unused
...
block_of_code: Replace cast with [[maybe_unused]] in DoesCpuSupport()
2020-04-22 20:58:09 +01:00
Lioncash
2e180a7f14
backend/x64/a32_interface: Mark Context move constructor and move assignment as noexcept
...
Provides a more "correct" move constructor/assignment operator, since
these relevant functions shouldn't throw exceptions.
Has the benefit of playing nicely with std::move_if_noexcept and other
noexcept library facilities.
2020-04-22 20:58:09 +01:00
Merry
1138ac3429
Merge pull request #428 from lioncash/unused
...
common: Remove address_range.h
2020-04-22 20:58:09 +01:00
Lioncash
deb9dd4acc
block_of_code: Replace cast with [[maybe_unused]] in DoesCpuSupport()
2020-04-22 20:58:09 +01:00
Merry
ca3a2bab16
Merge pull request #426 from lioncash/const
...
frontend/{A32, A64}/ir_emitter: Mark PC() and AlignPC() as const-qualified member functions
2020-04-22 20:57:38 +01:00
Lioncash
3290a9fdc2
common: Remove address_range.h
...
The AddressRange structure isn't used anywhere within the codebase, so
this can be removed. Particularly because there's no real appeal/heavy
potential use of it in the future that isn't trivial to add back if
needed.
2020-04-22 20:57:38 +01:00
Merry
0489eaab69
Merge pull request #427 from lioncash/include
...
tests/A32/fuzz_arm: Remove unused Unix-specific include
2020-04-22 20:57:38 +01:00
Lioncash
ee973f13c7
frontend/A32/ir_emitter: Mark PC() and AlignPC() as const-qualified member functions
...
These don't modify instance state, so they can be const-qualified member
functions.
2020-04-22 20:57:38 +01:00
Merry
2eaf922f8b
Merge pull request #423 from lioncash/catch
...
externals: Update catch to v2.5.0
2020-04-22 20:57:38 +01:00
Lioncash
da5dd3ff66
tests/A32/fuzz_arm: Remove unused Unix-specific include
...
This was introduced within 6f6f60c61b
,
however, the relevant code that it was used with has since been removed,
making the include unnecessary.
2020-04-22 20:57:38 +01:00
Lioncash
3a2dd09122
frontend/A64/ir_emitter: Mark PC() and AlignPC() as const qualified member functions
...
These don't actually alter any instance state.
2020-04-22 20:57:38 +01:00
Merry
07759af694
Merge pull request #422 from lioncash/truncate
...
a32_unicorn: Silence a truncation warning within UnmappedMemoryHook()
2020-04-22 20:57:38 +01:00
Lioncash
630a54638c
externals: Update catch to v2.5.0
...
Keeps the unit testing library up to date.
2020-04-22 20:57:38 +01:00
Merry
00277739f4
Merge pull request #421 from lioncash/comma
...
tests/.../vfp_helper: Amend use of the comma operator
2020-04-22 20:57:38 +01:00
Lioncash
eadc07e269
a32_unicorn: Silence a truncation warning within UnmappedMemoryHook()
...
MemoryRead8() takes a u32, but we were passing the result of a
u32 + size_t operation, which is 64-bit on 64-bit platforms. This
results in a truncation warning
2020-04-22 20:57:38 +01:00
Mat M
a1663d08ed
Merge pull request #424 from meme/readme
...
Correct README (`jit` to `cpu`)
2020-04-22 20:57:38 +01:00
Lioncash
586dffb356
tests/.../vfp_helper: Amend use of the comma operator
...
Makes the lines of code slightly nicer to read
2020-04-22 20:57:38 +01:00
meme
81fb688eef
Correct README (jit
to cpu
)
2020-04-22 20:57:38 +01:00
Merry
dfdca2082f
Merge pull request #419 from lioncash/fold-op
...
constant_propagation_pass: Fold byte reversal opcodes where applicable
2020-04-22 20:57:37 +01:00
Merry
2c53f354ab
Merge pull request #418 from lioncash/fold-op
...
constant_propagation_pass: Handle folding for Least/MostSignificant{Bit, Byte, Half, Word} opcodes
2020-04-22 20:57:37 +01:00
Lioncash
575ae852a9
constant_propagation_pass: Fold byte reversal opcodes where applicable
...
These are reasonably trivial to fold away when applicable. We just
perform the swap and replace the instruction with the constant value.
2020-04-22 20:57:37 +01:00
Merry
ad14a33672
Merge pull request #417 from lioncash/swap
...
common: Move byte swapping functions to bit_utils.h
2020-04-22 20:57:37 +01:00
Lioncash
d302d9bd0c
constant_propagation_pass: Handle folding for Least/MostSignificant{Bit, Byte, Half, Word} opcodes
...
These are quite trivial to fold.
2020-04-22 20:57:37 +01:00
Merry
a3d640b0c1
Merge pull request #416 from lioncash/space
...
dynarmic_tests: Remove inconsistent spacing
2020-04-22 20:57:37 +01:00
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
MerryMage
7c8fcaef26
emit_x64_vector_floating_point: AVX && DN implementation of EmitFPVectorMulX
2020-04-22 20:57:37 +01:00
Merry
c06fd20b5a
Merge pull request #415 from lioncash/alloc
...
a64_emit_x64: Convert std::vector instances in GenFastmemFallbacks() to std::array
2020-04-22 20:57:37 +01:00
Lioncash
2ce7e579d2
dynarmic_tests: Remove inconsistent spacing
...
Makes the changed code more consistent with the surrounding code.
2020-04-22 20:57:37 +01:00
MerryMage
e3898e628e
A64: Implement FMULX (by element), single and double precision variants
2020-04-22 20:57:37 +01:00
Merry
e1a9b17366
Merge pull request #414 from lioncash/retval
...
fuzz_util: Simplify result return in InstructionGenerator's Generate() function
2020-04-22 20:57:37 +01:00
Lioncash
93351c7efb
a64_emit_x64: Make constness of loop elements explicit within GenFastmemFallbacks()
2020-04-22 20:57:37 +01:00
MerryMage
c106d8cedf
A64: Implement FMULX, vector single-precision and double-precision variant
2020-04-22 20:57:37 +01:00
Lioncash
2e62cfc89d
fuzz_util: Simplify result return in InstructionGenerator's Generate() function
...
This can just be a simple direct return without a separated declaration
and assignment.
2020-04-22 20:57:37 +01:00
Lioncash
7752ffc50c
a64_emit_x64: Convert std::vector instances in GenFastmemFallbacks() to std::array
...
Given these are quite small, we can avoid the need to heap allocate
here.
2020-04-22 20:57:37 +01:00
MerryMage
fa8925c4df
IR: Implement FPVectorMulX
2020-04-22 20:57:37 +01:00
Michał Janiszewski
bbd8abaa25
Provide justification for always-true condition ( #412 )
2020-04-22 20:57:37 +01:00
Michał Janiszewski
3359572e5d
Enable ninja and ccache on travis ( #413 )
...
* Use ninja, the fast build system
Make is known to be rather slow, but it's possible to generate other
build system files with CMake, so use a faster one.
* Use ccache on Travis
* Dummy commit to test ccache
2020-04-22 20:57:37 +01:00
Merry
ff7947a769
Merge pull request #411 from janisozaur/include-guards
...
Add missing include guards
2020-04-22 20:57:37 +01:00
Merry
8d47e7a4bc
Merge pull request #409 from VPeruS/switch-optional
...
Switch boost::optional to std::optional
2020-04-22 20:57:37 +01:00
Michał Janiszewski
7d0e918b51
Add missing include guards
2020-04-22 20:57:37 +01:00
Merry
ffd4fe282f
Merge pull request #410 from lioncash/catch
...
externals: Update catch to v2.4.1
2020-04-22 20:57:37 +01:00
V.Kalyuzhny
764a93bf5a
Switch boost::optional to std::optional
2020-04-22 20:57:37 +01:00
Merry
85bc96a61c
Merge pull request #408 from lioncash/shift
...
constant_propagation_pass: Add 64-bit variants of shifts to the pass
2020-04-22 20:57:37 +01:00
Lioncash
058ec4eea2
externals: Update catch to v2.4.1
...
Keeps the unit testing library up to date.
2020-04-22 20:57:37 +01:00
Merry
8bfaa9aac0
Merge pull request #407 from lioncash/div
...
constant_propagation_pass: Fold division operations where applicable
2020-04-22 20:57:37 +01:00
Lioncash
07c197e8d0
constant_propagation_pass: Add 64-bit variants of shifts to the pass
...
These optimizations can also apply to the 64-bit variants of the shift
opcodes; we just need to check if the instruction has an associated
pseudo-op before performing the 32-bit variant's specifics.
While we're at it, we can also relocate the code to its own function
like the rest of the cases to keep organization consistent.
2020-04-22 20:57:37 +01:00
Merry
d83eae2004
Merge pull request #406 from lioncash/mul
...
constant_propagation_pass: Fold Mul32 and Mul64 cases where applicable
2020-04-22 20:57:37 +01:00