summaryrefslogtreecommitdiffstats
path: root/src/core/arm/dyncom/arm_dyncom_interpreter.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* dyncom: Remove more unnecessary codeLioncash2015-02-031-45/+3
|
* core: Fix some warnings on OSXLioncash2015-02-031-2/+4
|
* arm: Adios armemuLioncash2015-02-011-4/+0
|
* 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
|
* dyncom: Fix UMAALLioncash2015-01-081-4/+4
| | | | These need to be done as a 64-bit operation.
* dyncom: Fix SMULWB/SMULWTLioncash2015-01-071-10/+7
| | | | Wasn't doing proper sign-extension
* 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-041-4/+4
|/ / | | | | | | 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-031-100/+182
|/
* 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-301-5604/+5460
| |\
| * | 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-301-6066/+5168
| |
* | 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-291-8/+41
| |
* | 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
| |
* | dyncom: Move over QADD16/QASX/QSAX/QSUB16Lioncash2014-12-221-7/+87
| |
* | Merge pull request #322 from chinhodado/masterbunnei2014-12-221-6/+6
|\ \ | | | | | | More warning cleanups
| * | More warning cleanupsChin2014-12-211-6/+6
| | |
* | | dyncom: Move SEL overLioncash2014-12-221-1/+58
| | |
* | | dyncom: Move over SASX/SSAX/SADD16/SSUB16Lioncash2014-12-221-7/+102
|/ /
* | 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
|/
* ARM: Removed unnecessary goto with each instruction.bunnei2014-11-121-43/+39
|
* ARM: Fixed several dyncom bugs.bunnei2014-11-121-14/+19
| | | | | | | - 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.
* 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-251-0/+6559
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.