Commit Graph

8093 Commits

Author SHA1 Message Date
Henrik Rydgård
306f7423e7 Merge pull request #8755 from unknownbrackets/cpu-div
Handle divide by zero more accurately in jit
2016-05-19 09:30:25 +02:00
Unknown W. Brackets
2d3df5c621 armjit: Handle divide by zero more accurately.
Turns out, some games may depend on this behavior.
2016-05-19 00:07:41 -07:00
Unknown W. Brackets
5105e1947f x86jit: Set HI/LO properly on divide by zero. 2016-05-19 00:06:53 -07:00
Henrik Rydgård
3554024a05 Merge pull request #8750 from unknownbrackets/display-minor
Add vblank wait to sceDisplaySetMode, fix default brightness value
2016-05-19 08:49:19 +02:00
Henrik Rydgard
3cae60b320 Revert potentially dangerous optimization that may have caused #8754, though not sure how. 2016-05-18 21:22:08 +02:00
Unknown W. Brackets
ee31f09b67 Buildfix. 2016-05-18 07:12:21 -07:00
Unknown W. Brackets
5534fba72c jit-ir: Add load/store reorder and merge passes.
Can do more in merge, potentially.  Maybe it's not useful...
2016-05-17 21:24:13 -07:00
Unknown W. Brackets
a9cdf7651e jit-ir: Mark prefixes unknown in mtv. 2016-05-17 21:22:57 -07:00
Unknown W. Brackets
b1c7f3dd3f jit-ir: Correct vx2i with partial overlap. 2016-05-17 21:22:23 -07:00
Unknown W. Brackets
842e450965 Display: Correct default brightness, add reporting.
Not sure if any games use hold/resume in a way that ought to work.
Display didn't seem to react to them being called.
2016-05-16 22:33:50 -07:00
Unknown W. Brackets
d0dc03f359 Display: Wait for vblank when setting mode.
Some games call this even when not needed, and it turns out to have an
important behavior.
2016-05-16 22:02:21 -07:00
Henrik Rydgård
b5b94f4a4d Merge pull request #8747 from unknownbrackets/display-minor
Display: Return 1 during the vsync period
2016-05-16 09:19:47 +02:00
Unknown W. Brackets
9ed604f9c8 Display: Return 1 during the vsync period.
Timing is based on manual tests, where the vsync signal is near the end of
the vblank.  Curiously, it stops right before the vblank stops, reliably.
2016-05-15 23:46:46 -07:00
Henrik Rydgård
558d4297fc Merge pull request #8743 from unknownbrackets/display-minor
Add validation to sceDisplaySetFramebuf
2016-05-16 08:04:37 +02:00
Unknown W. Brackets
597824eec6 Display: Add validation/report to set mode.
This seems to be involved in using the video out cable, but fails for
anything but these fixed parameters in normal situations.
2016-05-15 22:16:31 -07:00
Unknown W. Brackets
5e8e2d5e56 Display: Allow only immediate address changes.
It seems you must latch a change to stride/fmt first, which basically
makes sense.  Otherwise it would revert, I suppose.
2016-05-15 16:42:25 -07:00
Unknown W. Brackets
249a85b7e0 Display: Validate framebuf parameters. 2016-05-15 16:38:00 -07:00
Unknown W. Brackets
44cee09adc Dsiplay: Initialize the framebuf params better. 2016-05-15 16:29:58 -07:00
Unknown W. Brackets
958d7f0944 Display: Record bufw/fmt even when display is off.
These are returned by sceDisplayGetFrameBuf().
2016-05-15 15:55:04 -07:00
Unknown W. Brackets
26e9acee4b Display: Skip transitions between off/on in FPS.
We're just trying to detect frequent flips, so off/on doesn't play into
it.
2016-05-15 15:54:04 -07:00
Henrik Rydgard
fff898b526 Log the block when "uneaten prefix" happens 2016-05-16 00:05:03 +02:00
Henrik Rydgard
dc772e6f3a Add missing cases to simplify pass 2016-05-15 23:39:42 +02:00
Henrik Rydgard
f544364c4a Fix bug in vus2i (thanks unknown), recognize vectors in IR disasm 2016-05-15 23:35:33 +02:00
Unknown W. Brackets
e960158490 jit-ir: Add notes and report about vrot prefixes. 2016-05-15 14:08:59 -07:00
Unknown W. Brackets
ab1461faca Add prefix handling to vfpu color conv per tests. 2016-05-15 13:16:03 -07:00
Unknown W. Brackets
3f0fc2d851 jit-ir: Fix FSat0_1 behavior on -0.0f. 2016-05-15 13:10:49 -07:00
Unknown W. Brackets
fa61deae3d Remove unused value. 2016-05-15 12:43:35 -07:00
Unknown W. Brackets
6bf1390603 Fix timing drift on CoreTiming::ForceCheck().
Since -1 -(-1) = 0, we'll never think we moved forward this way.
2016-05-15 12:43:34 -07:00
Henrik Rydgard
d6c2b6e9ae Most of vi2x 2016-05-15 11:46:01 +02:00
Henrik Rydgard
905af75925 vx2i, vbfy, vsgn 2016-05-15 10:57:43 +02:00
Henrik Rydgard
7046f960e5 IR: Add vrot 2016-05-15 10:36:18 +02:00
Henrik Rydgård
168573e711 Merge pull request #8740 from unknownbrackets/ir-vfpu
More VFPU comments, implement vmscl
2016-05-15 10:08:22 +02:00
Unknown W. Brackets
e140d36818 ir-jit: Oops, fix matrix scale + tranpose. 2016-05-15 00:59:17 -07:00
Henrik Rydgård
205419a72e Merge pull request #8741 from unknownbrackets/ir-alu
IR the remaining ALU ops, correct div by zero
2016-05-15 09:43:41 +02:00
Unknown W. Brackets
c606f64f71 jit-ir: Add div/divu instructions. 2016-05-14 19:23:52 -07:00
Unknown W. Brackets
6413b44434 jit-ir: Enable IR for madd(u)/msub(u). 2016-05-14 19:23:51 -07:00
Unknown W. Brackets
a05ae2a0a6 Correct divide by zero HI/LO values a bit.
Interpreter is now correct, but it's probably not all that important to
get right in jit.
2016-05-14 19:23:50 -07:00
Unknown W. Brackets
4ac773e8b4 jit-ir: Implement bit reverse instruction. 2016-05-14 18:21:42 -07:00
Unknown W. Brackets
8a3dce3b8b jit-ir: Comment most of the vfpu ops. 2016-05-14 17:35:04 -07:00
Unknown W. Brackets
e1dbcd724e jit-ir: Oops, correct vtfm for transposed case.
The ones that are aligned are here in this case.  Fixes crash in Crisis
Core.
2016-05-14 16:20:39 -07:00
Unknown W. Brackets
01d63a1a9d jit-ir: Implement vmscl. 2016-05-14 16:20:21 -07:00
Unknown W. Brackets
2e097b8996 Oops, typos. 2016-05-14 14:28:05 -07:00
Unknown W. Brackets
d5d77b41f9 jit-ir: Properly flip vtfm simd cases.
Disable the broken one and add clearer comments.
2016-05-14 14:23:18 -07:00
Unknown W. Brackets
7c9f368d63 jit-ir: Add some descriptions of mnemonics.
Sometimes I forget what vhdp etc. meant, let's make the VFPU code a bit
more accessible.
2016-05-14 14:21:53 -07:00
Henrik Rydgård
8f430e9631 Merge pull request #8736 from unknownbrackets/ir-clear
Clear emuhacks on IR block destroy and save state
2016-05-14 18:51:39 +02:00
Unknown W. Brackets
1f28d802a3 FreeBSD buildfix.
We need Common to have the right _M_SSE define.  Also, let's not define
SSE4 until we need it, since we might need ifs.
2016-05-14 09:06:56 -07:00
Unknown W. Brackets
e37777648e jit-ir: Restore emuhacks before saving state.
Let's just ask jit to do this, not its block cache directly.
2016-05-14 08:59:44 -07:00
Unknown W. Brackets
b74df87db0 jit-ir: Clear emuhacks on block destroy. 2016-05-14 08:40:53 -07:00
Henrik Rydgard
0541fe36df Symbian buildfix, fix for fpu test 2016-05-14 15:26:43 +02:00
Henrik Rydgard
b612806ee4 Remove accidentally added file 2016-05-14 14:32:43 +02:00