Commit graph

23705 commits

Author SHA1 Message Date
Henrik Rydgård
a989b4a933
Merge pull request #10507 from KentuckyCompass/ios-resolution-fix
Require iOS 8 and up, add a launch screen, use full resolution
2018-01-05 09:15:28 +01:00
Henrik Rydgård
94e73bcb5e
Merge pull request #10508 from unknownbrackets/irjit
Improve IR debug output
2018-01-05 09:14:02 +01:00
Unknown W. Brackets
ccd562d934 irjit: Add a safety check for block num overflow.
In case a game is very frequently modifying some block.
2018-01-04 23:24:15 -08:00
Unknown W. Brackets
5b9b6daea8 irjit: Enable more debug UI for block selection. 2018-01-04 23:10:49 -08:00
Unknown W. Brackets
0bfab27b46 irjit: Calculate bloat statistics.
At least based on IR for now.  Can do something else later.

memset() was causing a crash on the std::map.
2018-01-04 23:09:03 -08:00
Henrik Rydgård
2709472abd
Merge pull request #10506 from hrydgard/ir-interpreter-simd
More IR interpreter SIMD
2018-01-05 01:21:32 +01:00
Henrik Rydgård
8c3a50d089
Merge pull request #10505 from hrydgard/ir-disasm-jit-compare
Show IR disassembly in JIT Compare screen
2018-01-05 01:20:49 +01:00
Henrik Rydgård
d1d01bfdcb Cleanup GetBlockNumberFromStartAddress 2018-01-05 01:20:10 +01:00
Henrik Rydgård
331a8f91e8 Fix that weird unordered compare mode, hopefully 2018-01-04 20:06:26 +01:00
Henrik Rydgård
18be23eccc IR: More fixes. Still something wrong with VFPU compares (not caused by this PR). 2018-01-04 19:38:36 +01:00
Kentucky Compass
6ea4924ee9 require iOS 8, add a launch screen 2018-01-04 09:56:49 -08:00
Henrik Rydgård
ca9050b84c On Linux, can't even include nmmintrin without explicitly enabling SSE 4.2 support. 2018-01-04 18:27:19 +01:00
Henrik Rydgård
fe88d12055 IR interpreter: Add some braces to allow variable declaration in the switch cases. 2018-01-04 18:27:19 +01:00
Henrik Rydgård
e0cc126d09 Add some more SIMD support to IR interpreter. Mostly just because, but also serves as implementation reference for later code generation backends. 2018-01-04 18:27:19 +01:00
Henrik Rydgård
a128624f98 IRInterpreter: Fix bugs in floating point truncation functions 2018-01-04 18:25:54 +01:00
Henrik Rydgård
1a97f62dc9 Fix running the CPU test from the UI. 2018-01-04 18:10:41 +01:00
Henrik Rydgård
468b830bec Show IR disassembly in JIT Compare screen 2018-01-04 12:23:23 +01:00
Henrik Rydgård
604b3c3e97 IR Interpreter: Add missing break; to switch case IROp::FSign. 2018-01-04 11:08:56 +01:00
Henrik Rydgård
c3f271c715
Merge pull request #10503 from unknownbrackets/irjit
irjit: Embed constant inside IRInst (now 64-bit)
2018-01-04 09:58:55 +01:00
Unknown W. Brackets
bc541bd020 irjit: Encode downcount directly as a constant.
Simpler this way, now.
2018-01-03 23:32:31 -08:00
Unknown W. Brackets
cffb2d61a7 irjit: Embed constant inside IRInst.
This simplifies a bunch of code and improves compile performance by about
30%, at the cost of a bit more memory.
2018-01-03 23:24:04 -08:00
Henrik Rydgård
5c50c007b7 Minor fix for previous commit. 2018-01-03 18:21:50 +01:00
Henrik Rydgård
b59503957b
Merge pull request #10502 from unknownbrackets/irjit
irjit: Fix swr typo
2018-01-03 17:16:59 +01:00
Unknown W. Brackets
64b57a0329 irjit: Fix swr typo.
Shifting the wrong direction - oops.
2018-01-03 08:14:25 -08:00
Henrik Rydgård
e7893001e9 VertexDecoderCommon: A few more cases. 2018-01-03 17:02:07 +01:00
Henrik Rydgård
3ac2350ad6 IR Interpreter: Add a comment, minor cleanup, minor SSE stuff. 2018-01-03 16:31:55 +01:00
Henrik Rydgård
e472947488 VertexDecoderCommon: Avoid reading the destination during vertex decode, might be some kind of memory that's not good to read from... 2018-01-03 16:31:01 +01:00
Henrik Rydgård
2e2d76e109
Merge pull request #10501 from unknownbrackets/analyst
Scan the correct sections of modules for code
2018-01-03 12:20:05 +01:00
Unknown W. Brackets
29ed48c32a Module: Avoid scanning stubs if possible.
In this case, we often scan some garbage, but let's reduce it at least.
2018-01-02 22:21:08 -08:00
Unknown W. Brackets
00a05e97ac Module: Scan modules with no sections at all.
Also, fix some off-by-one issues with end addresses.
2018-01-02 22:20:09 -08:00
Unknown W. Brackets
30b2d05bac Module: Correct detection of executable sections. 2018-01-02 21:53:13 -08:00
Henrik Rydgård
690a409dac
Merge pull request #10496 from unknownbrackets/cpu-bgstart
Core: Asynchronously load the main ELF
2018-01-02 11:31:58 +01:00
Henrik Rydgård
3b9d0015a3
Merge pull request #10498 from unknownbrackets/irjit
irjit: Properly account for delay slots in size
2018-01-02 11:31:00 +01:00
Unknown W. Brackets
9952d4bac5 UI: Fade in loading much slower to avoid flicker.
On Android, it often takes 0.3s or longer to load a game.  Avoid fading it
all the way in for just a short moment, if it's gonna be quick.
2018-01-01 23:07:48 -08:00
Unknown W. Brackets
d4400b358a UI: Actually offset text shadow.
It wasn't actually visible before, since it was strictly underneath text
that was usually white.
2018-01-01 22:58:07 -08:00
Unknown W. Brackets
c793da500a UI: Show PIC1 while loading.
In case it takes a second, less ugly than a black screen.
2018-01-01 22:58:07 -08:00
Unknown W. Brackets
b41413b8a5 Core: Asynchronously load the main ELF.
Sometimes it takes a little time.  More importantly, this allows us to
load caches or do other things at start that might be a tad slow.

