- 20 Oct, 2022 10 commits
-
-
Ziqing Hui authored
-
Ziqing Hui authored
-
Ziqing Hui authored
-
Rémi Bernon authored
Fixes "Use of uninitialized value $Flaky" message in testbot reports.
-
Rémi Bernon authored
Fixes "Use of uninitialized value $Flaky" message in testbot reports.
-
Rémi Bernon authored
Fixes "Use of uninitialized value $Flaky" message in testbot reports.
-
Florian Kübler authored
This change is adding DWARF (CFI) unwind information to the hand-written assembly of the `__wine_syscall_dispatcher` function. This enables unwinding through the dispatcher from the Linux stack into (and through) the Windows stack. The general idea is that the `syscall_frame` struct contains the content of the callee-save registers before the function call (in particular the stack pointer and the return address). At any point of the execution, we have a pointer into the `syscall_frame` in $rcx, $rbp or $rsp. For the CFI codes the general idea is that we are defining the computations of the callee-save registers based on the `syscall_frame` using DWARF’s `breg` instruction, rather than relative to CFA. This change adds a bunch of convenience macros, to (hopefully) improve readability of the CFI instructions. Note: Those change was used with great success for unwinding through the dispatcher using a modified LLDB shown in the “how-wine-works-101” (https://werat.dev/blog/how-wine-works-101/) blog post as well as for in the Orbit profiler (https://github.com/google/orbit), that has mixed-callstack unwinding support. Test: Inspect callstacks reported by the Orbit profiler while running some Windows targets using the modified wine, as well as verify debugging reports correct callstacks when stepping with our modified LLDB through the dispatcher itself (so that we are able to unwind through the dispatcher at any instruction).
-
Etaash Mathamsetty authored
-
Etaash Mathamsetty authored
-
Etaash Mathamsetty authored
-
- 19 Oct, 2022 30 commits
-
-
Alex Henrie authored
Needed to compile Tera Term.
-
Piotr Caban authored
-
Gerald Pfeifer authored
On FreeBSD 12 and 14 ENODATA is not regularly defined. Cater to that in fd_get_file_info() and get_file_info().
-
Alistair Leslie-Hughes authored
-
Hugh McMaster authored
-
Eric Pouech authored
In some 32bit modules, MingW/GCC generates in Dwarf debug information, a cfa address to be computed as: deref(register XX + offset) which is too complicated to be expressed through regular DbgHelp APIs. So silence the FIXME, and report a 'too complex' error (instead of 'internal'). Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52790Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
-
Eric Pouech authored
This improves correctness of functions like SymFromAddr() when searching local variables. Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
-
Eric Pouech authored
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
-
Eric Pouech authored
- split in two sub helpers (one to get size, the other to fill content in) (this avoids reallocating buffer) - return error in case no range is present (but range dwarf attribute is) Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
-
Chilung Chan authored
-
Zhiyi Zhang authored
-
Zhiyi Zhang authored
-
Zhiyi Zhang authored
-
Zhiyi Zhang authored
-
Zhiyi Zhang authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Bartosz Kosiorek authored
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45273
-
Bartosz Kosiorek authored
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45273
-
Bartosz Kosiorek authored
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45273
-
Bartosz Kosiorek authored
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45273
-
Piotr Caban authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Piotr Caban authored
-
Alex Henrie authored
Needed to compile PuTTY.
-