aboutsummaryrefslogtreecommitdiff
path: root/src/core/arm
AgeCommit message (Collapse)Author
2014-12-16Merge pull request #290 from lioncash/vsubbunnei
armemu: Backport some VFP fixes from 3dmoo.
2014-12-16armemu: Fix FTOUI NaN sign.Normmatt
2014-12-16armemu: Fix FSUBS bug where NaN shouldn't be negatedNormmatt
2014-12-16armemu: Fix SMUAD, SMUSD, and SMLADLioncash
Wrong values were being multiplied together.
2014-12-16armemu: Join SMUAD, SMUSD, and SMLADLioncash
2014-12-16armemu: Fix lower-bound signed saturation clamping for QADD16/QSUB16.Lioncash
2014-12-16armemu: Join QADD16 and QSUB16 together.Lioncash
The only difference between these ops is one adds and one subtracts. Everything is literally the same.
2014-12-15armemu: Implement UXTAB16Lioncash
2014-12-14armemu: Fix UXTB16Lioncash
Rotation bits are 10 and 11, not 9 and 10.
2014-12-14Merge pull request #276 from lioncash/decrappifybunnei
Clean up armdefs.h a little.
2014-12-14ARM: Pull some SkyEye fixes from 3dmoo.bunnei
2014-12-14Clean up armdefs.hLioncash
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner
2014-12-08armemu: Fix SSAXLioncash
2014-12-08armemu: Fix SASXLioncash
2014-12-07armemu: Fix parenthesis warnings regarding bitwise opsLioncash
2014-11-30Merge pull request #235 from yuriks/dyncom-mapbunnei
dyncom: Use unordered_map rather than the terrible 2-level bb_map
2014-11-29dyncom: Use unordered_map rather than the terrible 2-level bb_mapYuri Kunde Schlesner
Seems (probably just placebo/wishful thinking) to make it slightly faster. Also reduces memory usage and makes shutdown when debugging from MSVC fast.
2014-11-29arm_dyncom_interpreter: Get rid of unused var warningsLioncash
2014-11-28Add comment regarding __WIN32__ in SkyEye codedarkf
2014-11-28Fix MinGW builddarkf
2014-11-25Remove unused includes to common/thread.hEmmanuel Gil Peyrot
2014-11-24HLE: Revamp error handling throrough the HLE codeYuri Kunde Schlesner
All service calls in the CTR OS return result codes indicating the success or failure of the call. Previous to this commit, Citra's HLE emulation of services and the kernel universally either ignored errors or returned dummy -1 error codes. This commit makes an initial effort to provide an infrastructure for error reporting and propagation which can be use going forward to make HLE calls accurately return errors as the original system. A few parts of the code have been updated to use the new system where applicable. One part of this effort is the definition of the `ResultCode` type, which provides facilities for constructing and parsing error codes in the structured format used by the CTR. The `ResultVal` type builds on `ResultCode` by providing a container for values returned by function that can report errors. It enforces that correct error checking will be done on function returns by preventing the use of the return value if the function returned an error code. Currently this change is mostly internal since errors are still suppressed on the ARM<->HLE border, as a temporary compatibility hack. As functionality is implemented and tested this hack can be eventually removed.
2014-11-24Change some SkyEye defines to const intsYuri Kunde Schlesner
This prevents them from interfering with other constants defined in different namespaces.
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP ↵Emmanuel Gil Peyrot
or generated
2014-11-18Fix documentation of parametersLioncash
2014-11-15Merge pull request #194 from lioncash/virtbunnei
ARM_Interface: Make destructor virtual
2014-11-14ARM_Interface: Make destructor virtualLioncash
Fixes some warnings on OSX.
2014-11-11ARM: Fixed dyncom to use reg15 for PC (this core doesn't use pc variable).bunnei
- Fixes single stepping in debugger.
2014-11-11ARM: Removed unnecessary goto with each instruction.bunnei
2014-11-11ARM: Fixed several dyncom bugs.bunnei
- 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.
2014-11-02Fix compilation errorsSean Maas
2014-11-02ARM: Merged additional ARMv6 instructions implemented by 3dmoo.bunnei
2014-11-02ARM: Merge latest VFP fixes from 3dmoo team.bunnei
2014-10-30Fix VFP compilation errors with gccYuri Kunde Schlesner
2014-10-27Merge pull request #153 from yuriks/add-overridebunnei
Add override keyword where appropriate
2014-10-26vfp_helper: Get rid of integer type redefinitionsLioncash
2014-10-26Add `override` keyword through the code.Yuri Kunde Schlesner
This was automated using `clang-modernize`.
2014-10-25ARM: Removed unnecessary and unused SkyEye MMU code.bunnei
Added license header back in. I originally removed this because I mostly rewrote the file, but meh
2014-10-25ARM: Removed unused armos code from SkyEye.bunnei
2014-10-25ARM: Updated dyncom core to use fast label lookup table on clang.bunnei
2014-10-25ARM: Integrate SkyEye faster "dyncom" interpreter.bunnei
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.
2014-10-25ARM: Reorganized file structure to move shared SkyEye code to a more common ↵bunnei
area. Removed s_ prefix
2014-09-13Merge pull request #97 from archshift/cleanupbunnei
Small, general code cleanup
2014-09-11Merge pull request #99 from archshift/ext-checkbunnei
loader.cpp: improved file extension checking, made Upper/LowerStr useful, moved string_util into Common namespace
2014-09-08core: Prune redundant includesarchshift
2014-09-08Added string_util to common, small changes in loader.cpparchshift
2014-09-07Dead code removal: video_core.cpp, load_symbol_map.cpparchshift
2014-09-06core: Make the ARM disassembler use std::string internallyLioncash
2014-08-28Threading: Fix thread starting to execute first instruction correctly.bunnei