summaryrefslogtreecommitdiffstats
path: root/src/core/arm (unfollow)
Commit message (Expand)AuthorFilesLines
2015-02-01vfp: Get rid of some compile warningsLioncash2-6/+3
2015-02-01arm: Clean up ARMul_StateLioncash3-136/+83
2015-02-01arm: Adios armemuLioncash12-8576/+164
2015-01-30dyncom: clean up arm_dyncom_dec.hLioncash1-43/+2
2015-01-30arm: Move headers over to pragma onceLioncash7-31/+11
2015-01-30arm: Get rid of armcpu.h and skyeye_types.hLioncash5-113/+0
2015-01-30arm: Clean out armos.h and armmmu.hLioncash2-181/+23
2015-01-30arm: Throw out a lot of unnecessary codeLioncash6-1536/+56
2015-01-30armdefs: Move some defines over to enumsLioncash1-131/+112
2015-01-27dyncom: Minor cleanupLioncash1-126/+137
2015-01-27Update vfp.cppbunnei1-1/+1
2015-01-23vfp: Clean up vertical alignment for instructionsLioncash1-131/+125
2015-01-22dyncom: Minor cleanupLioncash1-282/+270
2015-01-20dyncom: Clarify precedence for ternary statementsLioncash3-3/+3
2015-01-19Cleanup: Logging in CoreChin5-483/+157
2015-01-19dyncom: Implement missing shifts in ScaledRegisterPostIndexed, etcLioncash1-7/+33
2015-01-17dyncom: Handle the ARM A2 encoding of STRT/LDRTLioncash1-10/+24
2015-01-17dyncom: Handle the ARM A2 encoding of LDRBT/STRBT.Lioncash1-17/+15
2015-01-12vfp: Remove dead codeLioncash1-50/+14
2015-01-12dyncom: Fix 32-bit ASR shifts for immediatesLioncash1-5/+3
2015-01-12dyncom: Remove unused flag macrosLioncash1-15/+3
2015-01-12dyncom: Get rid of unnecessary outer-scope variables in InterpreterMainLoopLioncash1-97/+108
2015-01-12dyncom: Fix overflow flag setting for ADD/RSB/RSC/SUB/SBCLioncash1-38/+41
2015-01-12dyncom: Add a helper function for addition with a carryLioncash3-12/+26
2015-01-12dyncom: Fix ADC overflow flag settingLioncash1-8/+12
2015-01-12dyncom: Fix conditional execution of MSRLioncash1-29/+31
2015-01-09Move ThreadContext to core/core.h and deal with the falloutYuri Kunde Schlesner5-11/+16
2015-01-09DynCom: Add a comment to GetTicks.Subv1-0/+1
2015-01-09Timing: Use CoreTiming::GetTicks to keep track of ticks.Subv2-6/+2
2015-01-08dyncom: Fix UMAALLioncash1-4/+4
2015-01-07dyncom: Fix SMULWB/SMULWTLioncash1-10/+7
2015-01-07CoreTiming: Ported the CoreTiming namespace from PPSSPPSubv2-1/+9
2015-01-07dyncom: Fix SWPBLioncash1-0/+1
2015-01-07dyncom: Move over SMLALXYLioncash1-1/+56
2015-01-06Added exclusive reservation granule from ARMv7 spec to dyncom to protect LDR/STREX.Kevin Hartman2-16/+18
2015-01-05dyncom: Partially emulate BXJLioncash1-8/+25
2015-01-05dyncom: Actually set the Q flag for SMLABB/SMLABT/SMLATB/SMLATTLioncash1-1/+2
2015-01-05dyncom: Implement QADD/QSUB/QDADD/QDSUBLioncash4-25/+117
2015-01-04skyeye: Remove duplicate typedefsLioncash4-41/+17
2015-01-03dyncom: Implement SMLAWLioncash1-1/+43
2015-01-03VFP: Minor cleanup, functionally the same.bunnei1-2587/+2476
2015-01-03dyncom: Implement REVSHLioncash1-45/+45
2015-01-03dyncom: Implement SMLALD/SMLSLDLioncash1-3/+72
2015-01-03dyncom: Implement SMMLA/SMMUL/SMMLSLioncash1-3/+64
2015-01-03dyncom: Implemented LDREXD/STREXD/LDREXH/STREXHbunnei3-227/+282
2015-01-03dyncom: Remove dead function InterpreterInitInstLengthLioncash1-27/+0
2015-01-03armemu: Fix missing Q flag check for SMLSD.Lioncash1-2/+6
2015-01-03dyncom: Implement SMLAD/SMUAD/SMLSD/SMUSDLioncash5-50/+84
2015-01-02dyncom: Implement SXTAB16 and SXTB16Lioncash1-3/+58
2015-01-01dyncom: Implement SHADD8/SHADD16/SHSUB8/SHSUB16/SHASX/SHSAXLioncash1-8/+110
2015-01-01Fix SADD8/SSUB8 in the armemuLioncash1-50/+28
2015-01-01dyncom: Implement SADD8/SSUB8Lioncash1-55/+108
2014-12-31dyncom: Implement UADD8/UADD16/USUB8/USUB16/UASX/USAXLioncash1-9/+208
2014-12-31dyncom: Massive refactorbunnei2-654/+221
2014-12-30vfp: Get rid of a few warningsLioncash2-2/+2
2014-12-30vfp: Implement VMOVBRRSSLioncash3-12/+44
2014-12-30dyncom: Implement USAT16/SSAT16Lioncash1-2/+61
2014-12-30dyncom: Implement USAT/SSATbunnei3-2/+131
2014-12-30dyncom: Various cleanups to match coding style, no functional changes.bunnei5-7087/+5962
2014-12-29dyncom: Fix SMLALXY's instruction labelsLioncash1-2/+2
2014-12-29dyncom: Implement QADD8/QSUB8Lioncash1-32/+42
2014-12-29armemu: Implement QADD8/QSUB8Lioncash3-33/+100
2014-12-29dyncom: Implement UXTB16/UXTAB16Lioncash1-2/+55
2014-12-29vfp: Actually make the code somewhat readableLioncash5-1664/+1053
2014-12-28dyncom: Implement PKHBT and PKHTB.bunnei1-2/+57
2014-12-28armemu: Fix PKHTB to do an arithmetic shift and correctly decode immediate field.bunnei1-13/+5
2014-12-28dyncom: Implement USAD8/USADA8Lioncash3-3/+53
2014-12-28armemu: Simplify SSAT/SSAT16/SXTB/SXTABLioncash1-71/+48
2014-12-28armemu: Simplify REV/REV16/SXTH/SXTAHLioncash1-38/+26
2014-12-28armemu: Simplify USAT16/UXTB/UXTABLioncash1-65/+42
2014-12-28armemu: Simplify REVSH/UXTH/UXTAHLioncash1-48/+23
2014-12-28armemu: Fix underflows in USAD8/USADA8Lioncash3-4/+14
2014-12-27dyncom: Implement UQADD8, UQADD16, UQSUB8, UQSUB16, UQASX, and UQSAX.Lioncash3-12/+102
2014-12-27armemu: Implement UQADD8, UQADD16, UQSUB16, UQASX, and UQSAXLioncash3-19/+93
2014-12-27dyncom: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAXLioncash1-11/+123
2014-12-27armemu: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAXLioncash1-2/+73
2014-12-26ARM: Add a mechanism for faking CPU time elapsed during HLE.bunnei5-95/+31
2014-12-25armemu: Implement SMMUL, SMMLA, and SMMLS.Lioncash1-2/+30
2014-12-24armemu: Implement SMLALD/SMLSLDLioncash1-2/+33
2014-12-24armemu: Fix GE/Q flag setting semanticsLioncash1-62/+56
2014-12-23armemu: Set the Q flag correctly for much of the other opsLioncash1-8/+8
2014-12-23armemu: Set the Q flag properly for SMLAD/SMUADLioncash3-13/+28
2014-12-23armemu: Properly set the Q flag for SSAT16/USAT16 upon saturation.Lioncash1-9/+23
2014-12-23armemu: Fix SELLioncash1-1/+1
2014-12-23armemu: Fix construction of the CPSRLioncash4-15/+54
2014-12-23armemu: Fix retrieval of the CPSR in MRS instructions.Lioncash1-1/+1
2014-12-22dyncom: Move over QADD16/QASX/QSAX/QSUB16Lioncash1-7/+87
2014-12-22dyncom: Move SEL overLioncash1-1/+58
2014-12-22dyncom: Move over SASX/SSAX/SADD16/SSUB16Lioncash1-7/+102
2014-12-21More warning cleanupsChin3-9/+6
2014-12-21License changepurpasmart968-8/+8
2014-12-21armemu: Implement SADD8/SSUB8Lioncash1-14/+87
2014-12-20armemu: Should be using labs for USAD8/USADA8Lioncash1-4/+4
2014-12-19armemu: Implement QASX and QSAXLioncash1-7/+20
2014-12-19armemu: Implement SMLSDLioncash1-6/+10
2014-12-19dyncom: Implement UMAALLioncash1-1/+47
2014-12-19armemu: Implement USAD8 and USADA8Lioncash1-1/+24
2014-12-19armemu: Fix SSAT16Lioncash1-1/+1
2014-12-19armemu: Clean up naming and formatting for SSAT16Lioncash1-14/+20
2014-12-18armemu: Fix lower-bounds clamping for USAT16Lioncash1-1/+6
2014-12-18armemu: More concise names for USAT16-related variablesLioncash1-11/+15
2014-12-18armemu: Get rid of bitwise parenthesis warningsLioncash1-4/+4
2014-12-18armemu: Set GE flags correctly for SSUB16, SADD16, SSAX, and SASX.Lioncash1-4/+29
2014-12-18armemu: Combine SSUB16, SADD16, SASX, and SSAX.Lioncash1-34/+23
2014-12-17armemu: Unset GE flags for UADD8 if results are < 0x100Lioncash1-4/+22
2014-12-17armemu: Fix SSUB16Lioncash1-8/+8
2014-12-17armemu: Implement UMAALLioncash1-3/+25
2014-12-17armemu: Narrow the scope of some variables in handle_v6_insnLioncash1-12/+9
2014-12-17armemu: Fix SADD16Lioncash1-8/+9
2014-12-17armemu: Fix PKHTBNormmatt1-6/+12
2014-12-17armemu: Implement REVSHNormmatt1-5/+9
2014-12-17armemu: Fix UXTAB/UXTAHNormmatt1-4/+4
2014-12-17armemu: Fix SXTABNormmatt1-2/+2
2014-12-17armemu: Fix SXTAHNormmatt1-2/+3
2014-12-16armemu: Fix FTOUI NaN sign.Normmatt1-1/+1
2014-12-16armemu: Fix FSUBS bug where NaN shouldn't be negatedNormmatt1-1/+4
2014-12-16armemu: Fix SMUAD, SMUSD, and SMLADLioncash1-3/+3
2014-12-16armemu: Join SMUAD, SMUSD, and SMLADLioncash1-38/+35
2014-12-16armemu: Fix lower-bound signed saturation clamping for QADD16/QSUB16.Lioncash1-2/+2
2014-12-16armemu: Join QADD16 and QSUB16 together.Lioncash1-33/+37
2014-12-16armemu: Implement UXTAB16Lioncash1-10/+25
2014-12-15armemu: Fix UXTB16Lioncash1-12/+12
2014-12-15ARM: Pull some SkyEye fixes from 3dmoo.bunnei3-419/+485
2014-12-14Clean up armdefs.hLioncash1-306/+169
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner5-109/+109
2014-12-08armemu: Fix SSAXLioncash1-1/+1
2014-12-08armemu: Fix SASXLioncash1-1/+1
2014-12-08armemu: Fix parenthesis warnings regarding bitwise opsLioncash1-4/+4
2014-11-29dyncom: Use unordered_map rather than the terrible 2-level bb_mapYuri Kunde Schlesner1-33/+15
2014-11-29arm_dyncom_interpreter: Get rid of unused var warningsLioncash1-4/+2
2014-11-29Add comment regarding __WIN32__ in SkyEye codedarkf1-0/+4
2014-11-29Fix MinGW builddarkf1-0/+4
2014-11-25Remove unused includes to common/thread.hEmmanuel Gil Peyrot1-2/+0
2014-11-24HLE: Revamp error handling throrough the HLE codeYuri Kunde Schlesner1-16/+18
2014-11-24Change some SkyEye defines to const intsYuri Kunde Schlesner2-34/+16
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot7-12/+12
2014-11-18Fix documentation of parametersLioncash2-2/+2
2014-11-14ARM_Interface: Make destructor virtualLioncash1-1/+1
2014-11-12ARM: Fixed dyncom to use reg15 for PC (this core doesn't use pc variable).bunnei1-2/+2
2014-11-12ARM: Removed unnecessary goto with each instruction.bunnei1-43/+39
2014-11-12ARM: Fixed several dyncom bugs.bunnei3-17/+25
2014-11-03Fix compilation errorsSean Maas1-2/+2
2014-11-02ARM: Merged additional ARMv6 instructions implemented by 3dmoo.bunnei1-42/+234
2014-11-02ARM: Merge latest VFP fixes from 3dmoo team.bunnei4-2096/+2388
2014-10-31Fix VFP compilation errors with gccYuri Kunde Schlesner1-12/+12
2014-10-26vfp_helper: Get rid of integer type redefinitionsLioncash1-7/+1
2014-10-26Add `override` keyword through the code.Yuri Kunde Schlesner2-18/+18
2014-10-25ARM: Removed unnecessary and unused SkyEye MMU code.bunnei21-7728/+326
2014-10-25ARM: Removed unused armos code from SkyEye.bunnei3-746/+0
2014-10-25ARM: Updated dyncom core to use fast label lookup table on clang.bunnei1-3/+7
2014-10-25ARM: Integrate SkyEye faster "dyncom" interpreter.bunnei18-50/+8216
2014-10-25ARM: Reorganized file structure to move shared SkyEye code to a more common area.bunnei31-63/+63
2014-09-09core: Prune redundant includesarchshift1-1/+0
2014-09-09Added string_util to common, small changes in loader.cpparchshift1-39/+39
2014-09-07Dead code removal: video_core.cpp, load_symbol_map.cpparchshift1-1/+1
2014-09-06core: Make the ARM disassembler use std::string internallyLioncash3-189/+143
2014-08-31Threading: Fix thread starting to execute first instruction correctly.bunnei1-1/+1
2014-08-28Threading: Fix thread starting to execute first instruction correctly.bunnei1-1/+1
2014-08-20ARM: Remove a forgotten const in vfp.Emmanuel Gil Peyrot2-2/+2
2014-07-24ARM: Synchronize Citra's SkyEye core with 3dmoo's.bunnei6-5919/+5303
2014-07-20core: Kill off type redefenitions in armdefs.hLioncash1-7/+0
2014-06-05arm: fixed a bug where ARM_Interpreter::ExecuteInstructions was actually executing one more instruction than expectedbunnei1-1/+1
2014-06-05arm: fixed bug in how thread context switch occurs with SkyEyebunnei1-2/+5
2014-06-05arm: reverting a change made with cb0663de - this has to have been a typo!bunnei1-1/+1
2014-06-02arm: added option to prepare CPU core (while mid-instruction) for thread reschedulebunnei3-0/+11
2014-06-01Added 'this' reference to num_instructions field so it's properly updated,as before the method was affecting the local method parameter rather than the class fieldDisruption1-1/+1
2014-05-30arm: removed unnecessary code when calling SVC from skyeyebunnei1-16/+0
2014-05-23arm_interpreter: fixed load context to currently resume a threadbunnei1-1/+4
2014-05-21arm: removed include of windows.h from armdefs.h to arminit.c (only module that uses it)bunnei2-4/+3
2014-05-21armemu: missed rename of "Syscall" to "SVC"bunnei1-1/+1
2014-05-21ARM_Interpreter/ARM_Interface: Fixed member variable naming to be consistent with style guidebunnei3-45/+45
2014-05-21ARM_Interface: added SaveContext and LoadContext functions for HLE thread switchingbunnei3-1/+63
2014-05-20VFP: disable DBG messages because they spam the console with unimportant skyeye junkbunnei1-1/+1
2014-05-17Fixed vfp issuesarchshift4-10/+10
2014-05-17ignore thumbemu 0xDEADCODE debugging catch on MCRbunnei1-2/+1
2014-05-17updated how we call ARM core to make things much fasterbunnei5-20/+30
2014-05-17same fix as last commit - just for vfpsingle.cppbunnei1-2/+2
2014-05-17another VFP fix for GCCbunnei1-2/+2
2014-05-17fixed VFP DBG log for GCCbunnei1-1/+1
2014-05-17- reenabled MCR and MRC functions now that VFP is attachedbunnei2-95/+92
2014-05-17- removed unused stubbed out codebunnei5-33/+27
2014-05-16added maverick.cpp to ARM core from skyeyebunnei1-0/+1206
2014-05-16fixed includesbunnei1-2/+2
2014-05-16enabled CP_ACCESS_ALLOWEDbunnei1-6/+4
2014-05-16fixed include pathbunnei1-1/+1
2014-05-16removed undefined function ARMul_ConsolePrintbunnei1-1/+1
2014-05-16added missing armcopro from skyeyebunnei3-251/+1093
2014-05-16added missing skyeye mmu codebunnei9-17/+3272
2014-05-16fixed armmmu importsbunnei1-5/+5
2014-05-16- moved mmu to arm/interpreter folderbunnei13-0/+8755
2014-05-12added option to set CPSR register to arm_interfacebunnei3-0/+20
2014-05-07- disable strict alignment on LDRD/STRDbunnei1-17/+22
2014-05-06commented out useless debug logs that just spammed consolebunnei1-3/+3
2014-05-02- added CallMCR function to coprocessor HLE modulebunnei1-22/+23
2014-05-02renamed hle "mrc" module to "coprocessor"bunnei1-8/+8
2014-05-01added a module to load symbol map files for debuggingbunnei2-0/+46
2014-04-28removed DISALLOW_COPY_AND_ASSIGN in favor of NonCopyable classbunnei2-3/+1
2014-04-28removed commented out line - this was for an unimplemented MRC call, no longer need to leave this herebunnei1-1/+0
2014-04-25moved HLE::MRC to its own module, added support for catching data synchronization barrier commandbunnei2-3/+5
2014-04-25added disassembly to unimplemented instructionbunnei1-1/+6
2014-04-23fixes to build on linuxbunnei1-0/+2
2014-04-13- added HLE to connect to "srv:" servicebunnei1-33/+35
2014-04-12hacked CPU interpreter to ignore branch on SVC instruction (as we are HLEing this...)bunnei1-2/+6
2014-04-12added a SETABORT method that does not update LR (for HLE'd SVC that does not jump appcore CPU to an IRQ vector)bunnei1-0/+11
2014-04-11base code to call a syscall from ARM11 appcorebunnei1-0/+3
2014-04-11missed this file with commit 95e5436fbunnei1-1/+10
2014-04-11cleaned up arm_interface, added a setter to set registers for use with HLE return valuesbunnei2-6/+70
2014-04-09fixed licensing and updated code style naming for arm_interface/arm_interpreter frontend modulebunnei3-94/+57
2014-04-09fixed project includes to use new directory structurebunnei10-27/+27
2014-04-09got rid of 'src' folders in each sub-projectbunnei25-0/+15528