aboutsummaryrefslogtreecommitdiff
path: root/src/core/arm
AgeCommit message (Collapse)Author
2018-07-02Update clang formatJames Rowe
2018-07-02Rename logging macro back to LOG_*James Rowe
2018-06-06GDB Stub Improvements (#508)Hedges
* GDB Stub should work now. * Applied clang-format. * Replaced htonll with swap64. * Tidy up.
2018-05-10core: Implement multicore support.bunnei
2018-05-02general: Make formatting of logged hex values more straightforwardLioncash
This makes the formatting expectations more obvious (e.g. any zero padding specified is padding that's entirely dedicated to the value being printed, not any pretty-printing that also gets tacked on).
2018-04-27general: Convert assertion macros over to be fmt-compatibleLioncash
2018-04-26core: Replace remaining old non-generic logger usages with fmt-capable ↵Lioncash
equivalents LOG_GENERIC usages will be amended in a follow-up to keep API changes separate from interface changes, as it will require removing a parameter from the relevant function in the VMManager class.
2018-03-24arm_dynarmic: Fix timingMerryMage
2018-03-19Clean Warnings (?)N00byKing
2018-03-18Merge pull request #193 from N00byKing/3184_2_robotic_boogaloobunnei
Implement Pull #3184 from citra: core/arm: Improve timing accuracy before service calls in JIT (Rebased)
2018-03-16arm_interface: Support unmapping previously mapped memory.bunnei
2018-03-14core: Move process creation out of global state.bunnei
2018-02-25Implements citra-emu/citra#3184N00byKing
2018-02-23Merge pull request #212 from mailwl/stubsbunnei
Stub some functions
2018-02-22Stub am::SetScreenShotPermission, and bsd::StartMonitoring functionsmailwl
2018-02-21dynarmic: Update to 6b4c6b0MerryMage
6b4c6b0 impl: Update PC when raising exception 7a1313a A64: Implement FDIV (vector) b2d781d system: Raise exception for YIELD, WFE, WFI, SEV, SEVL b277bf5 Correct FPSR and FPCR 7673933 A64: Implement USHL 8d0e558 A64: Implement UCVTF (vector, integer), scalar variant da9a4f8 A64: Partially implement FCVTZU (scalar, fixed-point) and FCVTZS (scalar, fixed-point) 7479684 A64: Implement system register TPIDR_EL0 0fd75fd A64: Implement system registers FPCR and FPSR 31e370c A64: Implement system register CNTPCT_EL0 9a88fd3 A64: Implement system register CTR_EL0 1d16896 A64: Implement NEG (vector) 3184edf IR: Add IR instruction ZeroVector 31f8fbc emit_x64_floating_point: Add maybe_unused to preprocess parameter 567eb1a A64: Implement FMINNM (scalar) c6d8fa1 A64: Implement FMAXNM (scalar) 616056d constant_pool: Add frame parameter a3747cb A64: Implement ADDP (scalar) 5cd5d9f reg_alloc: Only exchange GPRs dd0452a A64: Implement DUP (element), scalar variant e5732ea emit_x64_floating_point: Correct FP{Max,Min}{32,64} implementations for -0/+0 40eb9c3 A64: Implement FMAX (scalar), FMIN (scalar) 7cef39b fuzz_with_unicorn: QEMU's implementation of FCVT is incorrect 826dce2 travis: Switch unicorn repository 9605f28 a64/config: Allow NaN emulation accuracy to be set e9435bc a64_emit_x64: Add conf to A64EmitContext 30b596d fuzz_with_unicorn: Explicitly test floating point instructions be292a8 A64: Implement FSQRT (scalar) 3c42d48 backend_x64: Accurately handle NaNs 4aefed0 fuzz_with_unicorn: Print AArch64 disassembly
2018-02-21arm_dynarmic: LOG_INFO on unicorn fallbackMerryMage
2018-02-12arm_dynarmic: Support direct page table accessMerryMage
2018-02-09dynarmic: Update to 41ae12263MerryMage
Changes: Primarily implementing more A64 instructions
2018-01-19Fixes some cast warnings, partial port of citra #3064 (#106)River City Ransomware
* Fixes some cast warnings, partially fixes citra #3064 * Converted casts to uint32_t to u32 * Ran clang-format
2018-01-16clang-formatMerryMage
2018-01-16Build: Automagically handle unicornJames Rowe
On MSVC if unicorn isn't found, fallback to bundled unicorn On everything else, fallback to building unicorn in externals Also fixes loading unicorn in msvc
2018-01-16Build: Add unicorn as a submodule and build it if neededJames Rowe
Adds a cmake custom target that will build unicorn on first compile and uses this in the build scripts as well. Updates Appveyor and Travis build scripts to work with the new unicorn build, and updates the paths to all of the different artifacts.
2018-01-13Update dynarmic to bc73004MerryMage
bc73004 a64_merge_interpret_blocks: Remove debug output 4e656ed tests/A64: Randomize PSTATE.<NZCV> fd9530b A64: Optimization: Merge interpret blocks 3c9eb04 testenv: Use format constants 324f3fc tests/A64: Unicorn interface fixes 98ecbe7 tests/A64: Fuzz against unicorn b1d38e7 tests/A64: Move TestEnvironment to own header 5218ad9 A64/data_processing_pcrel: bug: ADR{,P} instructions sign extend their immediate b1a8c39 A64/data_processing_addsub: bug: {ADD,SUB}S (extended register) instructions write to ZR when d = 31 64827fb a64_emit_x64: bug: A64CallSupervisor trampled callee-save registers 1bfa04d emit_x64: bug: OP m/r64, imm32 form instructions sign-extend their immediate on x64 edadeea A64 inferface: Use two argument static_assert 9ab1304 A64: Add ExceptionRaised IR instruction 6843eed Update readme 7438d07 A64/translate: Add TranslateSingleInstruction function
2018-01-13arm_unicorn: Log unmapped memory access address.bunnei
2018-01-13yuzu: Update license text to be consistent across project.bunnei
2018-01-12arm_dynarmic: Implement coreMerryMage
2018-01-04arm_unicorn: Load/release unicorn DLL.bunnei
2018-01-04unicorn: Use for arm interface on Windows.bunnei
2018-01-04arm_dynarmic: More cleanup.bunnei
2018-01-03arm_dynarmic: Gut interface until dynarmic is ready for general use.bunnei
2018-01-02arm: Remove SkyEye/Dyncom code that is ARMv6-only.bunnei
2017-10-23logging: Rename category "Core_ARM11" to "Core_ARM".bunnei
2017-10-09Merge remote-tracking branch 'upstream/master' into nxbunnei
# Conflicts: # src/core/CMakeLists.txt # src/core/arm/dynarmic/arm_dynarmic.cpp # src/core/arm/dyncom/arm_dyncom.cpp # src/core/hle/kernel/process.cpp # src/core/hle/kernel/thread.cpp # src/core/hle/kernel/thread.h # src/core/hle/kernel/vm_manager.cpp # src/core/loader/3dsx.cpp # src/core/loader/elf.cpp # src/core/loader/ncch.cpp # src/core/memory.cpp # src/core/memory.h # src/core/memory_setup.h
2017-09-30arm_interface: Set TLS address for dynarmic core.bunnei
2017-09-30arm: Use 64-bit addressing in a bunch of places.bunnei
2017-09-30Moved down_count to CoreTimingHuw Pascoe
2017-09-24ARM_Interface: Implement PageTableChangedMerryMage
2017-09-15Merge pull request #2842 from Subv/switchable_page_tableB3n30
Kernel/Memory: Give each process its own page table and allow switching the current page table upon reschedule
2017-09-15CPU/Dynarmic: Disable the fast page-table access in dynarmic until it ↵Subv
supports switching page tables at runtime.
2017-08-21CPU/Dynarmic: Fixed a warning when incrementing the number of ticks in ↵Subv
ExecuteInstructions.
2017-08-21Dyncom: Use size_t instead of int to store the instruction offsets in the ↵Subv
instruction cache. Fixes a few warnings.
2017-08-21Dyncom: Fixed a conversion warning when decoding thumb instructions.Subv
2017-05-22Merge pull request #2692 from Subv/vfp_ftzSebastian Valle
Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
2017-05-21fixup! Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.Subv
2017-05-22Merge pull request #2694 from Subv/vfp_vsub_ftzMerry
Dyncom/VFP: Perform flush-to-zero on the second operand of vsub before sending it to vadd.
2017-05-13Dyncom/VFP: Perform flush-to-zero on the second operand of vsub before ↵Subv
sending it to vadd. Previously we were letting vadd flush the value to positive 0, but there are cases where this behavior is wrong, for example, vsub: -0 - +0 = -0 vadd: -0 + +0 = +0 Now we'll flush the value to +0 inside vsub, and then negate it.
2017-05-08Merge pull request #2696 from Subv/vfp_revertYuri Kunde Schlesner
Dyncom/VFP: Revert edf30d8 and fix the FPSCR getting invalid values.
2017-05-09Dyncom/VFP: Strip the VFP_NAN_FLAG sentinel value when setting vfp exceptions.Subv
2017-05-09Revert "Remove `exceptions` parameter from `normaliseround` VFP functions"Subv
This reverts commit edf30d84cc0e8299d61c98f5bb40a6428d1576bc. Conflicts: src/core/arm/skyeye_common/vfp/vfp_helper.h src/core/arm/skyeye_common/vfp/vfpdouble.cpp src/core/arm/skyeye_common/vfp/vfpsingle.cpp