David
a483e5e28d
Implemented various hwopus functions ( #853 )
2018-07-30 15:42:20 -07:00
MerryMage
99b5aa273c
externals: Update dynarmic to 73d3efc
...
73d3efc emit_x64_floating_point: Deduplicate code
c9508c3 fuzz_with_unicorn: Randomize FPCR.DN
2970833 emit_x64_vector_floating_point: Fix FPVector{Max,Min} when FPCR.DN = 1
150764f emit_x64_floating_point: Fix FP{Max,Min} when FPCR.DN = 1
b7d209c IR: SSE4.1 implementation of FPVectorRoundInt
8cf8270 A64: Implement FRINT{N,M,P,Z,A,X,I} (vector), single/double variant
8f46c26 IR: Initial implementation of FPVectorRoundInt
97017bb A64: Implement SQADD and SQSUB, scalar variant
ce58863 IR: Generalise SignedSaturated{Add,Sub} to support more bitwidths
e80f8ff a64_emit_x64: Bugfix EmitA64OrQC - Incorrect argument
1e4ec7e simd_three_same: Extract non-paired SMAX, SMIN, UMAX, UMIN code to a common function
6f9dc9b A64: Implement SMAXP, SMINP, UMAXP, UMINP
1dfb29f ir: Add opcodes for vector paired maximum and minimums
017b510 A64: Implement SMAXV, SMINV, UMAXV, and UMINV
aae22ee ir: Add opcodes for performing scalar integral min/max
6ef3af3 A64: Implement PMULL{2}
2a4ce19 translate: Deduplicate GetDataSize() functions
0e01500 floating_point_{conditional}_compare: Deduplicate code
259237c common: Move all cryptographic function to common/crypto
c5f1080 a32_emit_x64: BMI2 implementation of A32SetCpsr
a23304a a32_emit_x64: Shorten EmitA32GetCpsr
57604d2 a32_emit_x64: Assert that memory layout assumption in EmitA32GetCpsr is valid
945fa48 A64: Implement PMUL
656a404 ir: Add opcode for performing polynomial multiplication
05143df A64: Implement FCVT{N,M,A,P}{U,S} (vector), FCVTZU (vector, integer), single/double variant
34ce767 A64: Implement FCVTZS (vector, integer), single/double variant
0f9bc2d IR: Implement FPVectorTo{Signed,Unsigned}Fixed
0189e44 fp/info: Replace constant value generators with FPValue
db16568 emit_x64_vector_floating_point: AVX implementation of FPVector{Max,Min}
31148bd emit_x64_vector_floating_point: Remove unnecessary double jump in HandleNaNs
4c3ca51 A64: Implement FMAX's vector single and double precision variants
bf0f21c A64: Implement FMIN's vector single and double precision variants
76f0ca0 IR: Implement FPVector{Max,Min}
6c37c31 FPRecipEstimate: Move offset out of function
59546f3 microinstruction: Update ReadsFromAndWritesToFPSRCumulativeExceptionBits
3f6b03a A64: Implement FRECPS, vector/scalar single/double variants
2d2ca5e IR: Implement FPRecipStepFused, FPVectorRecipStepFused
5cb9f1d A64: Implement FRECPE, vector single/double variant
c5a14ab IR: Implement FPVectorRecipEstimate
56f8a0b A64: Implement FRECPE, scalar single/double variant
fde69b4 IR: Implement FPRecipEstimate
186e52c IR: Implement FPRecipEstimate
cf2e1ae fp: Change FPUnpacked to a normalized representation
2018-07-30 18:23:54 +01:00
MerryMage
abc5b3347d
externals: Update dynarmic to 98e2380
...
98e2380 fuzz_with_unicorn: Disable testing of FDIV
041b7d5 block_of_code: Add ABI_PARAMS array
2a2371c A64: Implement MLA, MLS (by element), vector single/double variant
78c640a A64: Implement FMLS (vector), single/double variant
b6b6993 emit_x64_vector_floating_point: Specify NanHandler::function_type explicitly
4b9d12a emit_x64_vector_floating_point: ChooseOnFsize arguments maybe_unused
b1e3616 IR: Implement FPVectorNeg
4343612 A64: Implement FMLA (vector), single/double variant
93eeb25 IR: Implement FPVectorMulAdd
57e5c7e emit_x64_vector_floating_point: Standardize naming scheme
bcb9e41 emit_x64_floating_point: Simplify indexers
83aa585 emit_x64_vector_floating_point: Simplify EmitVectorOperation*
f4087c8 mp: rename mp.h to mp/function_info.h
1864090 emit_x64_vector: Slightly improve ArithmeticShiftRightByte
e048441 emit_x64_vector: Simplify VectorShuffleImpl
ff025e8 IR: Implement A64OrQC
6fac68d A64: Implement UQSHRN, UQRSHRN (vector)
5a8d9c3 emit_x64_vector: -0x80000000 isn't -0x80000000
759289e A64: Implement UQXTN (vector)
2a96281 emit_x64_vector: Fix non-SSE4.1 saturated narrowing reconstruction comparison
0682353 A64: Implement SQXTN (vector)
6c5229e emit_x64_vector: packusdw reqiures SSE4.1
158d9b1 A64: Implement SQSHRUN, SQRSHRUN (vector)
f886013 simd_shift_by_immediate: Simplify ShiftRight
d9b59c6 A64: Implement SQXTUN
50fe28b microinstruction: Reorganize FPSCR related instruction queries
d9d036a microinstruction: Add missing FP scalar opcodes to ReadsFromFPSCR() and WritesToFPSCR()
db96163 u128: Make Bit() a const-qualified member function
f7052ae A64: Implement FRSQRTS (vector), single/double variant
0925ef6 A64: Implement FRSQRTE (vector), single/double variant
f4cbbe3 A64: Implement FRSQRTS (scalar), single/double variant
4ef864e IR: Implement FPRSqrtStepFused
9dffeeb fp: Implement FPRSqrtStepFused
aa04556 fp: Implement FPNeg
cbde1c5 process_nan: Add two operand variant
1ec2663 A64: Implement FMAXP, FMINP, FMAXNMP and FMINNMP's scalar double/single-precision variant
027ddf9 emit_x64_floating_point: Fixup special NaN case in FMA FPMulAdd implementation
75a9f77 fp: Use a forward declaration in fused.h
1ee1630 u128: Implement comparison operators in terms of one another
3b77f48 tests: Print cpu info
bed3cc0 u128: StickyLogicalShiftRight requires special-casing for amount == 64
15d04f4 A64: Implement FMLA and FMLS (by element)'s double/single-precision scalar variant
7cfccdf A64: Implement FMUL (by element)'s scalar double/single-precision variant
7d2d62e (fpmuladd) emit_x64_floating_point: Implement accurate fallback for FPMulAdd{32,64}
a599eac fp: Implement FPMulAdd
d70b90e process_nan: Add FPProcessNaNs3
38ef0e0 block_of_code: Add SysV ABI fifth and sixth parameters
8e2ff56 u128: Add StickyLogicalShiftRight
3b337df u128: Add Multiply64To128
8219075 u128: Add u128::Bit
a574dcb u128: Add comparison operators
391d6d4 unpacked: Use ResidualErrorOnRightShift in FPRoundBase
5e0cf9c fp: Remove MantissaT
8c0a84c FPRSqrtEstimate: Improve documentation of RecipSqrtEstimate
c41d855 FPRSqrtEstimate: Deduplicate array bounds
4cf055b A64: Implement FMAXV, FMINV, FMAXNMV, and FMINNMV
bf24f0f FPRSqrtEstimate: Use forward declarations where applicable
206230e translate: Return by bool in helpers where applicable
346b725 Simplify fallback case for EmitVectorSetElement64()
2c34e1d emit_x64_floating_point: s/Esimate/Estimate/
5213fb6 simd_scalar_two_register_misc: Implement FRSQRTE, scalar variant
7ed089f IR: Implement FPRSqrtEstimate
cd2e286 simd_vector_x_indexed_element: Implement FMUL (by element), vector variant
2018-07-25 14:26:51 +01:00
MerryMage
7dde4b7a77
externals: Update dynarmic to fc6b73bd
...
Resolves issues:
* 128-bit exclusive writes on Windows
* Non-updating CNTPCT_EL0
fc6b73 a64_emit_x64: Ensure host has updated ticks in EmitA64GetCNTPCT
888c67 a64_emit_x64: Fix stack misalignment on Windows for 128-bit exclusive writes
352d53 emit_x64_aes: Eliminate extraneous usage of a scratch register in EmitAESInverseMixColumns()
ab7fe7 A64: Implement SADDLV
09bd2b A64: Implement UADDLV
62e86d fp: Use forward declarations where applicable
b3edb7 emit_x64_vector: Append 'v' prefix onto movq in AVX path
2018-07-22 16:26:47 +01:00
Lioncash
1519ce7eab
externals: Update dynarmic to 7ea1241
...
Resolves an issue with TPIDR setting being erroneously removed in the
dead code pass.
2018-07-21 13:25:14 -04:00
Lioncash
6a9cd17227
externals: Update glad to version 0.1.25
...
Keeps the OpenGL loader library up to date. Previously we were at
version 0.1.16
2018-07-20 02:00:05 -04:00
bunnei
130a02f330
Merge pull request #708 from lioncash/xbyak
...
externals: Update Xbyak to 5.65
2018-07-19 10:00:06 -07:00
Lioncash
ef03d0178a
externals: Update Xbyak to 5.65
...
Keeps the JIT assembler library up to date and ensures we don't run into
any issues that may have been resolved.
2018-07-19 08:38:07 -04:00
Lioncash
25f997097d
externals: Update catch to v2.2.3
...
Keeps the unit-testing library up to date.
2018-07-19 08:33:06 -04:00
bunnei
cd4fca8447
Merge pull request #700 from bunnei/update-dynarmic
...
externals: Update dynarmic to 5a91c94.
2018-07-18 22:01:39 -07:00
bunnei
522bd5b736
externals: Update dynarmic to 5a91c94.
2018-07-18 23:14:44 -04:00
Lioncash
f5d7706ca1
externals: update fmt to version 5.1.0
...
Previously, we were on 4.1.0, which was a major version behind.
2018-07-18 17:46:17 -04:00
Lioncash
0722adb471
externals: Update dynarmic to dfdec79
2018-07-15 16:11:45 -04:00
bunnei
afb26b190f
Merge pull request #585 from janisozaur/patch-11
...
Improve directory creation in WindowsCopyFiles.cmake
2018-07-11 20:21:17 -07:00
Lioncash
650c89bbbc
externals: Update dynarmic to f7d11baa1
2018-07-06 20:54:04 -04:00
Michał Janiszewski
23dc36ed71
Improve directory creation in WindowsCopyFiles.cmake
2018-06-24 21:27:00 +02:00
bunnei
0b831dd2ba
Revert "Use Ninja for MSVC AppVeyor builds" ( #584 )
2018-06-23 03:17:32 -04:00
Michał Janiszewski
5c3d5d0849
Use Ninja for MSVC AppVeyor builds
2018-06-05 22:46:54 +02:00
Lioncash
74efdd6928
externals: Update dynarmic
...
Updates dynarmic to revision 990a569b7a5f2518fe08682f5ebf8536e5388d66
2018-05-23 15:26:23 -04:00
Lioncash
e56e2a1528
externals: Update dynarmic
...
Just a basic update to keep it in sync
2018-04-28 14:31:37 -04:00
Lioncash
b2febaff2f
externals: Update dynarmic to HEAD
2018-04-20 09:02:18 -04:00
James Rowe
f9945f8a3b
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
c9845c486e
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
57eca6374a
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
78a81614ee
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
a1cf5020e6
externals: Update Glad to latest version used by Citra.
2018-03-19 23:14:01 -04:00
MerryMage
32d127ad3e
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
bd6432f1ff
updated dynarmic
2018-02-17 14:57:32 -04:00
MerryMage
6085d32cf5
arm_dynarmic: Support direct page table access
2018-02-12 21:53:32 +00:00
MerryMage
45e5a67676
dynarmic: Fix bug due to Windows ABI mismatch
2018-02-09 16:05:28 +00:00
MerryMage
d3bbed5e78
dynarmic: Update to 41ae12263
...
Changes: Primarily implementing more A64 instructions
2018-02-09 00:29:36 +00:00
Lioncash
090da0b5c1
externals: Update catch to v2.1.1
2018-01-27 15:42:56 -05:00
MerryMage
e7cb20fbf0
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 (#126 )
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
be0e14ab3e
Merge pull request #84 from lioncash/cmake
...
CMakeLists: Derive the source directory grouping from targets themselves
2018-01-18 01:37:17 -05:00
Lioncash
e710a1b989
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
2b3ee30a46
externals: Update catch to 2.1.0
2018-01-17 18:40:08 -05:00
James Rowe
e026b66bbb
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
af6e0faf0a
Fix some warnings
2018-01-15 16:24:29 +01:00
Andrix44
b20dfb357b
Fix some warnings in the microprofile
2018-01-15 00:08:03 +01:00
bunnei
feae1c4c32
externals: Remove unused repos.
2018-01-14 04:29:30 -05:00
MerryMage
668e5452fa
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
ebf9a784a9
Massive removal of unused modules
2018-01-12 19:11:03 -07:00
bunnei
287485e3a7
boost: Update version.
2018-01-12 19:37:04 -05:00
bunnei
8e51c61dbc
core: Gut out cryptop, since it doesn't compile with C++17.
2018-01-12 19:36:41 -05:00
MerryMage
106d900f93
dynarmic: Update to 83afe435
2018-01-12 17:49:10 -05:00
MerryMage
d2fbc78320
arm_dynarmic: Implement core
2018-01-12 17:48:29 -05:00
MerryMage
f10a304ecd
fix macos build
2018-01-08 19:20:10 -05:00
bunnei
da7053b169
cmake: Add script to find Unicorn.
2018-01-04 19:52:54 -05:00
bunnei
dcfbad2129
cmake: Don't compile Dynarmic as it's unused.
2018-01-04 17:01:02 -05:00
bunnei
d327f66990
externals: Point dynarmic at a real commit.
2018-01-03 21:51:41 -05:00
bunnei
3e80202604
externals: Update dynarmic and xbyak.
2017-10-25 11:26:35 -04:00
bunnei
b1d5db1cf6
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
9eb4888df7
externals: Add lz4.
2017-09-30 14:30:04 -04:00
James Rowe
9e847b7549
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
056a08cdbf
externals: Update soundtouch
2017-08-20 17:30:05 -07:00
James
1a44949ef7
Update cryptopp
2017-08-08 17:50:09 +10:00
James
32745ead7e
Add description of upstream repo
2017-07-18 19:59:08 +10:00
James
87dea94e14
Don't pull in entire JSON repo for single header file
2017-07-18 13:37:27 +10:00
Weiyi Wang
5137a198f9
Merge pull request #2824 from jroweboy/mingw_compile_test
...
Update enet submodule
2017-07-13 09:57:35 +03:00
James Rowe
5990cae193
Update enet submodule
...
This includes a fix merged upstream to support mingw compilation
2017-07-12 20:39:47 -06:00
bunnei
33b012e86b
web_service: Add CMake flag to enable.
2017-07-11 18:33:41 -04:00
bunnei
0f1ae781d0
externals: Add JSON as a submodule.
2017-07-09 18:38:02 -04:00
bunnei
cc7583e036
externals: Add CPR as a submodule.
2017-07-09 13:24:20 -04:00
B3n30
2e37ce01c9
Implement basic virtual Room support based on enet ( #2803 )
...
* 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
d1e414d813
externals: silence warning C4390 on MSVC for cryptopp ( #2805 )
2017-06-24 17:38:52 -07:00
Yuri Kunde Schlesner
f6715f98f5
Stop using reserved operator names (and/or/xor) with Xbyak
...
Also has the Dynarmic upgrade with the same change
2017-06-17 12:20:22 -07:00
Yuri Kunde Schlesner
60d70c4f43
Externals: Upgrade bundled Boost to 1.64
2017-06-11 13:10:22 -07:00
Yuri Kunde Schlesner
c211368734
CMake: Move definitions of externals to the CMakeLists in that directory
2017-05-27 23:33:14 -07:00
Yuri Kunde Schlesner
cebdae6c92
CMake: Create an INTERFACE target for Catch
2017-05-27 22:46:59 -07:00
Yuri Kunde Schlesner
4f84372bc2
CMake: Add cryptopp include path to target property
2017-05-27 22:16:57 -07:00
Yuri Kunde Schlesner
cb49df156d
CMake: Use target properties to add inih include paths
2017-05-27 21:59:02 -07:00
Yuri Kunde Schlesner
089baa04e8
CMake: Stop using FindOpenGL, which seems to not be required anymore
2017-05-27 20:48:00 -07:00
Yuri Kunde Schlesner
a06220682c
Add the fmt string formatting library
...
More info at http://fmtlib.net/
This commit was based on @jroweboy's work on his spdlog branch, but with
modifications.
2017-05-27 14:26:02 -07:00
Yuri Kunde Schlesner
4e88458814
Update dynarmic
...
Updated to incorporate fix from MerryMage/dynarmic#106 which is required
for using fmt in Citra.
2017-05-27 14:26:02 -07:00
Lioncash
e74ada0a73
externals: Update catch to 1.9.4
2017-05-21 19:29:21 -04:00
Yuri Kunde Schlesner
24e0b1ed8d
externals: Update to boost v1.63.0
2017-03-12 22:16:27 -07:00
wwylele
261250e3d9
externals: remove -march=native for crypto++
2017-02-21 23:57:31 +02:00
wwylele
ea1ea0224c
HW: add AES engine & implement AES-CCM
2017-02-21 23:57:31 +02:00
Weiyi Wang
dbc94efdb5
Core: add cryptopp library ( #2412 )
2017-02-13 12:03:55 -08:00
Kloen
e14dcd0789
externals: nihstro, update to latest master
2017-02-06 12:00:45 +01:00
Fernando Sahmkow
d8af401b2c
Fix Microprofile in MinGW ( #2530 )
2017-02-04 15:36:38 -08:00
noah the goodra
2509c44078
changed the WIN32 macro in microprofileui ( #2528 )
...
I changed the macro in microprofileui.h from WIN32 to _WIN32 so that it
would correctly dectect that its being compiled on a windows platform
2017-02-04 12:17:52 -08:00
MerryMage
e2815408fd
arm_dynarmic: Update memory interface
2017-02-03 17:32:51 +00:00
MerryMage
2b36d4c9d7
arm_dynarmic: CP15 support
2017-02-03 17:32:47 +00:00
Kloen
3597687453
externals: Updated nihstro to latest master. Fix warning on MSVC
2017-01-28 14:30:50 +01:00
Kloen
abc5c134a3
Removed unused and outdated external qhexedit
2017-01-22 18:46:48 +01:00
MerryMage
f8cf87ce34
arm_dynarmic: Provide MemoryReadCode callback
...
Change of interface in dynarmic 36082087ded632079b16d24137fdd0c450ce82ea
2016-12-22 16:07:14 +00:00
Yuri Kunde Schlesner
17fccb8c5d
Externals: Add Xbyak
2016-12-14 20:06:08 -08:00
Yuri Kunde Schlesner
16df1f8078
externals: Update Dynarmic
...
Required to be able to use Xbyak in Citra without header conflicts.
2016-12-14 20:06:08 -08:00
Subv
a088ebe903
Dynarmic: Update dynarmic to version
...
54d051977f7a6af9c7596ba6a4e6eb467bd1e0bc
dynarmic log:
54d0519 emit_x64: Use movdqa instead of movaps in EmitPackedSubU8
52e1445 Implement USUB8:33 2016 +0000
5c1aab1 Implement CLZ
1a1646d Implement UADD8
7cad694 IR: Implement new pseudo-operation GetGEFromOp
370f654 fuzz_arm: Add tests for parallel add/subtract (modulo)
25f21b5 emit_x64: Inline nzcv computation into EmitFPCompare32 and EmitFPCompare64
52fdec5 CMakeLists: Add support for LLVM on Windows
cede5e4 emit_x64: Use xorps/xorpd when argument to TransferToFP32/TransferToFP64 is an immediate zero
e166965 Implement VCMP2:33 2016 +0000
f2fe376 Support 64-bit immediates
ff00b8c Document register allocator and return stack buffer optimization
95f34c6 reg_alloc: Remove unnecessary breaks after returns (#54 )
dc9707e externals: Update xbyak to 5.32
de1f831 microinstruction: Make use_count private (#53 )
3621a92 reg_alloc: Register allocator related constraints belong with the rest of the register allocator
2016-12-04 21:40:12 -05:00
MerryMage
c46b3dec63
dynarmic: Fix ABI violation
...
Caused by not saving/restoring the x64 r15 register on entry/exit from
JITted code.
Closes #2224 .
2016-11-30 19:12:46 +00:00
James Rowe
f32309400c
Update dynarmic to the latest version ( #2234 )
2016-11-29 23:22:19 -05:00
James Rowe
c3ea6f4ddb
Add mingw compile support
2016-11-13 23:50:46 -07:00
Jan Beich
50ce19b3ff
microprofile: unbreak on POSIX systems
...
In file included from src/common/microprofile.cpp:7:
In file included from src/./common/microprofile.h:23:
externals/microprofile/microprofile.h:830:5: error: use of undeclared identifier 'MP_BREAK'
MP_ASSERT(t == nBegin);
^
externals/microprofile/microprofile.h:238:34: note: expanded from macro 'MP_ASSERT'
^
externals/microprofile/microprofile.h:831:5: error: use of undeclared identifier 'MP_BREAK'
MP_ASSERT(nTimerIndex == (nToken&0x3fff));
^
externals/microprofile/microprofile.h:238:34: note: expanded from macro 'MP_ASSERT'
^
[...]
2016-10-27 23:28:30 +00:00
bunnei
1ea1affe0a
dynarmic: Add new submodule.
2016-09-15 17:49:25 -04:00
bunnei
dba91b2ecf
externals/boost: Use latest upstream with variant.
2016-09-15 17:49:20 -04:00
Lectem
c7125f37aa
Fixes SDL2.dll copy to bindir on windows
2016-07-21 10:28:52 +02:00
MerryMage
a03f9b6fb6
tests: Infrastructure for unit tests
2016-05-19 08:38:03 +01:00
MerryMage
27ce3b3f51
Externals: Add soundtouch
2016-04-28 13:33:14 +01:00
Sam Spilsbury
fdd7e9e86a
microprofileui: Use correct printf specifier
2016-04-23 11:53:55 +08:00
Sam Spilsbury
aacc3a4a59
microprofile: Use std::abs
...
Using the global-namespace C function will cause the wrong
overload to get picked
2016-04-23 11:48:58 +08:00
tfarley
15b44fb380
Update to ext-boost with interval_map
2016-04-21 17:27:46 -04:00
bunnei
0a1c73e396
Merge pull request #1517 from Lectem/fixSDLcmake
...
fix SDL2 detection for Visual
2016-03-23 13:35:16 -04:00
Jannik Vogel
0cdf8ff102
Update nihstro to latest master
2016-03-15 20:01:25 +01:00
Lectem
c8f8e70d31
fix SDL2 detection for Visual
2016-03-14 17:02:08 -04:00
bunnei
cf414db710
externals: Remove unused GLFW library from the repo.
2016-03-03 23:30:52 -05:00
MerryMage
ba2a54a9dd
Dependencies: Remove GLFW, Add SDL2
...
citra: Remove GLFW, Add SDL2
FindSDL2: Do not CACHE SDL2_* variables if library is not found
EmuWindow_SDL2: Set minimal client area at initialisation time
EmuWindow_SDL2: Corrections
EmuWindow_SDL2: Fix no decorations on startup on OS X
cmake: windows_copy_files
2016-03-02 14:09:02 +00:00
Emmanuel Gil Peyrot
2e8a7a7a08
Externals: Regenerate GLAD with GL_KHR_debug support.
2015-10-17 17:09:07 +01:00
Yuri Kunde Schlesner
d8311e8365
CMake: Add missing library required by Linux for compiling glad
2015-09-06 19:45:46 -03:00
Yuri Kunde Schlesner
a1a5570e97
Replace the previous OpenGL loader with a glad-generated 3.3 one
...
The main advantage of switching to glad from glLoadGen is that, apart
from being actively maintained, it supports a customizable entrypoint
loader function, which makes it possible to also support OpenGL ES.
2015-08-30 08:45:56 -03:00
Yuri Kunde Schlesner
0fcabd2b11
Integrate the MicroProfile profiling library
...
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
2015-08-24 22:16:28 -03:00
Yuri Kunde Schlesner
3007d0c651
Update boost external to v1.59.0
2015-08-16 21:20:48 -03:00
bunnei
094ae6fadb
Shader: Initial implementation of x86_x64 JIT compiler for Pica vertex shaders.
...
- Config: Add an option for selecting to use shader JIT or interpreter.
- Qt: Add a menu option for enabling/disabling the shader JIT.
2015-08-15 18:01:07 -04:00
Yuri Kunde Schlesner
a25d1814d5
Update nihstro to latest master
2015-07-26 07:12:28 -03:00
Yuri Kunde Schlesner
5161699452
getopt: Fix macro redefinition warning
...
We already define _CRT_SECURE_NO_WARNINGS
2015-07-13 19:47:08 -03:00
Yuri Kunde Schlesner
1bf030f4af
getopt: Fix compilation settings
...
INTERFACE doesn't define the symbol when compiling the library itself.
PUBLIC should be used when the definition is needed both by the library
and by the users.
2015-07-13 19:47:04 -03:00
Greg Wicks
9930ef72dd
Implement new argument parsing using getopt and add the corresponding library to externals
2015-07-12 15:49:23 -04:00
Yuri Kunde Schlesner
33c57361a9
Update bundled GLFW to 3.1.1
...
It may be necessary to fix the CMake paths manually for an exsting CMake
cache after this change.
2015-05-25 00:42:21 -03:00
bunnei
f935130a0f
vertex_shader: Implement MADI instruction.
...
nihstro: Update submodule to latest upstream/master to support MADI instruction decoding.
2015-05-09 22:12:34 -04:00
archshift
7d43aef4d0
Update nihstro submodule to the initial release version.
...
Includes more opcodes to implement in the future.
2015-03-08 13:52:38 -07:00
Yuri Kunde Schlesner
bf30dba6c2
Update ext-boost commit again which got reverted by #500
2015-02-12 12:14:14 -02:00
archshift
ef24e72b26
Asserts: break/crash program, fit to style guide; log.h->assert.h
...
Involves making asserts use printf instead of the log functions (log functions are asynchronous and, as such, the log won't be printed in time)
As such, the log type argument was removed (printf obviously can't use it, and it's made obsolete by the file and line printing)
Also removed some GEKKO cruft.
2015-02-10 18:30:31 -08:00
Yuri Kunde Schlesner
12232e0b08
Update boost external
2015-02-02 15:37:06 -02:00
Tony Wasserka
2b9a9a45b7
Pica/VertexShader: Implement JMPC/JMPU/CALLC/CALLU.
2015-01-12 15:47:21 -08:00
Yuri Kunde Schlesner
8ad41775cc
Kernel: Start using boost::intrusive_ptr for lifetime management
2015-01-09 19:43:52 -02:00
Yuri Kunde Schlesner
a320d1a5b4
Clipper: Avoid dynamic allocations
...
The triangle clipper was allocating its temporary input, output and work
buffers using a std::vector. Since this is a hot path, it's desirable to
use stack allocation instead.
2014-12-29 02:08:09 -02:00
Tony Wasserka
056a8f9dfa
Add nihstro (a 3DS shader tools suite) as a submodule.
2014-12-20 18:06:55 +01:00
Tony Wasserka
2db294306f
externals: Add boost submodule.
2014-12-07 23:52:04 +01:00
archshift
e6594f9f53
Added configuration file system.
...
Uses QSettings on citra-qt, and inih on citra-cli.
2014-10-07 15:09:37 -07:00
Yuri Kunde Schlesner
45976da975
CMake cleanup
...
Several cleanups to the buildsystem:
- Do better factoring of common libs between platforms.
- Add support to building on Windows.
- Remove Qt4 support.
- Re-sort file lists and add missing headers.
2014-09-01 18:06:30 -03:00
Yuri Kunde Schlesner
523385955c
Update GLFW to 3.0.4 and include x64 lib for MSVC
2014-09-01 17:41:56 -03:00
Yuri Kunde Schlesner
478289140d
Replace GLEW with a glLoadGen loader.
...
This should fix the GL loading errors that occur in some drivers due to
the use of deprecated functions by GLEW. Side benefits are more accurate
auto-completion (deprecated function and symbols don't exist) and faster
pointer loading (less entrypoints to load). In addition it removes an
external library depency, simplifying the build system a bit and
eliminating one set of binary libraries for Windows.
2014-09-01 17:41:56 -03:00
Yuri Kunde Schlesner
04d53629db
Remove documentation for external modules.
...
We don't need these and they clutter up the repository.
2014-08-23 11:48:58 -03:00
Sacha
90f23020f5
Add Qt5 option. Use Qt5 by default.
2014-08-19 21:34:00 +10:00
Sacha
b7ecc9543a
CMake Cleanup
2014-08-18 14:35:44 +10:00
archshift
71b8789803
Indent fixes
2014-05-19 13:51:59 -07:00
archshift
1e729e7cae
Added FindGLEW to cmake-modules
2014-05-16 23:03:10 -07:00
bunnei
80a040ac77
fixes to scm_rev generation to make it conistent with windows build
2014-04-23 19:13:00 -07:00
bunnei
4405a53cf3
added scm rev generation on Linux/cmake
2014-04-23 18:43:57 -07:00
ShizZy
27474060e1
adding initial project layout
2013-08-29 23:35:09 -04:00