Commit Graph

368 Commits

Author SHA1 Message Date
Henrik Rydgård
73871b9b7e Implement new thread manager, port stuff to it. 2021-06-12 13:03:53 +02:00
Unknown W. Brackets
39f479025e Io: Correct CreateFullPath() on Linux.
Fixes #14519.
2021-06-09 23:09:04 -07:00
Henrik Rydgård
dba0a6ba12 Rewrite CreateFullPath to be agnostic of path format. 2021-06-07 00:24:52 +02:00
Henrik Rydgård
5e3019073c Android content URI support in Path. 2021-06-07 00:24:51 +02:00
Henrik Rydgård
1f018d33c5 Start work on supporting Android Content URIs in the FileUtil API.
Add tentative Android Content URI support to much of FileUtil.h.

Buildfix

Fix some issues with the file browser in storage URIs.
2021-06-07 00:24:51 +02:00
Henrik Rydgård
e3cf04bb34 Implement file filters for Android in PathBrowser
asdf

Move Android file listing parsing logic into app-android.cpp.

Add utility for parsing/writing Android Content Storage URIs.

Fix some bugs. Allow upwards navigation in file browser from directories downstream from tree URIs.
2021-06-07 00:24:51 +02:00
Henrik Rydgård
8727679353 Clean up PathBrowser a bit
Fix UWP build

Fix booting homebrew.

Qt buildfix
2021-05-13 10:39:16 +02:00
Henrik Rydgård
2e16e83159 It never ends... 2021-05-13 10:39:16 +02:00
Henrik Rydgård
ae06499a0c Change Copy, Rename to use Path. Remove std::string version of Exists().
Buildfixes

Buildfix
2021-05-13 10:39:16 +02:00
Henrik Rydgård
025bcb1673 Introduce Path, start using it all over the place.
Still lots left to convert!

Convert GetSysDirectory to return Path.

More buildfixing

Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
07cb37c2c1 Compat: Remove single/double sincos path.
New implementation should work for both cases.
2021-04-25 07:09:50 -07:00
Unknown W. Brackets
86585e9551 unittest: Fix jit harness init. 2021-04-24 15:48:17 -07:00
Unknown W. Brackets
744d17e13c Core: Correct ValidSize outside scratchpad.
And simplify all the scratchpad valid checks.
2021-04-21 19:32:22 -07:00
Unknown W. Brackets
d3e2aa6d28 Build: Add libzstd to build. 2021-04-11 09:13:10 -07:00
Unknown W. Brackets
bab9581901 Core: Unbreak ValidSize limits.
Broken in bdd2029.
2021-03-28 19:42:29 -07:00
Henrik Rydgård
5802529daa UTF-8 PPGe: Remove overlong encodings. Work around a weird issue in Ratchet & Clank. See issue #14297 2021-03-20 13:38:13 +01:00
Unknown W. Brackets
cae0815095 jit: Avoid using mips identifier directly.
Apparently this gets defined on mips systems.
2021-02-26 07:24:58 -08:00
Henrik Rydgård
bd7b283399 Add iOS version detection, turn off JIT on bootup if >= 14.3. 2021-02-22 09:16:51 +01:00
Sean McGovern
9a318673a7 UnitTest: call InitVFPUSinCos() to set vfpu_* function pointers 2021-02-21 12:59:17 -05:00
Unknown W. Brackets
e7a3faaa8c Windows: Stop ignoring all deprecated warnings. 2021-02-18 08:56:36 -08:00
Sean McGovern
e9dbc925ea TestVertexJit: fmodf() definition requires math.h 2021-02-17 22:25:26 -05:00
Sean McGovern
4fa9973936 UnitTest: test that the function pointer for vfpu_sincos() is non-null 2021-02-17 16:41:28 -05:00
Unknown W. Brackets
e2efc245db Android: Fix headless and unittest build. 2021-01-10 12:16:02 -08:00
Henrik Rydgård
1c753e4a22 Use hacky methods to retrieve SD card directory if available.
This will disappear in future Android versions but can be useful for
older devices.

Fixes (or at least tries to) #10199, at least for some devices.

