Commit graph

125 commits

Author SHA1 Message Date
Michał Janiszewski
10b86e67da Improve directory creation in WindowsCopyFiles.cmake 2018-06-24 21:27:00 +02:00
bunnei
ff2912045b Revert "Use Ninja for MSVC AppVeyor builds" () 2018-06-23 03:17:32 -04:00
Michał Janiszewski
96f00c0aaa Use Ninja for MSVC AppVeyor builds 2018-06-05 22:46:54 +02:00
Lioncash
ec2f7b3d20 externals: Update dynarmic
Updates dynarmic to revision 990a569b7a5f2518fe08682f5ebf8536e5388d66
2018-05-23 15:26:23 -04:00
Lioncash
8979bb5de7 externals: Update dynarmic
Just a basic update to keep it in sync
2018-04-28 14:31:37 -04:00
Lioncash
caaf524578 externals: Update dynarmic to HEAD 2018-04-20 09:02:18 -04:00
James Rowe
b957a3647a Update fmtlib to fix msvc warnings
Additionally, when updating fmtlib, there was a change in fmtlib broke
how the old logging macro was overloaded, so this works around that by
just naming the fmtlib macro impl something different
2018-04-05 22:42:09 -06:00
Daniel Lim Wee Soong
930a045d42 externals: Update fmt to 4d35f94
Versions prior to this didn't compile on OpenBSD due to unconditional
use of the non-standard strtod_l() function.

The fmt::MemoryWriter API has been removed in the intervening
versions, so replace its use with fmt::memory_buffer and fmt::format_to.

