Sweden-Number/server
Rafał Harabień 77481d36d3 ntdll: Allow getting/setting x86_64 context of x86 processes in wine64.
WoW64 process has two separate contexts:
- x86 context used most of the time (e.g. by application code)
- x86_64 context used by system when it quits x86 emulation and jumps to
  the kernel code
A notable exception are debug registers - their state is shared. Some
debuggers make use of that fact and sets/gets debug registers of x86
processes using x86_64 thread context.

Add support for setting and getting debug registers using x86_64
thread context. Getting other registers is allowed too and will return
values from x86 thread context.

Fixes hardware breakpoints in IDA 7.0 disassembler (x86_64 app) when
debugging x86 (32 bit) applications.

Signed-off-by: Rafał Harabień <rafalh92@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 21:33:43 +01:00
..
Makefile.in server: Use l_intl.nls for case mappings. 2020-11-27 18:28:35 +01:00
async.c server: Use a callback to free the accept_req structure. 2021-02-10 15:35:46 +01:00
atom.c server: Remove support for process-local handle tables. 2021-02-16 11:13:41 +01:00
change.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
class.c server: Ignore low word of a class instance when looking up for a window class. 2020-02-27 23:34:51 +01:00
clipboard.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
completion.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
console.c server: Allow volume information queries to be asynchronous. 2021-02-15 16:09:03 +01:00
debugger.c server: Report load dll events upon mapping a SEC_IMAGE view. 2021-02-11 16:31:30 +01:00
device.c ntoskrnl.exe: Implement volume information queries for device files. 2021-02-15 16:20:42 +01:00
directory.c server: Add a request to return all object types. 2021-02-05 22:53:46 +01:00
event.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
fd.c server: Allow volume information queries to be asynchronous. 2021-02-15 16:09:03 +01:00
file.c server: Store the NT name in the fd object. 2021-02-09 14:17:51 +01:00
file.h server: Allow volume information queries to be asynchronous. 2021-02-15 16:09:03 +01:00
handle.c ntdll: Fill the object type index in System(Extended)HandleInformation. 2021-02-18 10:18:51 +01:00
handle.h server: Inherit standard handles together with explicit handle list. 2020-09-29 21:04:13 +02:00
hook.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
mach.c server: Don't change cached thread context in set_thread_context. 2020-04-22 16:47:41 +02:00
mailslot.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
main.c server: Create the NLS section object for the l_intl.nls file. 2020-11-27 18:28:35 +01:00
mapping.c server: Store a filename for memory views of .so dlls. 2021-02-15 12:24:15 +01:00
mutex.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
named_pipe.c server: Allow volume information queries to be asynchronous. 2021-02-15 16:09:03 +01:00
object.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
object.h server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
process.c ntdll: Implement NtQueryInformationToken(TokenLinkedToken). 2021-02-17 21:41:59 +01:00
process.h server: Remove the load/unload_dll requests and the dll list. 2021-02-11 16:31:30 +01:00
procfs.c server: Add a platform-specific entry point to initialize registers of a new thread. 2017-07-27 17:04:04 +02:00
protocol.def ntdll: Fill the object type index in System(Extended)HandleInformation. 2021-02-18 10:18:51 +01:00
ptrace.c server: Fix page size calculation in write access check. 2021-02-25 08:57:59 +01:00
queue.c server: Grow rawinput buffer instead of allocating its maximum size. 2021-02-09 11:39:47 +01:00
region.c server: Map region to the window DPI in redraw_region(). 2018-08-24 20:12:05 +02:00
registry.c server: Prevent unloading a registry hive while the key is in use. 2021-02-17 22:21:13 +01:00
request.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
request.h ntdll: ObjectName should also be used in NtUnloadKey. 2021-02-17 22:21:13 +01:00
security.h ntdll: Implement NtQueryInformationToken(TokenLinkedToken). 2021-02-17 21:41:59 +01:00
semaphore.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
serial.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
signal.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
sock.c server: Use a callback to free the accept_req structure. 2021-02-10 15:35:46 +01:00
symlink.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
thread.c ntdll: Allow getting/setting x86_64 context of x86 processes in wine64. 2021-03-09 21:33:43 +01:00
thread.h server: Don't store the debug object in the debugger thread. 2021-02-01 16:48:09 +01:00
timer.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
token.c server: Merge the various token information queries. 2021-02-17 21:42:18 +01:00
trace.c ntdll: Fill the object type index in System(Extended)HandleInformation. 2021-02-18 10:18:51 +01:00
unicode.c server: Store the NT name in the fd object. 2021-02-09 14:17:51 +01:00
unicode.h server: Create the NLS section object for the l_intl.nls file. 2020-11-27 18:28:35 +01:00
user.c server: Free client-side user handles at process exit. 2009-10-15 17:56:04 +02:00
user.h server: Support creating processes with specified parent. 2019-12-13 13:13:36 +01:00
window.c server: Store length of window text instead of null-terminating it. 2020-03-23 11:40:04 +01:00
wineserver.de.UTF-8.man.in server: Move WineHQ URLs to https. 2017-12-01 09:23:26 +01:00
wineserver.fr.UTF-8.man.in server: Move WineHQ URLs to https. 2017-12-01 09:23:26 +01:00
wineserver.man.in server: Move WineHQ URLs to https. 2017-12-01 09:23:26 +01:00
winstation.c server: Avoid redefining the DuplicateHandle() constants. 2021-02-16 21:20:47 +01:00