Might help #13827 ?

Tested on Pocophone F1.
2021-01-07 00:55:35 +01:00
Henrik Rydgård
7de7680416 Apple driver bug workaround. See issue #13451 2020-12-16 14:39:08 +01:00
Henrik Rydgård
e77a9d7368 Reorganize the end of the fragment shader generator.
Thanks unknown.
2020-11-09 11:19:02 +01:00
Henrik Rydgård
6310af25fa Get shader color write masking going on all backends. 2020-11-08 23:45:47 +01:00
Henrik Rydgård
f2e315b9a6 More shadergen work
Buildfix
2020-11-08 11:32:53 +01:00
Henrik Rydgård
19b4febbbf More reinterpret shader gen and test work.
More work on reinterpret

Buildsystem fixes
2020-11-08 10:41:20 +01:00
Henrik Rydgård
03e8eac6ef Merge the two ShaderLanguage enums. 2020-11-04 09:40:11 +01:00
Henrik Rydgård
f4ea3ccf22 Move the generic vertex shader generator into GPU/Common and rename it. 2020-11-01 19:58:54 +01:00
Henrik Rydgård
be837912e1 Delete the HLSL shader generator, switch to the newly generic one. 2020-11-01 19:58:54 +01:00
Henrik Rydgård
ba7c2e856b Fix through mode differences 2020-11-01 19:58:50 +01:00
Henrik Rydgård
8efb40180e Make the hardware skinning code match 2020-11-01 19:58:50 +01:00
Henrik Rydgård
fbb7f72eec Vertex shader merge work 2020-11-01 19:58:45 +01:00
Henrik Rydgård
0b1b36921e Move the now-renamed fragment shader generator to GPU/Common. 2020-10-31 19:03:14 +01:00
Henrik Rydgård
3d0630c04a Remove the HLSL fragment shader generator. The GLSL one can now do its job. 2020-10-31 18:32:43 +01:00
Henrik Rydgård
b7d674411e Test parsing of generated OpenGL shaders too (by using glslang). 2020-10-31 18:32:43 +01:00
Henrik Rydgård
c2a6090c3f More D3D9 fixes. 2020-10-31 18:32:43 +01:00
Henrik Rydgård
af4d6e7642 Set up the test for D3D9, start fixing stuff. 2020-10-31 18:32:43 +01:00
Henrik Rydgård
b070ed45e9 Evolve the HLSL and GLSL fragment shader generators even closer together. 2020-10-31 18:32:42 +01:00
Henrik Rydgård
984a4d2641 Start adding HLSL support to the GLSL shader generator. 2020-10-31 18:32:42 +01:00
Henrik Rydgård
200c25bcc9 wip 2020-10-31 18:32:42 +01:00
Henrik Rydgård
2977c56a12 Complete the vertex shader merge, deleting the Vulkan-specific vertex shader generator. 2020-10-25 08:34:35 +01:00
Henrik Rydgård
fb2ac3a67e Additional fixes 2020-10-25 08:34:35 +01:00
Henrik Rydgård
6055350a2c Initial work on fixing tess 2020-10-25 08:34:35 +01:00
Henrik Rydgård
057fd9f8a3 Bridge more vertex shader differences 2020-10-25 08:34:35 +01:00
Henrik Rydgård
22b26ffc09 Time for the vertex shaders. Set up a test, start eliminating differences. 2020-10-25 08:34:35 +01:00
Henrik Rydgård
020fb55a65 Completes the merge, deleting the Vulkan-specific fragment shader generator. 2020-10-23 10:03:44 +02:00
Henrik Rydgård
aea4635d60 Fix minute differences between the shader generators found by the new tester 2020-10-23 10:03:44 +02:00
Henrik Rydgård
ef18938aa0 Hack up a test comparing Vulkan fragment haders generated by the GL GLSL generator to the ones generated by the Vulkan generator. 2020-10-23 10:03:44 +02:00
Henrik Rydgård
3d36049b65 Rename shader generator functions, a bit of moving around and adding an errorString param. 2020-10-21 23:20:25 +02:00
Henrik Rydgård
c6f51bbc1e Add brute force shader generator tester. Tests D3D11 and Vulkan shaders.
Found a potential error with tesselation without normals already.
2020-10-21 23:20:15 +02:00
Henrik Rydgård
16654d37ea VFPU: Compute sines and cosines in double precision.
Let's see if we can do without the special checks in double precision.
2020-10-10 17:45:42 +02:00
Henrik Rydgård
4310e35714 Windows: Remove the native project. 2020-10-05 06:56:10 +02:00
Henrik Rydgård
f01ba6dc84 Move NativeApp.h to Common/System, split into NativeApp.h and System.h
Buildfix
2020-10-04 11:42:16 +02:00
Henrik Rydgård
ff8148dd92 Move native/util, native/data and native/i18 to Common/Data.
Also move colorutil.cpp/h

