Brendan Shanks bshanks@codeweavers.com writes:
On Nov 14, 2019, at 12:31 AM, Alexandre Julliard julliard@winehq.org wrote:
Brendan Shanks bshanks@codeweavers.com writes:
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47571 Signed-off-by: Brendan Shanks bshanks@codeweavers.com
dlls/ntdll/Makefile.in | 1 + dlls/ntdll/signal_i386.c | 19 + dlls/ntdll/signal_x86_64.c | 19 + dlls/ntdll/umip.c | 780 +++++++++++++++++++++++++++++++++++++ dlls/ntdll/umip.h | 21 + 5 files changed, 840 insertions(+) create mode 100644 dlls/ntdll/umip.c create mode 100644 dlls/ntdll/umip.h
Please also merge this with the existing is_privileged_instr() functions in the respective signal_*.c files, we don't need to parse the code multiple times for the same exception.
Sure, I can do that. Did you want all the parsing/emulation code merged into the signal_*.c files, so there would be no separate umip.c file? Or I can have is_privileged_instr() just detect the UMIP instructions and then call into the additional parsing/emulation in umip.c, this would remove the redundant virtual_uninterrupted_read_memory() call from umip.c.
It can all be merged, I don't think this requires a separate file.