Not doing anything like that yet, though.
2018-01-01 22:58:06 -08:00
Unknown W. Brackets
b11858d9a0 irjit: Properly account for delay slots in size.
Otherwise we think blocks are 4 bytes too short, which can affect
invalidation.
2018-01-01 22:54:40 -08:00
Unknown W. Brackets
307efe7ecb
Merge pull request #10495 from KentuckyCompass/ios-profiler
iOS: Fix crash with USE_PROFILER, pass command line args to NativeInit, misc cleanups
2018-01-01 19:51:46 -08:00
Kentucky Compass
e3af9f401f iOS: ViewController cleanups - delete unused code and properties 2018-01-01 19:12:52 -08:00
Kentucky Compass
873dcaa126 iOS: call PROFILE_INIT so we don't crash with USE_PROFILER 2018-01-01 19:10:45 -08:00
Kentucky Compass
20794081ea iOS: Nix iosCanUseJit and targetIsJailbroken. Move NativeInit call to main so it can take cmd line args. 2018-01-01 19:10:44 -08:00
Kentucky Compass
3e5833843a Remove references to AudioEngine, which isn't used anyway 2018-01-01 17:09:48 -08:00
Henrik Rydgård
263941e9e0
Merge pull request #10494 from unknownbrackets/irjit
irjit: Implement lwl/etc.
2018-01-01 19:08:32 +01:00
Henrik Rydgård
3e40db0c00
Merge pull request #10493 from unknownbrackets/logging
Logging: Use AndroidLogger for all mobile devices
2018-01-01 18:05:39 +01:00
Henrik Rydgård
a279363814
Merge pull request #10492 from unknownbrackets/hle-log
HLE: Reset latestSyscall on save state load
2018-01-01 18:05:06 +01:00
Unknown W. Brackets
6509f8b433 HLE: Reset latestSyscall on save state load.
Loading a save state might call functions which call HLE log, such as
AtracSetContext.  This was outputting confusing log / reporting messages
based on a random recent syscall.
2018-01-01 08:57:08 -08:00
Unknown W. Brackets
3abcc4d6d8 irjit: Implement lwl/lwr/swl/swr.
This is very similar to the arm64jit implementation.
2018-01-01 08:38:13 -08:00
Unknown W. Brackets
b37ba9e599 irjit: Add options for compile/optimize steps.
This way the backend can set flags for the type of IR it wants.  It's
seems too complex to combine certain things like lwl/lwr in a pass.
2018-01-01 08:38:12 -08:00
Unknown W. Brackets
671be24105 irjit: Add extra temps to make lwl/swl/etc. easier. 2018-01-01 08:38:11 -08:00