linking build fix experiment

Delete a bunch of unused CMakeLists.txt files

CMakeLists.txt linking fix

Don't include NativeApp.h from any headers.

Android.mk buildfix

Half of the UWP fix

Buildfix

Minor project file cleanup

Buildfixes

Guess what? More buildfixes!
2020-10-04 07:28:29 +02:00
Henrik Rydgård
342ed97291 Move input utilities from native to Common/Input. 2020-10-01 09:42:32 +02:00
Henrik Rydgård
054acf768c Don't cache time in a variable.
A little weirdness in the code that has stuck around for a long, long
time. It's really not necessary and mostly just confusing.
2020-09-24 23:52:43 +02:00
Unknown W. Brackets
6b8f7294b3 Global: Remove ARM64 define.
Was barely used anymore, and some users are specifying it when it's not
the case, so better to detect consistently.
2020-08-29 08:45:50 -07:00
Unknown W. Brackets
3b0f7e109d unittest: Fix build on Android. 2020-08-27 20:01:37 -07:00
Henrik Rydgård
ccc0331279 Move timeutil to Common. (Experiment to see how much work it is to move these). 2020-08-15 20:53:08 +02:00
Henrik Rydgård
80e0f85332 Getting really close to getting rid of base/logging.h now.
Qt buildfix
2020-08-15 19:09:01 +02:00
Unknown W. Brackets
7910b4029a arm64jit: Track writable and non-writable pointers.
Switch uses different memory regions.  We can handle this, might as well
cleanup some const abuse.
2020-05-17 00:15:12 -07:00
Florin9doi
7c92b1abda update VS projects 2020-04-19 09:19:13 +03:00
Unknown W. Brackets
efceb031ce UI: Make System_InputBox API asynchronous.
Doing this as a precursor to cleaning up the Android madness.
2020-03-08 18:59:17 -07:00
李通洲
55bb58e13e
NativeApp: add System_GetPropertyFloat all the places 2020-02-04 09:20:34 +08:00
shenweip
9becb4b72b BuildFix2 2020-01-14 18:12:28 +08:00
Unknown W. Brackets
bdd2029623 Core: Fix memory range guard check.
Was allowing sizes with the high bits set, which could cause all kinds of
weird issues and crashes.
2019-09-28 08:40:41 -07:00
Unknown W. Brackets
c3ae97e237 Travis: Build Windows on Travis too. 2019-07-06 14:56:29 -07:00
Henrik Rydgård
30831f3ea1 Implement and test clz32, use it in the MIPS interpreter cores.
This will be useful for our vfpu-dot implementations later.
2019-06-14 18:39:15 +02:00
Unknown W. Brackets
eff793cb7b Fix spurious unit test failure. 2019-05-26 07:33:41 -07:00
Henrik Rydgård
efa1406d8f VS2017: Add hack to automatically select the newest installed Windows 10 SDK. VS2019 already does this by default if you specify 10.0.
Should hopefully fix the buildbot.
2019-05-19 15:23:25 +02:00
Henrik Rydgård
20d666ff55 Remove DbgNew.h forced include in ARM debug builds, doesn't work for some reason. 2019-05-10 23:18:31 +02:00
Henrik Rydgård
1f40aa4828 Add WindowsSDKDesktopARM64Support to vcxproj files 2019-05-10 22:44:12 +02:00
Henrik Rydgård
c3fab33354 Revert "Remove default SDK version from project files"
Seems to have been the wrong thing to do, see:
https://developercommunity.visualstudio.com/content/problem/140294/windowstargetplatformversion-makes-it-impossible-t.html

