Commit Graph

10071 Commits

Author SHA1 Message Date
Henrik Rydgard
5ad04a23f4 x86 jit: Rename BindToRegister to MapReg 2013-11-09 15:23:31 +01:00
Henrik Rydgard
d26692ef92 Fix bug from a couple of commits ago in ARMJit 2013-11-09 15:22:39 +01:00
Henrik Rydgard
316d23d4cc Optimize mfv/mtv/mfc1/mtc1 on x86 too 2013-11-09 14:06:45 +01:00
Henrik Rydgard
04451623b9 This variant didn't seem to make much difference either (see prev commit) 2013-11-09 13:06:10 +01:00
Henrik Rydgard
15bc5a8db7 Add small ARM perf experiment. Did not help on ARMv7 so turned it off.
xsacha might want to try it on ARMv6.
2013-11-09 12:57:07 +01:00
Henrik Rydgard
2fe898cda8 Add comment with link to important github thread about sceSas threading 2013-11-09 02:05:28 +01:00
Henrik Rydgård
d04415ac5d Merge pull request #4479 from unknownbrackets/perf
Small optimizations (armjit) for imms
2013-11-08 11:45:16 -08:00
Unknown W. Brackets
5d46a82f43 armjit: Use a MOV for add/or with 0.
Might skip the ALU, so might be faster.
2013-11-08 11:41:57 -08:00
Unknown W. Brackets
b8e126e7ce armjit: Preserve imms in slt/sltu as possible. 2013-11-08 11:41:57 -08:00
Unknown W. Brackets
8393d4aaae armjit: Preserve immediates more in nor. 2013-11-08 11:41:56 -08:00
Unknown W. Brackets
d7e42b26a3 armjit: Avoid flushing imm on add t0, imm, imm. 2013-11-08 11:41:56 -08:00
Unknown W. Brackets
a435c9dd13 armjit: Optimize movz/movn with immediates. 2013-11-08 11:41:55 -08:00
Unknown W. Brackets
376918c408 armjit: Reverse add t0, N, t1 to preserve imm. 2013-11-08 11:41:55 -08:00
Unknown W. Brackets
02dd250354 armjit: Optimize out a few immediate logic cases. 2013-11-08 11:39:24 -08:00
Unknown W. Brackets
385f9a457e Use GetPointerUnchecked in how, pre-checked areas. 2013-11-08 11:39:24 -08:00
Henrik Rydgard
0e542b6ecc vtxdec: small omission 2013-11-08 20:38:49 +01:00
Henrik Rydgard
4daebe9b0f When logging PRIM commands, print the prim number 2013-11-08 20:36:42 +01:00
Henrik Rydgård
4df08e49e9 Merge pull request #4478 from Kingcom/Debugger
Reset cycle counter when stepping out
2013-11-08 11:04:49 -08:00
Henrik Rydgard
22d6b36005 Vertexdecoder "double": fix for x86 and very minor optimization for arm. 2013-11-08 20:03:28 +01:00
Henrik Rydgard
58db79672f Fix vmtvc on ARM, fixing issues with our prefix check. Add some logging.
Also improve vcmp on ARM.
2013-11-08 19:59:11 +01:00
Henrik Rydgard
a028f07951 Turn down some logging. 2013-11-08 18:52:07 +01:00
Henrik Rydgard
309f904c0c Extract JitState into its own header (arm/x86) 2013-11-08 18:51:52 +01:00
Henrik Rydgard
6b45c321b6 vtxdecjit: turn off excessive logging 2013-11-08 18:49:17 +01:00
Kingcom
ee553afebc Reset cycle counter when stepping out 2013-11-08 17:41:50 +01:00
Henrik Rydgard
f57f8170d3 ARMjit: Optimize mfv, mtv 2013-11-08 12:43:48 +01:00
Henrik Rydgard
dff0c431aa ARMjit: Optimize mfc1, mtc1 2013-11-08 12:43:48 +01:00
Henrik Rydgard
5a95e267fb Add an optimization to discard registers at the end of functions when possible.
Works in some games but crashes many so hiding it for now. Do not add UI.
2013-11-08 12:43:48 +01:00
Henrik Rydgard
9a51d25279 Minor optimization in IndexGenerator::AddStrip. 2013-11-08 12:43:47 +01:00
Henrik Rydgard
1bf83efe9e ARM optimization in ADDI2R: Dual adds instead of MOVI2R, ADD when possible 2013-11-08 12:43:47 +01:00
Henrik Rydgard
381b6d0f05 VertexDecoder JIT: Add the last missing ones except morph, I think. 2013-11-08 12:43:46 +01:00
Sacha
803148b8ca ARMv6: Fix offsets > 4096 for litpool. More aggressive check.
Somehow Scooby Doo gets to offsets of ~4200 unless i drop the threshold down to ~3200. Not sure why the offset can jump by so much in one instruction.
Makes Scooby Doo playable now instead of showing a blue screen in the main game. Likely affects other games.
2013-11-08 16:07:05 +10:00
Henrik Rydgard
c0d7c5e958 vsgn x86 bugfix 2013-11-07 21:07:07 +01:00
Henrik Rydgård
44c866e90c Merge pull request #4474 from Kingcom/Debugger
Periodically redraw memory view
2013-11-07 11:38:53 -08:00
Henrik Rydgård
02204bac7c Merge pull request #4475 from Kingcom/MemView
Allow copying 16 and 32 bit values from the memory view
2013-11-07 11:38:33 -08:00
Kingcom
c85a7623cc Allow copying 16 and 32 bit values from the memory view 2013-11-07 19:49:46 +01:00
Kingcom
71ccb69ed4 Periodically redraw memory view 2013-11-07 18:39:41 +01:00
Henrik Rydgard
6eb7f94065 Implement vsgn in x86/x64 and ARM jit 2013-11-07 15:29:13 +01:00
Henrik Rydgard
32c95af820 ARM: Some zero-register fixes 2013-11-07 15:29:13 +01:00
Henrik Rydgard
91393093bc Re-enable the "nice delay slot" optimization on ARM 2013-11-07 15:29:12 +01:00
Henrik Rydgard
490deb9b5c Add option to the JIT viewer to find a random block with VFPU instructions.
For inspection of jit results.
2013-11-07 15:29:12 +01:00
Henrik Rydgard
502cbc170a Revert "Another attempt to sizing framebuffer based on fmt"
This reverts commit c0e8893560.
2013-11-07 15:29:11 +01:00
Henrik Rydgård
c213c44050 Merge pull request #4468 from hrydgard/vtxdec-prescale
Add support for prescaled UV in vertex decoder JIT
2013-11-07 02:51:14 -08:00
Henrik Rydgård
714754e149 sceAudio: only use the optimized volume=max path if stereo, add a TODO.
Might take care of #4470.
2013-11-07 11:50:24 +01:00
Henrik Rydgård
5b9cad00e2 Merge pull request #4469 from raven02/patch-13
Another attempt to sizing framebuffer based on fmt
2013-11-07 02:46:38 -08:00
Henrik Rydgard
c4e3dd14fd Add commented-out code to save XMM4/XMM5.
According to all calling convention manuals I can find, we don't really
need to preserve them. If they become problematic as mentioned, we can
activate this.
2013-11-07 09:54:58 +01:00
Sacha
e6f910ec27 Coords fix: toFullscreenCoord should return float, not int. 2013-11-07 16:10:46 +10:00
raven02
c0e8893560 Another attempt to sizing framebuffer based on fmt 2013-11-07 10:56:41 +08:00
Henrik Rydgard
64bdb5e21d Tiny optimization (32-bit) in GLES_GPU::FastRunLoop 2013-11-07 01:34:43 +01:00
Henrik Rydgard
b203da05e9 Prescale UV in vtx-dec-jit: Fix bugs, add ARM support 2013-11-07 01:24:53 +01:00
Henrik Rydgård
367bcf6d4f Prescale in the vertex dec jit. Needs debugging. 2013-11-07 01:24:53 +01:00