The library also no longer provides the fmt::fmt ALIAS, so define
it in externals/CMakeLists.txt.
2018-04-03 02:49:58 +08:00
MerryMage
ca29f9e570 dynarmic: Update to 9cc12d8
9cc12d8 abi: Missing includes
ac35ad5 emit_x64_floating_point: Near jump instead of short jump in FPMinNumberic{32,64}
6f03fdd A64: system: Use an enum class for MRS/MSR register encodings
2018-03-29 12:49:21 +01:00
MerryMage
5cb87743d6 dynarmic: Update to 12a1020
12a1020 emit_X64_floating_point: Near jmp to end instead of short jmp
6278f83 emit_x64_vector: Fix typo in VectorShuffleImpl
25a0204 A64: Implement REV64
aa92e33 bit_util: Do nothing in RotateRight if the rotation amount is zero
e537985 A64: Implement REV32 (vector)
f62a258 ir: Add IR opcodes for emitting vector shuffles
36ac6ec emit_x64_vector_floating_point: Fix out of bounds array access in EmitVectorOperation64
20a59a9 A64: Implement REV16 (vector)
b2f7bb0 CMakeLists: Add fp_util, macro_util and math_util headers
fd21b58 A64: Implement EOR3 and BCAX
a48c0bb travis: Use yuzu's unicorn fork
59e62e0 externals: Update catch to v2.2.1
2018-03-27 08:23:35 +01:00
bunnei
3cd8e8a062 externals: Update Glad to latest version used by Citra. 2018-03-19 23:14:01 -04:00
MerryMage
2598b3d893 dynarmic: Update to 6b4c6b0
6b4c6b0 impl: Update PC when raising exception
7a1313a A64: Implement FDIV (vector)
b2d781d system: Raise exception for YIELD, WFE, WFI, SEV, SEVL
b277bf5 Correct FPSR and FPCR
7673933 A64: Implement USHL
8d0e558 A64: Implement UCVTF (vector, integer), scalar variant
da9a4f8 A64: Partially implement FCVTZU (scalar, fixed-point) and FCVTZS (scalar, fixed-point)
7479684 A64: Implement system register TPIDR_EL0
0fd75fd A64: Implement system registers FPCR and FPSR
31e370c A64: Implement system register CNTPCT_EL0
9a88fd3 A64: Implement system register CTR_EL0
1d16896 A64: Implement NEG (vector)
3184edf IR: Add IR instruction ZeroVector
31f8fbc emit_x64_floating_point: Add maybe_unused to preprocess parameter
567eb1a A64: Implement FMINNM (scalar)
c6d8fa1 A64: Implement FMAXNM (scalar)
616056d constant_pool: Add frame parameter
a3747cb A64: Implement ADDP (scalar)
5cd5d9f reg_alloc: Only exchange GPRs
dd0452a A64: Implement DUP (element), scalar variant
e5732ea emit_x64_floating_point: Correct FP{Max,Min}{32,64} implementations for -0/+0
40eb9c3 A64: Implement FMAX (scalar), FMIN (scalar)
7cef39b fuzz_with_unicorn: QEMU's implementation of FCVT is incorrect
826dce2 travis: Switch unicorn repository
9605f28 a64/config: Allow NaN emulation accuracy to be set
e9435bc a64_emit_x64: Add conf to A64EmitContext
30b596d fuzz_with_unicorn: Explicitly test floating point instructions
be292a8 A64: Implement FSQRT (scalar)
3c42d48 backend_x64: Accurately handle NaNs
4aefed0 fuzz_with_unicorn: Print AArch64 disassembly
2018-02-21 21:39:07 +00:00
FernandoS27
47a4770dc2 updated dynarmic 2018-02-17 14:57:32 -04:00
MerryMage
2a0362fe5d arm_dynarmic: Support direct page table access 2018-02-12 21:53:32 +00:00
MerryMage
49d00445cf dynarmic: Fix bug due to Windows ABI mismatch 2018-02-09 16:05:28 +00:00
MerryMage
9eb03cb8ef dynarmic: Update to 41ae12263
Changes: Primarily implementing more A64 instructions
2018-02-09 00:29:36 +00:00
Lioncash
b4a090b168 externals: Update catch to v2.1.1 2018-01-27 15:42:56 -05:00
MerryMage
cf45105383 externals: Update dynarmic
a6d17e A64: Implement AND (vector)
963453 tests/A64: Randomize vectors
adcd34 tests/A64/unicorn: Print interrupt number when InterruptHook is hit
304c91 tests/A64: Allow RunTestInstance to start from an arbitrary offset
d333b5 A64: Implement ADD (vector, vector)
1cf87a A64: Implement REV, REV32, and REV16 ()
9fc157 IR: Simplify types. F32 -> U32, F64 -> U64, F128 -> U128
50c181 reg_alloc: GetBitWidth: Add UNREACHABLE
adccbf reg_alloc: Consider bitwidth of data and registers when emitting instructions
7b7f23 A64: Implement CSEL
2f8413 IR: Implement Conditional Select
ebb3e8 A64/tests: Split unicorn sanity checking from other tests
5740a0 tests/A64: Single random instruction: Test branch instructions as well
0892b4 A64/translate/branch: bug: Read-after-write error in BLR
e77bc2 A64: Implement SBFM, BFM, UBFM
0c37ca A64: Implement MOVN, MOVZ, MOVK
b6bb59 travis: Print current test information
e77207 fuzz_thumb: Off by one error
a04ca2 ir/location_descriptor: Add missing <functional> header for std::hash
1e0f5c travis: Run A64 tests
2018-01-21 22:05:43 +00:00
bunnei
4ddfb2e881 Merge pull request from lioncash/cmake
CMakeLists: Derive the source directory grouping from targets themselves
2018-01-18 01:37:17 -05:00
Lioncash
447c25646e CMakeLists: Derive the source directory grouping from targets themselves
Removes the need to store to separate SRC and HEADER variables, and then
construct the target in most cases.
2018-01-17 21:51:43 -05:00
Lioncash
52e0d9da23 externals: Update catch to 2.1.0 2018-01-17 18:40:08 -05:00
James Rowe
84a702e6c3 Build: Add unicorn as a submodule and build it if needed
Adds a cmake custom target that will build unicorn on first compile and
uses this in the build scripts as well. Updates Appveyor and Travis
build scripts to work with the new unicorn build, and updates the paths
to all of the different artifacts.
2018-01-16 01:15:52 -07:00
unknown
184871c5e9 Fix some warnings 2018-01-15 16:24:29 +01:00
Andrix44
6a9a0f4e51 Fix some warnings in the microprofile 2018-01-15 00:08:03 +01:00
bunnei
31fc09ae89 externals: Remove unused repos. 2018-01-14 04:29:30 -05:00
MerryMage
d3b17a5e9b Update dynarmic to bc73004
bc73004 a64_merge_interpret_blocks: Remove debug output
4e656ed tests/A64: Randomize PSTATE.<NZCV>
fd9530b A64: Optimization: Merge interpret blocks
3c9eb04 testenv: Use format constants
324f3fc tests/A64: Unicorn interface fixes
98ecbe7 tests/A64: Fuzz against unicorn
b1d38e7 tests/A64: Move TestEnvironment to own header
5218ad9 A64/data_processing_pcrel: bug: ADR{,P} instructions sign extend their immediate
b1a8c39 A64/data_processing_addsub: bug: {ADD,SUB}S (extended register) instructions write to ZR when d = 31
64827fb a64_emit_x64: bug: A64CallSupervisor trampled callee-save registers
1bfa04d emit_x64: bug: OP m/r64, imm32 form instructions sign-extend their immediate on x64
edadeea A64 inferface: Use two argument static_assert
9ab1304 A64: Add ExceptionRaised IR instruction
6843eed Update readme
7438d07 A64/translate: Add TranslateSingleInstruction function
2018-01-13 22:38:57 +00:00
James Rowe
5dbd091a80 Massive removal of unused modules 2018-01-12 19:11:03 -07:00
bunnei
599bc43ea4 boost: Update version. 2018-01-12 19:37:04 -05:00
bunnei
2817ec4da4 core: Gut out cryptop, since it doesn't compile with C++17. 2018-01-12 19:36:41 -05:00
MerryMage
4b27ec5b07 dynarmic: Update to 83afe435 2018-01-12 17:49:10 -05:00
MerryMage
ced9768819 arm_dynarmic: Implement core 2018-01-12 17:48:29 -05:00
MerryMage
66a015fe9a fix macos build 2018-01-08 19:20:10 -05:00
bunnei
636d656b45 cmake: Add script to find Unicorn. 2018-01-04 19:52:54 -05:00
bunnei
6545152acd cmake: Don't compile Dynarmic as it's unused. 2018-01-04 17:01:02 -05:00
bunnei
ac7c4f67b4 externals: Point dynarmic at a real commit. 2018-01-03 21:51:41 -05:00
bunnei
6be0783b9b externals: Update dynarmic and xbyak. 2017-10-25 11:26:35 -04:00
bunnei
775cf60729 Merge remote-tracking branch 'upstream/master' into nx
# Conflicts:
#	src/core/CMakeLists.txt
#	src/core/arm/dynarmic/arm_dynarmic.cpp
#	src/core/arm/dyncom/arm_dyncom.cpp
#	src/core/hle/kernel/process.cpp
#	src/core/hle/kernel/thread.cpp
#	src/core/hle/kernel/thread.h
#	src/core/hle/kernel/vm_manager.cpp
#	src/core/loader/3dsx.cpp
#	src/core/loader/elf.cpp
#	src/core/loader/ncch.cpp
#	src/core/memory.cpp
#	src/core/memory.h
#	src/core/memory_setup.h
2017-10-09 23:56:20 -04:00
bunnei
f4b1216c81 externals: Add lz4. 2017-09-30 14:30:04 -04:00
James Rowe
62a7372026 Build: Enable SSL in mingw by linking against WinSSL
The mingw builds aren't submitting telemetry because the curl library
they are linked against is configured to use openSSL and openSSL looks
for the certificates in the users home folder. This keeps it from
contacting web services because it can't communicate over SSL.