Though due to the bug described there, there's no perfect solution, just
some ugly ones (which I might try later). Anyway, I guess most people
will move on to VS 2019 anyway..

This reverts commit 056494522e.
2019-05-09 23:58:23 +02:00
driver1998
87f43d51ef Fix UnixTests and HeadlessHost on ARM 2019-05-04 23:56:55 +08:00
driver1998
763b85d723 Update Visual Studio project files for Windows ARM32/ARM64 2019-05-04 22:45:15 +08:00
LunaMoo
056494522e Remove default SDK version from project files 2019-04-27 23:01:41 +02:00
LunaMoo
280f7fec39 Fix VS2019 builds and remove _xp dependency
(drops Win XP support, allows latest SDK etc.)
2019-04-25 23:56:55 +02:00
xebra
070e29d921 Disable "Edit & Continue" with VS debug mode. 2018-12-07 13:01:16 +09:00
Henrik Rydgård
6f173b9134 Harmonize some VS project settings. 2018-08-14 22:41:39 +02:00
Unknown W. Brackets
b4496f1975 Core: Move config enums to separate file.
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Henrik Rydgård
36fd2711d6 Revert "Remove further remains of hardware skinning."
This reverts commit 40db61a680.
2018-04-10 12:22:41 +02:00
Unknown W. Brackets
2f26fdff27 TexCache: unit test the quick tex hash.
Just a few sample cases to make sure it's behaving correctly.
2018-03-25 18:52:16 -07:00
Henrik Rydgård
40db61a680 Remove further remains of hardware skinning. Fixes #10661 2018-03-05 00:03:47 +01:00
Unknown W. Brackets
6b3944d329 UnitTest: Correct vertex and jit tests.
We now convert texcoords to floats.
2017-05-06 18:45:04 -07:00
Unknown W. Brackets
3b4103cb3b System: Use a separate API for bool props.
This simplifies defaulting, instead of -1 being "true".
2017-04-29 17:35:12 -07:00
Henrik Rydgard
cf365bb257 Minor cleanup with GOLD define - only use it in System_GetPropertyInt 2017-04-05 16:21:08 +02:00
LunaMoo
4a2677e0c6 Revert unintentional change from: 429bf5d8b3 2017-03-23 11:54:54 +01:00
Henrik Rydgård
e17772b58d Merge pull request #9430 from unknownbrackets/input-state
Remove legacy InputState tracking
2017-03-15 10:16:14 +01:00
Unknown W. Brackets
9e390510df Remove legacy InputState. 2017-03-14 22:07:07 -07:00
LunaMoo
429bf5d8b3 Use $(DefaultPlatformToolset)_xp for easier VS builds with different toolsets. 2017-03-13 21:40:08 +01:00
Henrik Rydgard
b9b3a022fb Switch another enum to enum class 2017-03-02 12:36:54 +01:00
Henrik Rydgard
a1ec735f6c ARM64Emitter: Implement instructions to move data to/from SP 2017-01-26 14:23:42 +01:00
Florent Castelli
6852c602b9 glew: Move to ext 2016-12-18 21:13:45 +01:00
Unknown W. Brackets
419b960403 x86jit: Fix params in Replace_fabsf. 2016-05-31 10:40:14 -07:00
Unknown W. Brackets
afdd01571c Uncouple savestates from NativeApp some.
Still have osm.
2016-05-27 20:41:37 -07:00
Unknown W. Brackets
2353cf6e85 Delete no longer needed linkage hacks. 2016-05-27 20:25:10 -07:00
Unknown W. Brackets
95d912c378 Get rid of the input_state global linkage. 2016-05-27 20:24:01 -07:00
Henrik Rydgard
ce8aae5ed1 Make the IRJit core selectable in developer tools 2016-05-08 01:43:27 +02:00
Henrik Rydgard
ffe4c266ef Add CodeBlockCommon base class to remove further arch-specificity in JitBlockCache
Remove unused ArmThunk.
2016-05-01 11:40:00 +02:00
Henrik Rydgard
8b450c8034 Merge NativeJit.cpp/h with JitCommon.cpp/h 2016-05-01 11:39:59 +02:00
Henrik Rydgard
a5be0976bd Remove preprocessor hacks to choose JIT implementation.
Opens up for having multiple JIT implementations available at runtime,
which could be use for experimenting with new JIT compiler types or for
unit testing one JIT on another architecture.

