Commit Graph

28 Commits

Author SHA1 Message Date
Ryan Houdek 7d410ec95c [ARM] VRSQRTE NEON emitter. 2013-09-16 12:58:20 +00:00
Ryan Houdek beb41a8f56 [ARM] Add NEON VORR and fix encoding on NEON VEOR. Remove VMRS_APSR because it is the same as VMRS(PC) 2013-09-16 07:49:16 +00:00
Ryan Houdek 81d7986202 [ARM] Add LSRS emitters, and ASR{S} register emitters. Fixes encoding in LSR emitter. 2013-09-14 09:06:49 +00:00
Ryan Houdek c1aa80cefa [ARM] Add support for double registers in VMOV(immediate). Add VEOR and VSTR1. Fix some minor encoding bugs. 2013-09-08 21:56:17 +00:00
Ryan Houdek e6af4970d8 [ARM] Use NEON for loading the values from psq_l, gives a minimal performance increase. This change also begins a new NEONXEmitter for having cleaner support for NEON. 2013-09-08 07:07:15 +00:00
comex 35b8dfbe0c A few more warnings. 2013-09-01 23:33:35 -04:00
Ryan Houdek 710ac04084 [ARM] Fix the VMOV encoding to encode the destination VFP register correctly. 2013-08-30 05:13:43 -05:00
Ryan Houdek 2c1337eb5f [ARM] Support both hardfp and softfp with lfs and lfd. Fixes these two instructions on Android since it uses softfp calling conventions. This adds a emitter for moving from two ARM Registers to a double VFP reg. 2013-08-30 09:38:11 +00:00
Ryan Houdek 9bded1382c [ARM] Add ASR/ASRS and UMULLS emitters. 2013-08-19 06:26:34 +00:00
Ryan Houdek ca7fb9f38e [ARM] Fix VCVT F32<->F64 encoding. 2013-08-03 00:48:44 +00:00
Ryan Houdek ab0f42636d [ARM] Push new ArmEmitter changes from PPSSPP. Mostly Fixes a few VFP/NEON instruction encodings. 2013-08-02 23:18:44 +00:00
Ryan Houdek f4b414a9c1 Fix encoding issue with VADD(Integer) 2013-07-16 22:18:15 -05:00
Ryan Houdek 7d6b36bf73 Fix most ARM warnings 2013-07-05 19:56:15 -05:00
Ryan Houdek d68955c539 Clang uses __clear_cache instead of __builtin___clear_cache like GCC 2013-04-18 22:50:58 -05:00
Ryan Houdek 6d9c0c8863 Merge in latest changes to ArmEmitter from the PPSSPP crew. Should fix the dumb random crashes I had from IOS icache clearing not initializing a value. 2013-04-12 11:59:19 -05:00
lioncash edd9d0e0ef Clean up more space/tab mismatches in AudioCommon, Common, and VideoCommon.
Not planning to touch Core since it's the most actively changed part of the project.
2013-03-19 21:51:12 -04:00
Ryan Houdek 7d74293170 Fix a typo in ArmEmitter noticed by LionCash. 2013-03-18 08:45:33 -05:00
Ryan Houdek 9ae9910490 Finish up VFP cleanup. A few more instructions are left for VFP, and a bunch of NEON ones if it will ever be used. 2013-03-18 00:10:56 +00:00
Ryan Houdek e6c6053fcc Beginning of VFP cleanup. Will finish when I have the hardware in front of me. 2013-03-14 10:45:26 -05:00
Ryan Houdek c93f7760ce Really clean up all the emitter loadstores on ARM. If a ARM device supports VFPv4, then it supports IDIVA, so handle that in CPUDetect. 2013-03-14 01:50:38 +00:00
Ryan Houdek 202e2fa5c8 Add a new WriteNewStoreOp emitter function for beginning of rewrite of the Arm Emitter LoadStores. Will finish when I have the hardware in front of me to test on. 2013-03-13 14:08:54 -05:00
Ryan Houdek 8406d9972d Fix JIT from rebasing on PPSSPP ArmEmitter. 2013-03-12 02:35:29 +00:00
Ryan Houdek b94b4a9e8f Rebase ArmEmitter on PPSSPP's base. The loadstores are making my heart cry at this point. 2013-03-11 13:57:55 -05:00
Ryan Houdek be217bf096 Add a comment about Qualcomm in load stores. 2013-03-07 20:28:18 -05:00
Ryan Houdek d6558e1c31 Make the (V)LDR/(V)STR instructions support negative offsets. This fixes a bug where Arm Jit couldn't load the top 33 FPRs. Also makes it so the core can access all GPRs, FPRs, and SPRs in ppcState. This increases VPS 15-20 on SSBM intro movie on ODROIDX 2013-03-06 01:51:59 +00:00
Ryan Houdek f1d727cf13 Merge latest ArmEmitter changes from ppsspp while we're at it. 2013-02-27 11:53:24 -06:00
Ryan Houdek 8c779bb242 Ah. I blame vim on this typo entirely. 2013-02-27 10:26:32 -06:00
Ryan Houdek 717b976875 ARM Support without GLSL 2013-02-26 13:49:00 -06:00