This commit adds a download in mingw builds that will download a
precompiled curl for mingw linked against winssl and sspi.
2017-09-11 09:10:17 -06:00
MerryMage
48aecbfbd3 externals: Update soundtouch 2017-08-20 17:30:05 -07:00
James
b09fccfe6d Update cryptopp 2017-08-08 17:50:09 +10:00
James
7bbd6e7f38 Add description of upstream repo 2017-07-18 19:59:08 +10:00
James
5684dc8228 Don't pull in entire JSON repo for single header file 2017-07-18 13:37:27 +10:00
Weiyi Wang
b6727d9527 Merge pull request from jroweboy/mingw_compile_test
Update enet submodule
2017-07-13 09:57:35 +03:00
James Rowe
4127661f33 Update enet submodule
This includes a fix merged upstream to support mingw compilation
2017-07-12 20:39:47 -06:00
bunnei
7927c9b28f web_service: Add CMake flag to enable. 2017-07-11 18:33:41 -04:00
bunnei
a13865c10f externals: Add JSON as a submodule. 2017-07-09 18:38:02 -04:00
bunnei
7f37ccd0d8 externals: Add CPR as a submodule. 2017-07-09 13:24:20 -04:00
B3n30
64b6caf5f5 Implement basic virtual Room support based on enet ()
* Added support for network with ENet lib,

connecting is possible, but data can't be sent, yet.

* fixup! Added support for network with ENet lib,

* fixup! CLang

* fixup! Added support for network with ENet lib,

* fixup! Added support for network with ENet lib,

* fixup! Clang format

* More fixups!

* Moved ENetHost* and ENetPeer* into pimpl classes

* fixup! Moved ENetHost* and ENetPeer* into pimpl classes

* fixup! Clang again

* fixup! Moved ENetHost* and ENetPeer* into pimpl classes

* fixup! Moved ENetHost* and ENetPeer* into pimpl classes

* fixup! Moved ENetHost* and ENetPeer* into pimpl classes
2017-07-07 15:34:15 -04:00
Klöen Lansfiel
f76b0ede7a externals: silence warning C4390 on MSVC for cryptopp () 2017-06-24 17:38:52 -07:00