Commit graph

43 commits

Author SHA1 Message Date
Rozlette
425a78ec1b gdbstub: Update registers and sizes for aarch64
This gets gdbstub working at least to the point where clients can
communicate with it.

What works:
- Reading/writing GPRegs
- Reading/writing memory
- Interrupting the emulated program and continuing

What does NOT work:
- Breakpoints. Sizes have been updated to u64, but support will need to be
  added in the interpreter for them to work.
- VRegs. Mostly because my gdb was having issues with 128-bit regs for
  some reason. However, the current u128 representation is a bit
  awkward to use and should probably be updated first.
2018-01-21 11:12:49 -06:00
James Rowe
096be16636 Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00
River City Ransomware
dd62f125c3 Fixes some cast warnings, partial port of citra #3064 (#106)
* Fixes some cast warnings, partially fixes citra #3064

* Converted casts to uint32_t to u32

* Ran clang-format
2018-01-19 18:01:41 -05:00
River City Ransomware
d05dc3f4dd Fix gdbstub typo, fixes Citra #3318
Core::System().GetInstance().IsPoweredOn() -> Core::System::GetInstance().IsPoweredOn()
2018-01-17 09:25:25 -05:00
bunnei
b172f0d770 arm: Remove SkyEye/Dyncom code that is ARMv6-only. 2018-01-02 22:24:12 -05:00
bunnei
b1d5db1cf6 Merge remote-tracking branch 'upstream/master' into nx
# 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-10-09 23:56:20 -04:00
Subv
7772fc0731 Memory: Remove all GetPointer usages from the GDB stub. 2017-10-04 11:33:32 -05:00
bunnei
3411883fe3 arm: Use 64-bit addressing in a bunch of places. 2017-09-30 14:28:53 -04:00
Huw Pascoe
a13ab958cb Fixed type conversion ambiguity 2017-09-30 09:34:35 +01:00
Mat M
0cb52ee74a Doxygen: Amend minor issues (#2593)
Corrects a few issues with regards to Doxygen documentation, for example:

- Incorrect parameter referencing.
- Missing @param tags.
- Typos in @param tags.

and a few minor other issues.
2017-02-26 17:58:51 -08:00
Jonathan Hao
c18cb1b192 Fix some warnings (#2399) 2017-01-04 13:48:29 -03:00
bunnei
e26fbfd1d7 core: Replace "AppCore" nomenclature with just "CPU". 2016-12-22 00:27:46 -05:00
bunnei
5ac5cbeab7 Address clang-format issues. 2016-12-21 23:48:14 -05:00
bunnei
232ef55c1a core: Consolidate core and system state, remove system module & cleanups. 2016-12-21 23:29:13 -05:00
Lioncash
38a964735f gdbstub: const correctness changes
Also uses size_t as the length indicator type, as is common with buffers.
2016-12-16 04:06:26 -05:00
Lioncash
ba20dd9b61 gdbstub: Remove global variable from public interface
Currently, this is only ever queried, so adding a function to check if the
server is enabled is more sensible.

If directly modifying this externally is ever desirable, it should be done
by adding a function to the interface, rather than exposing implementation
details directly.
2016-12-15 16:37:22 -05:00
Jannik Vogel
0aee903ada gdbstub: Remove unused include 2016-12-05 19:09:16 +01:00
Jannik Vogel
45d941d62e Support mingw cross-compile 2016-12-05 19:09:16 +01:00
James Rowe
c3ea6f4ddb Add mingw compile support 2016-11-13 23:50:46 -07:00
mailwl
3c37ee434a Small fix to let IDA see target.xml 2016-10-28 20:50:45 +03:00
Yuri Kunde Schlesner
f120e78b56 Remove special rules for Windows.h and library includes 2016-09-21 00:16:33 -07:00
Emmanuel Gil Peyrot
ebdae19fd2 Remove empty newlines in #include blocks.
This makes clang-format useful on those.

Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
2016-09-21 11:15:47 +09:00
Emmanuel Gil Peyrot
dc8479928c Sources: Run clang-format on everything. 2016-09-18 09:38:01 +09:00
shinyquagsire23
c6f87f7e2c gdbstub: E0 should be E00 2016-06-08 14:14:59 -07:00
Lioncash
0a52e1f587 gdbstub: Silence missing prototype warnings 2016-05-10 09:17:07 -04:00
Alexander Laties
0a31e373f1 fixup simple type conversions where possible 2016-05-07 11:41:55 -04:00
Sam Spilsbury
41ec40e9aa gdbstub: Don't check if unsigned int is > 0 2016-04-23 11:54:02 +08:00
polaris-
44d746fc92 Adopted WinterMute's gdbstub changes
This fixes the comments left on the PR (whitespace, SO_REUSEADDR,
comment changes).
2016-04-06 07:01:00 -04:00
LittleWhite
89a43b8447 Fix missing header 2016-03-20 14:35:51 +01:00
polaris-
2732ec758d Fix read and write register blocks in gdbstub
Previously, the padding wasn't correctly accounted for which caused the gdbstub to read and write everything after R15 (starting with the dummy FPA registers) incorrectly, which caused CPSR to not be handled correctly. Everything appears to be working as expected with this change.
2015-11-22 07:48:26 -05:00
polaris-
bcea959910 Fix bug with reading addresses and lengths 2015-11-03 21:50:53 -05:00
polaris-
b6422038b5 Change headers 2015-10-29 06:17:29 -04:00
polaris-
a7eb6a4045 Add some headers so TravisCI will hopefully work 2015-10-22 00:31:49 -04:00
polaris-
45ed9e7e5e Use CHAR_BIT instead of 8 2015-10-22 00:19:44 -04:00
polaris-
a5ab8accc2 Handle changes pointed out in comments on PR 2015-10-22 00:11:25 -04:00
polaris-
d1f73c424f Add a register variable to loops 2015-10-21 07:45:35 -04:00
polaris-
d7e346239b Update register read loops to go with last commit 2015-10-21 07:40:30 -04:00
polaris-
8a0d848646 Pad responses to gdb for VFP registers 2015-10-21 07:19:03 -04:00
polaris-
53aa55fcaa Try to add support for VFP registers 2015-10-21 07:14:43 -04:00
polaris-
9f66580d7e Fix buffer overflow comments 2015-10-21 06:49:49 -04:00
polaris-
2b7316a379 Remove unnecessary new lines, changed Deinit to Shutdown 2015-10-11 20:07:58 -04:00
polaris-
42928659e8 Use BreakpointAddress struct instead of passing address directly 2015-10-04 11:22:31 -04:00
polaris-
31dee93e84 Implement gdbstub 2015-10-04 11:16:59 -04:00