Very few of the newly virtual calls are on any sort of critical path so
hopefully there will not be a performance loss.
2016-05-01 11:39:53 +02:00
Henrik Rydgard
b7b0b59e9a Update Vulkan headers to 1.0.5. Remove references to vulkan-1.lib as we load dynamically. 2016-03-20 19:31:02 +01:00
Henrik Rydgard
cfbecf5071 More progress 2016-03-20 19:26:41 +01:00
Henrik Rydgard
4ddca8607f Further vulkan stuff 2016-03-20 19:26:12 +01:00
Henrik Rydgard
2a449f78bb More vulkan fixing 2016-03-20 19:25:30 +01:00
Henrik Rydgard
c64064024d Initial vulkan code.
This was squashed from nine commits but using old versions of Vulkan.
2016-03-20 19:18:35 +01:00
Henrik Rydgard
35b6c7341b Fix a bunch of memory leaks, after enabling file+line-number memory leak tracking for the MS Debug CRT.
Few of these were serious, most were on-exit, but good to have a cleaner memory report after running.
2016-02-10 15:36:10 +01:00
Unknown W. Brackets
055aa0c881 Fix non-Windows unittest linking issue.
Fixes #8375.
2016-01-03 12:31:14 -08:00
Henrik Rydgard
3398288bd0 Some cleanup around input_state 2016-01-01 14:40:18 +01:00
Henrik Rydgard
15de6e6b98 GraphicsContext: Abstract away things like swapbuffers etc before adding even more backends.
Needed to prevent clutter all over the codebase.

