summaryrefslogtreecommitdiffstats
path: root/src/core/arm/dyncom (follow)
Commit message (Collapse)AuthorAgeFilesLines
* dyncom: Minor cleanupLioncash2015-01-271-126/+137
| | | | Narrow scopes for the instruction variables. Remove unnecessary parentheses.
* dyncom: Minor cleanupLioncash2015-01-221-282/+270
| | | | Removes some unused macros and cleans up indentation inconsistencies
* dyncom: Clarify precedence for ternary statementsLioncash2015-01-201-1/+1
|
* dyncom: Implement missing shifts in ScaledRegisterPostIndexed, etcLioncash2015-01-191-7/+33
|
* dyncom: Handle the ARM A2 encoding of STRT/LDRTLioncash2015-01-171-10/+24
| | | | These were also missing the shifted register case.
* dyncom: Handle the ARM A2 encoding of LDRBT/STRBT.Lioncash2015-01-171-17/+15
|
* dyncom: Fix 32-bit ASR shifts for immediatesLioncash2015-01-121-5/+3
|
* dyncom: Remove unused flag macrosLioncash2015-01-121-15/+3
|
* dyncom: Get rid of unnecessary outer-scope variables in InterpreterMainLoopLioncash2015-01-121-97/+108
|
* dyncom: Fix overflow flag setting for ADD/RSB/RSC/SUB/SBCLioncash2015-01-121-38/+41
| | | | Also cleans up CMN, and CMP.
* dyncom: Add a helper function for addition with a carryLioncash2015-01-121-12/+9
|
* dyncom: Fix ADC overflow flag settingLioncash2015-01-121-8/+12
|
* dyncom: Fix conditional execution of MSRLioncash2015-01-121-29/+31
|
* Move ThreadContext to core/core.h and deal with the falloutYuri Kunde Schlesner2015-01-092-4/+5
|
* DynCom: Add a comment to GetTicks.Subv2015-01-091-0/+1
|
* Timing: Use CoreTiming::GetTicks to keep track of ticks.Subv2015-01-092-6/+2
| | | | This will keep track of idle ticks for us, and fixes some tickcount-related issues
* dyncom: Fix UMAALLioncash2015-01-081-4/+4
| | | | These need to be done as a 64-bit operation.
* Merge pull request #442 from lioncash/smulbunnei2015-01-071-10/+7
|\ | | | | dyncom: Fix SMULWB/SMULWT
| * dyncom: Fix SMULWB/SMULWTLioncash2015-01-071-10/+7
| | | | | | | | Wasn't doing proper sign-extension
* | Merge pull request #425 from Subv/coretimingbunnei2015-01-071-1/+7
|\ \ | |/ |/| Ported the CoreTiming namespace from PPSSPP
| * CoreTiming: Ported the CoreTiming namespace from PPSSPPSubv2015-01-071-1/+7
| | | | | | | | | | | | Implemented the required calls to make it work. CoreTiming: Added a new logging class Core_Timing.
* | Merge pull request #438 from lioncash/swpbunnei2015-01-071-0/+1
|\ \ | | | | | | dyncom: Fix SWPB
| * | dyncom: Fix SWPBLioncash2015-01-071-0/+1
| | |
* | | dyncom: Move over SMLALXYLioncash2015-01-071-1/+56
|/ /
* | Merge pull request #417 from kevinhartman/exclusive-tag-fixbunnei2015-01-061-5/+7
|\ \ | |/ |/| Added exclusive reservation granule from ARMv7 spec to dyncom...
| * Added exclusive reservation granule from ARMv7 spec to dyncom to protect LDR/STREX.Kevin Hartman2015-01-061-5/+7
| |
* | dyncom: Partially emulate BXJLioncash2015-01-051-8/+25
| | | | | | | | Just in case some game studio let the intern write inline assembly or something.
* | dyncom: Actually set the Q flag for SMLABB/SMLABT/SMLATB/SMLATTLioncash2015-01-051-1/+2
| | | | | | | | Easy skyeye todo fix.
* | Merge pull request #418 from lioncash/qdbunnei2015-01-051-8/+103
|\ \ | | | | | | dyncom: Implement QADD/QSUB/QDADD/QDSUB
| * | dyncom: Implement QADD/QSUB/QDADD/QDSUBLioncash2015-01-051-8/+103
| | |
* | | skyeye: Remove duplicate typedefsLioncash2015-01-043-14/+14
|/ / | | | | | | citra already has its own typedefs like this.
* / dyncom: Implement SMLAWLioncash2015-01-031-1/+43
|/
* Merge pull request #395 from lioncash/revbunnei2015-01-031-45/+45
|\ | | | | dyncom: Implement REVSH
| * dyncom: Implement REVSHLioncash2015-01-031-45/+45
| | | | | | | | Also joins the REV ops into one common place.
* | dyncom: Implement SMLALD/SMLSLDLioncash2015-01-031-3/+72
|/
* Merge pull request #392 from lioncash/smbunnei2015-01-031-3/+64
|\ | | | | dyncom: Implement SMMLA/SMMUL/SMMLS
| * dyncom: Implement SMMLA/SMMUL/SMMLSLioncash2015-01-031-3/+64
| |
* | dyncom: Implemented LDREXD/STREXD/LDREXH/STREXHbunnei2015-01-033-227/+282
|/
* Merge pull request #390 from lioncash/wutbunnei2015-01-031-27/+0
|\ | | | | dyncom: Remove dead function InterpreterInitInstLength
| * dyncom: Remove dead function InterpreterInitInstLengthLioncash2015-01-031-27/+0
| | | | | | | | Technically eliminates two memory leaks as well.
* | dyncom: Implement SMLAD/SMUAD/SMLSD/SMUSDLioncash2015-01-031-44/+73
|/
* dyncom: Implement SXTAB16 and SXTB16Lioncash2015-01-021-3/+58
|
* Merge pull request #379 from lioncash/shbunnei2015-01-021-8/+110
|\ | | | | dyncom: Implement SHADD8/SHADD16/SHSUB8/SHSUB16/SHASX/SHSAX
| * dyncom: Implement SHADD8/SHADD16/SHSUB8/SHSUB16/SHASX/SHSAXLioncash2015-01-011-8/+110
| |
* | dyncom: Implement SADD8/SSUB8Lioncash2015-01-011-55/+108
|/
* Merge pull request #375 from lioncash/uopsbunnei2014-12-311-9/+208
|\ | | | | dyncom: Implement UADD8/UADD16/USUB8/USUB16/UASX/USAX
| * dyncom: Implement UADD8/UADD16/USUB8/USUB16/UASX/USAXLioncash2014-12-311-9/+208
| |
* | dyncom: Massive refactorbunnei2014-12-311-514/+191
| |
* | Merge pull request #369 from darkf/mingw_bunnei2014-12-311-0/+8
|\ \ | |/ |/| Fix MinGW build (2)
| * Fix merge conflictsdarkf2014-12-308-6588/+6273
| |\
| * | Add comment regarding __WIN32__ in SkyEye codedarkf2014-11-291-0/+4
| | |
| * | Fix MinGW builddarkf2014-11-291-0/+4
| | |
* | | dyncom: Implement USAT16/SSAT16Lioncash2014-12-301-2/+61
| |/ |/|
* | dyncom: Implement USAT/SSATbunnei2014-12-301-2/+94
| |
* | dyncom: Various cleanups to match coding style, no functional changes.bunnei2014-12-304-7055/+5962
| |
* | Merge pull request #361 from lioncash/moreqopsbunnei2014-12-291-32/+42
|\ \ | | | | | | dyncom/armemu: Implement QADD8/QSUB8.
| * | dyncom: Implement QADD8/QSUB8Lioncash2014-12-291-32/+42
| | |
* | | dyncom: Fix SMLALXY's instruction labelsLioncash2014-12-291-2/+2
|/ / | | | | | | They were erroneously labeled as SMLAL.
* | dyncom: Implement UXTB16/UXTAB16Lioncash2014-12-291-2/+55
| |
* | vfp: Actually make the code somewhat readableLioncash2014-12-292-14/+109
| |
* | dyncom: Implement PKHBT and PKHTB.bunnei2014-12-281-2/+57
| |
* | dyncom: Implement USAD8/USADA8Lioncash2014-12-281-2/+52
| |
* | dyncom: Implement UQADD8, UQADD16, UQSUB8, UQSUB16, UQASX, and UQSAX.Lioncash2014-12-271-8/+97
| |
* | dyncom: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAXLioncash2014-12-271-11/+123
| |
* | ARM: Add a mechanism for faking CPU time elapsed during HLE.bunnei2014-12-262-49/+14
| | | | | | | | - Also a few cleanups.
* | dyncom: Move over QADD16/QASX/QSAX/QSUB16Lioncash2014-12-221-7/+87
| |
* | Merge pull request #322 from chinhodado/masterbunnei2014-12-223-9/+6
|\ \ | | | | | | More warning cleanups
| * | More warning cleanupsChin2014-12-213-9/+6
| | |
* | | dyncom: Move SEL overLioncash2014-12-221-1/+58
| | |
* | | Merge pull request #324 from lioncash/dyncbunnei2014-12-221-7/+102
|\ \ \ | | | | | | | | dyncom: Move over SASX/SSAX/SADD16/SSUB16
| * | | dyncom: Move over SASX/SSAX/SADD16/SSUB16Lioncash2014-12-221-7/+102
| |/ /
* | | Merge pull request #291 from purpasmart96/licensebunnei2014-12-213-3/+3
|\ \ \ | |/ / |/| | License change
| * | License changepurpasmart962014-12-213-3/+3
| | |
* | | dyncom: Implement UMAALLioncash2014-12-191-1/+47
|/ /
* | Convert old logging calls to new logging macrosYuri Kunde Schlesner2014-12-131-99/+101
| |
* | Merge pull request #235 from yuriks/dyncom-mapbunnei2014-11-301-33/+15
|\ \ | | | | | | dyncom: Use unordered_map rather than the terrible 2-level bb_map
| * | dyncom: Use unordered_map rather than the terrible 2-level bb_mapYuri Kunde Schlesner2014-11-291-33/+15
| |/ | | | | | | | | | | Seems (probably just placebo/wishful thinking) to make it slightly faster. Also reduces memory usage and makes shutdown when debugging from MSVC fast.
* / arm_dyncom_interpreter: Get rid of unused var warningsLioncash2014-11-291-4/+2
|/
* Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot2014-11-193-4/+4
|
* Fix documentation of parametersLioncash2014-11-181-1/+1
|
* ARM: Fixed dyncom to use reg15 for PC (this core doesn't use pc variable).bunnei2014-11-121-2/+2
| | | | - Fixes single stepping in debugger.
* ARM: Removed unnecessary goto with each instruction.bunnei2014-11-121-43/+39
|
* ARM: Fixed several dyncom bugs.bunnei2014-11-123-17/+25
| | | | | | | - Fixed NZCVT flags to properly save state when function returns. - Fixed counter to keep track of the actual number of instructions executed. - Fixed single-step mode to only execute one instruction at a time. - DefaultIni: Removed comment that no longer applied to dyncom.
* Add `override` keyword through the code.Yuri Kunde Schlesner2014-10-261-7/+7
| | | | This was automated using `clang-modernize`.
* ARM: Removed unnecessary and unused SkyEye MMU code.bunnei2014-10-251-1/+0
| | | | Added license header back in. I originally removed this because I mostly rewrote the file, but meh
* ARM: Updated dyncom core to use fast label lookup table on clang.bunnei2014-10-251-3/+7
|
* ARM: Integrate SkyEye faster "dyncom" interpreter.bunnei2014-10-2510-0/+8124
Fixed typo (make protected member public) Added license header back in. I originally removed this because I mostly rewrote the file, but meh ARM: Fixed a type error in dyncom interpreter. ARM: Updated dyncom to use unique_ptr for internal ARM state.