nodchip
9c98d0ab85
JitIL: Extracted local variables to prevent calling regLocForInst()/fregLocForInst() many times. It was pointed out in r6127.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6128 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 01:56:30 +00:00
nodchip
c32cad999c
JitIL: Improved the register usage of some IL instructions (SExt8, ICmp*, DupSingleToMReg, InsertDoubleInMReg) for the speed improvement.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6127 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 12:55:21 +00:00
nodchip
bab7721124
JitIL: Reverted r6117 because I could not find the case js.downcountAmount == 0. I'm sorry for confusion.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6118 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-23 00:36:59 +00:00
nodchip
e740c4caa8
JitIL: Omitted extra SUBs when js.downcountAmount == 0. (Though it is not very often.)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6117 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-22 08:38:56 +00:00
nodchip
43dc70eace
JitIL: Omitted some extra MOVs when a next program counter is in a register.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6116 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-22 08:27:43 +00:00
nodchip
10a14d17d3
JitIL: Fixed a wrong implementation reported in r6111.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6115 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-21 10:53:17 +00:00
nodchip
62c4d439ce
JitIL: Modified psq_l implementation. Reverted psq_st. Removed compile warnings.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6114 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-21 06:29:47 +00:00
nodchip
168136a219
JitIL: Implemented some instructions.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6111 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-20 05:05:11 +00:00
nodchip
7b9d0dbedc
JitIL: Added some instruction handlers. They were ported from Jit64.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6110 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-19 14:10:22 +00:00
nodchip
0c1977dc45
JitIL: Added code which deal with psq_st/psq_l in the case of inst.W == 1.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6092 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-12 12:31:15 +00:00
nodchip
949fec41ca
JitIL: Reverted "lbzu" added in r6018.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6023 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 02:17:52 +00:00
nodchip
f79eff00e4
JitIL: Fixed comment out style reviewed in r6017.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6022 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 01:23:14 +00:00
nodchip
0e83d52382
JitIL: Added "lbzu" instruction and "crXX" instructions. "crXX" are ported from Jit_SystemRegisteres.cpp. "lbzu" may cause crush in GFZP01 (F-Zero GX PAL). I could not test with GFZP01 because I don't have it. I tested "lbzu" with other games, though.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6018 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:43:54 +00:00
nodchip
2213d423bf
JitIL: Commented out the code which cause bugs in STGJAF OP movie.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6017 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:32:02 +00:00
nodchip
d5a698f188
JitIL: Removed unused variables reviewed in r6010.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6011 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 10:12:11 +00:00
nodchip
aaa083f8f0
JitIL: Added instruction combining rules for speed up.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6010 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 03:26:25 +00:00
nodchip
15b741706d
JitIL: Fixed the code which were pointed out in r5968.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5969 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 09:56:39 +00:00
nodchip
1cf1711149
JitIL: Added operand folding rules to increase speed.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5968 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 03:28:52 +00:00
nodchip
9f3e2ac2cc
JitIL: Added operand folding rules for speed improvement.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5927 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-21 02:23:55 +00:00
nodchip
c9855f2c22
JitIL: Implemented linear scan algorithm for register allocation. This is for speed improvement.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5919 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 15:07:19 +00:00
nodchip
3997243143
[Core] Added a wait before a spin wait.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5869 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-11 03:16:52 +00:00
nodchip
5cf491af64
VideoCommon: A minor speed up.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5772 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-23 03:02:15 +00:00
nodchip
7923903f92
[Plugin_VideoDX9] A minor speed up for SetMultiVSConstant4fv().
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5442 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-09 03:14:11 +00:00
nodchip
a75c37826b
VideoCommon: Fixed the bug that VideoSoftware does not initialize SSSE3/SSE4.1 codes.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5310 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-10 01:39:33 +00:00
nodchip
32794fc028
VideoCommon: Fixed the bug that some texture become black in SSSE3.1 codes.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5309 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-10 01:37:51 +00:00
nodchip
956b8eb54d
VideoCommon: Added automatic selection routines for SSSE3/SSE4.1 codes. It selects SSSE3/SSE4.1 codes only if a proper preprocessor definition is defined and the target cpu supports SSSE3/SSE4.1. The selection routines in VertexLoader_* use function pointers. TextureDecoder uses a combination of "#if" and "if" statements.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5302 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-09 15:13:42 +00:00
nodchip
6136c94de5
VideoCommon: merged SSSE3/SSE4.1 codes. Added some additional SSSE3/SSE4.1 codes which will be used in "The Legend of Zelda: Twilight Princess".
...
These codes don't work unless "_M_SSE=0x301", for SSSE3, or "_M_SSE=0x401", for SSE4.1, is defined as a preprocessor definition.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5300 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-09 03:02:12 +00:00
nodchip
2dabcb881c
Fixed the crazy code in r5161.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5163 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-06 10:07:37 +00:00
nodchip
d69478e539
Reverted the comparison function to r5159 and rewrote map to hash_map. I confirmed that the code can be compiled and run under Visual Studio 2008. And I confirmed the code can be compiled under gcc 4.4.0 (mingw). I could not confirm that the code run under linux.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5161 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-06 02:07:48 +00:00
nodchip
1b61742b53
Rewrote a object-comparison code using a standard function. It's a tiny refactoring.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5160 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 12:04:09 +00:00
nodchip
cff39f5382
Omitted extra lower_bound() calls to reduce the computational time. The old routine consumed more than 4% of computational time of a thread. It is a trivial modification.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5142 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 14:48:07 +00:00
nodchip
2941bef44b
Fixed a wrong type in r5140.
...
Commited code that I forgot to commit in r5140.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5141 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 12:14:40 +00:00
nodchip
1c34052266
Refactored VertexLoader::CompileVertexTranslator(). Now texture coordinates loaders are also selected from a function table. I will add a hack to increase the speed in the next commit.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5140 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 11:36:00 +00:00
nodchip
d348c33bf2
Refactored VertexLoader::CompileVertexTranslator(). Now the vertex position loader is selected from a function table. I will apply the same kind of refactoring to texture coordinates loader. This is a pre-preparation to optimize texture coordinates loaders.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5139 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 08:41:02 +00:00
nodchip
609151c6e8
Reverted because of some processor and performance issue. I will develop in a branch about SSSE3/SSE4.1.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5123 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24 23:58:48 +00:00
nodchip
b7e73102ca
Fixed the issue that cpu_info is not initialized in plugin. This commit enables SSSE3/SSE4.1 codes in rev5119.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5120 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24 10:10:48 +00:00
nodchip
47fb73b71a
Added SSSE3/SSE4.1 code for speed up. The code does not work in this revision because cpu_info is not initialized properly. I will fix the issue in another commit.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5119 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24 09:56:41 +00:00