Does not go all the way yet, goal would be a common render loop between platforms but not there yet.
2016-01-01 14:40:16 +01:00
Henrik Rydgard
732b1239e7 Add some permission infrastructure, add an ugly button that asks you to grant STORAGE permission if necessary. 2015-12-17 22:41:50 +01:00
latot
afeb012d04 Add missing include files to unittest 2015-10-24 13:24:05 -03:00
LunaMoo
b909997a86 Typo correction 2015-09-24 01:15:20 +02:00
Henrik Rydgard
0f4df6c67b Add some missing _ARCH_32 and _ARCH_64 definitions to MSVC project files.
Fixes obscure crash in Moppi PSP Flower homebrew.
2015-09-23 19:30:14 +02:00
Henrik Rydgard
3232e46c36 Make debug build nearly warning free in MSVC 2015 2015-09-17 22:02:15 +02:00
Henrik Rydgård
1e109a3b27 Add unittest for ParseLBN. Seems we already parse correctly.
See #7960
2015-09-12 11:21:54 +02:00
LunaMoo
1468432804 Update UnitTests.vcxproj 2015-09-07 10:02:39 +02:00
Unknown W. Brackets
85533dad6e Native merge part 2: update build files.
And a couple minor stragglers.
2015-09-06 13:06:57 -07:00
Henrik Rydgard
fdea85138c Update project files, fix minor issues for VS 2015 2015-09-06 19:32:15 +02:00
Henrik Rydgard
08735b806f Remove silly use of gstate.SetVSyncInterval 2015-09-06 13:36:33 +02:00
Henrik Rydgard
35c65973c1 ARM64 jit: implement vuc2i, vc2i, vus2i, vs2i instructions 2015-07-11 13:25:58 +02:00
Henrik Rydgard
28456bef90 ARM64: Add NEON EOR encoding 2015-07-11 12:36:44 +02:00
Henrik Rydgard
72651835c3 A bunch more ARM64 encodings (*MIN,*MAX,XTN,SHRN, etc) 2015-07-11 12:16:56 +02:00
Henrik Rydgard
0be2b93ceb More ARM32 NEON encoding horrors (VMOVL, VSHLL) 2015-07-10 23:56:42 +02:00
Henrik Rydgard
59164cdbfb ARM32: Disasm and emit NEON shifts-by-immediate 2015-07-09 00:24:57 +02:00
Henrik Rydgård
cc59361408 Merge pull request #7848 from unknownbrackets/vertdec
Improve arm64 vertex decoder
2015-07-05 18:25:24 +02:00
Henrik Rydgard
937feb6892 ARM64 disasm: Fix disasm of msr/mrs 2015-07-05 11:00:23 +02:00
Henrik Rydgard
b865070de1 ARM64 emitter/disasm: Fix LDNP/STNP disassembly, also fix test of smaddl 2015-07-05 09:57:58 +02:00
Unknown W. Brackets
683b3eb082 Add tests for various vertex formats. 2015-07-04 18:08:31 -07:00
Unknown W. Brackets
8ea7f99072 arm64: Fix imm wasting when STP doesn't work out. 2015-07-04 07:09:47 -07:00
Unknown W. Brackets
14885182b9 Add some timing ability. 2015-07-03 15:44:41 -07:00
Unknown W. Brackets
808db2482a Initial structure for vertexjit tests. 2015-07-03 15:25:40 -07:00
Unknown W. Brackets
62988b2aa7 Fix building unittest for ARM64 Android. 2015-06-26 22:29:43 -07:00
Jan Beich
0b66a0a03c unittest: avoid build error on case-sensitive filesystems
unittest/TestArm64Emitter.cpp:1:10: fatal error: 'Common/ARM64Emitter.h' file not found
unittest/TestX64Emitter.cpp:1:10: fatal error: 'Common/X64Emitter.h' file not found
2015-05-28 06:02:59 +00:00
Henrik Rydgård
d014d420db Unify JitOptions across the backends.
This is required to make ExtractIR not a member of the various backends.
2015-04-12 11:41:26 -07:00
Henrik Rydgård
39be916d8a ARM64: More emitter/disasm 2015-04-06 18:13:44 +02:00
Henrik Rydgård
459ba28655 ARM64: SW skinning runs without crashing but is broken. 2015-04-06 18:13:44 +02:00
Henrik Rydgård
f82b613371 ARM64 emitter/disasm: Implement ASIMD LDP/STP instructions 2015-04-06 18:13:42 +02:00
Henrik Rydgård
013bbc71af ARM64: Fix DUP disasm, INS disasm 2015-04-06 18:13:40 +02:00
Henrik Rydgård
a3db3ed5c1 ARM64 emitter: Fix UXTL/SXTL and friends. Add disasm. 2015-04-06 18:13:40 +02:00
Henrik Rydgård
853d6ea34b ARM64 emitter: Add FMLA/FMLS vector versions 2015-04-06 18:13:39 +02:00
Henrik Rydgård
065cd97dc2 ARM64: LLVM buildfix, some more disasm 2015-04-06 18:13:39 +02:00
Henrik Rydgard
7d918c0ad8 ARM64: Just some disasm improvements 2015-04-06 18:13:35 +02:00
Henrik Rydgard
ad3d539451 ARM64: Attempt at lwl/lwr/swl/swr. The first two don't work 2015-04-06 18:13:35 +02:00
Henrik Rydgard
4618275f99 ARM64: Add a few aliases to emitter. Disasm fixes. 2015-04-06 18:13:33 +02:00
Henrik Rydgard
acf08eefa8 ARM64: Fix FCVTL, use it in v2hf 2015-04-06 18:13:33 +02:00
Henrik Rydgard
0849e270ee ARM64: fmla encoding, more disasm 2015-04-06 18:13:31 +02:00
Henrik Rydgard
9c79831237 ARM64 emitter: Fix FP immediates 2015-04-06 18:13:29 +02:00
Henrik Rydgard
9a5a093105 ARM64 emitter/disasm: More scalar FPU instructions 2015-04-06 18:13:27 +02:00
Henrik Rydgard
6cb107d6fc ARM64: Fix LDP disassembly 2015-04-06 18:13:25 +02:00
Henrik Rydgard
5a5f3c94fd ARM64: Guess what? more emitter & disasm 2015-04-06 18:13:24 +02:00
Henrik Rydgard
0f430e6cd1 ARM64: More asimd scalar disasm, encoding fix 2015-04-06 18:13:23 +02:00
Henrik Rydgard
9f689b871a ARM64: Work on emitting and disassembling fp conversion ops 2015-04-06 18:13:22 +02:00
Henrik Rydgard
2566972a4d ARM64: Further disasm work 2015-04-06 18:13:21 +02:00
Henrik Rydgard
120e0bba3c ARM64: Disassemble csel and multiply instructions 2015-04-06 18:13:19 +02:00
Henrik Rydgard
acd9502b44 ARM64: stp/ldp disasm improvements 2015-04-06 18:13:17 +02:00
Henrik Rydgard
5dff3f8c89 ARM64: Implement scalar FMOV. This makes the FPU2op ops work. 2015-04-06 18:13:16 +02:00
Henrik Rydgard
4233921ab7 ARM64: Some more instructions, func replacements 2015-04-06 18:13:16 +02:00
Henrik Rydgard
77501e220d ARM64: Enable a few more instructions, more emitter/disasm unittests 2015-04-06 18:13:13 +02:00
Henrik Rydgard
cc722f09f6 Improve ARM64 disassembly by merging MOVZ+MOVK. Minor stuff. 2015-04-06 18:13:07 +02:00
Henrik Rydgard
8945b2476d Add the beginnings of a rudimentary ARM64 disassembler 2015-04-06 18:13:03 +02:00
Henrik Rydgard
001eda39e0 Add really primitive save preview on "Next Slot". Improve pause screen layout a little. 2015-02-01 18:04:50 +01:00
Henrik Rydgard
28cd190e0a Temporary workaround for Debug build linking problem (ffmpeg's static release CRT clashes with static debug CRT) 2015-01-24 16:37:01 +01:00
Henrik Rydgard
4ebdf49fb6 Update ffmpeg to master, also switching to static linking of MSVCRT. Don't forget to update your submodules! 2015-01-24 13:30:37 +01:00
Henrik Rydgard
05a8e2e35d Some work towards being able to build two JITs together
This will be useful for testing/debugging, but not there yet.
2014-12-13 21:13:54 +01:00
Henrik Rydgard
8ad1ea4c84 Split JitCommon.h so that you can include it without getting the "NativeJit" definition 2014-12-13 21:13:28 +01:00
Henrik Rydgard
9f2ec39a99 Add a simple test of matrix transposes 2014-12-12 23:49:23 +01:00
Unknown W. Brackets
15d0a81122 Exclude the X64Emitter test on ARM.
Don't want to make that run on ARM...
2014-12-07 21:05:50 -08:00
Unknown W. Brackets
58ff826b73 Cleanup to link assembler on arm unittest builds. 2014-12-07 15:41:11 -08:00
Henrik Rydgard
50bb3e1e05 Minor fixes 2014-12-08 00:18:13 +01:00
Henrik Rydgard
8c128508a5 disarm: Fix a couple of bugs, and disable a broken test to get to the good stuff in ArmEmitter unittest... 2014-12-07 23:24:39 +01:00
Henrik Rydgard
7740caeade Buildfix the arm emitter test in the unittest.
Also do some preparation for being able to have two JITs compiled at the same time
which may be useful in testing parts of the ARM jit on Windows.
2014-12-07 14:12:13 +01:00
Henrik Rydgard
34054b4f41 Add a simple way to test the X64 emitter. Update native. 2014-12-06 11:35:01 +01:00
Henrik Rydgard
466cdb8ddf x86 Jit: Basic implementation of SIMD vmmul. Can be improved. 2014-11-30 19:27:43 +01:00
Unknown W. Brackets
bb26e4f7d0 x86jit: Implement vmmov using SIMD.
4x -> 87x in microbenchmarking.
2014-11-29 18:46:38 -08:00
Henrik Rydgard
8f016d3e48 Merge some matrix utils and stuff from the NEON branch 2014-11-29 11:37:45 +01:00
Kingcom
f6cedcbff5 Replace assembler with a submodule 2014-11-23 21:09:40 +01:00
Unknown W. Brackets
370fb86379 Add VFPU instructions to the mips asm tables. 2014-11-09 15:14:07 -08:00
Henrik Rydgard
5bcdecc26b unittest: Have the JIT harness print disassembly, to make it easy to inspect results. 2014-11-09 12:03:04 +01:00
Unknown W. Brackets
bed0d0b059 x86jit: Improve cvt.w.s when fd is loaded or fs.
We have no need to store it.
2014-11-08 16:40:54 -08:00
Unknown W. Brackets
1917d946ea x86jit: Micro optimize cvt.s.w a bit.
This implementation is about 5x faster for micro benchmarks.  Little
impact to overall perf in games I tested, though.
2014-11-08 13:30:38 -08:00
Unknown W. Brackets
0e646f748a x86jit: Implement vi2x instructions.
Also, my opcodes were wrong in the test (shifted the pair bit the wrong
way, oops.)

AFAICT, there's no reason PSRAD/etc. were not encoding REX...
2014-11-08 12:13:26 -08:00
Unknown W. Brackets
7d54622e2c Fix Windows build without dxsdk (#7070.) 2014-11-08 12:10:50 -08:00
Unknown W. Brackets
836328d731 Cut down on test overhead a good bit. 2014-11-07 22:51:01 -08:00
Unknown W. Brackets
2efecc5c38 Add some jit benchmarking code. 2014-11-07 22:40:28 -08:00
Henrik Rydgard
f84ebf6bff sprintf->snprintf, fix some too short buffers 2014-09-14 00:14:11 +02:00
Unknown W. Brackets
afe2a17ef5 Compile projects using GLEW_STATIC.
To avoid compilation warnings about dllimport.
2014-08-23 21:53:33 -07:00
Henrik Rydgard
39cde7fc48 Hide "immersive mode" on pre-kitkat Android. 2014-07-20 12:11:50 +02:00
Henrik Rydgard
e6f55bfef0 Fix silly mistake in vfpu_sincos. Add unittest. 2014-06-15 11:51:30 +02:00
Henrik Rydgard
f1a225728c Update native with framebuffer_blit_nv fix for tegra.
This appears to fix some but not all issues with blit on Tegra.

May affect #2135 and fix issues broken by #6115.

(also throw in a link in a comment)
2014-06-05 21:30:45 +02:00
Unknown W. Brackets
48fa22b7cf B/BL were swapped in the arm emitter.
Oops...
2014-03-14 19:15:41 -07:00
Unknown W. Brackets
b00c98a87d Correct disasm for BFI/BFC/UBFX/SBFX. 2014-03-14 19:15:40 -07:00
Henrik Rydgard
ab9cd99d0f Major ARM disassembler improvements, will make debugging the JIT easier 2014-03-12 18:09:28 +01:00
Unknown W. Brackets
cd4cd77938 Clean up defines in MSVC project files.
This way they're all basically the same.  A lot of cases where
debug/release/etc. where inconsistent...

Also, define USING_WIN_UI.
2014-02-08 16:38:44 -08:00
Unknown W. Brackets
2c204e8028 Update project to MSVC 2013 tools.
Retaining XP support, using SDK 7.1a (v120_xp.)  Disables SSE2 flag on x64
since it's implied and causes compile warnings.
2014-02-08 13:41:28 -08:00
Unknown W. Brackets
1dfcbd0ea1 Reference g_Config in unittest to resolve cycle.
Dag blasted cross dependent linking.
2014-01-10 21:32:08 -08:00
Henrik Rydgård
8ac6ba17d7 Make the unittest build using CMake 2014-01-09 12:09:07 +01:00