Zebediah Figura
7e4fd17d5b
dbghelp: Translate the 32-bit ELF symbol struct to the 64-bit one.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 09:21:49 +02:00
Zebediah Figura
51ada19ac2
dbghelp: Read the Elf_auxv_t struct corresponding to the target's architecture.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 09:21:38 +02:00
Zebediah Figura
bb53152faa
dbghelp: Read the Elf_Dyn struct corresponding to the target's architecture.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 09:21:34 +02:00
Zebediah Figura
bd620ffb44
dbghelp: Read the ELF program header corresponding to the target's architecture.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 09:21:28 +02:00
Huw Davies
cf78601b37
dbghelp: Add a missing include to fix the build.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 19:42:25 +02:00
Zebediah Figura
4005901773
dbghelp: Translate the 32-bit ELF section header to the 64-bit one.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 19:42:12 +02:00
Zebediah Figura
799e0bfa57
dbghelp: Translate the 32-bit ELF header to the 64-bit one.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 19:42:03 +02:00
Zebediah Figura
a612f1f56f
dbghelp: Detect ELF architecture before reading the whole header.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 19:41:54 +02:00
Zebediah Figura
c2c0e4fe51
dbghelp: Don't enforce child architecture in elf_map_file().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 19:41:46 +02:00
Zebediah Figura
185d9ee7eb
dbghelp: Correctly determine the wine loader base address.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-31 21:36:47 +02:00
Zebediah Figura
a981edf0bc
dbghelp: Determine the wine loader name from the target process's architecture.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-31 21:36:42 +02:00
Zebediah Figura
9b973eee9e
dbghelp: Add a helper to check if a given module is the Wine loader.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-31 21:35:48 +02:00
Martin Storsjo
e0780c258f
ntdll: Update the ARM64 CONTEXT struct to match Win SDK 10.0.16299.0.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 13:13:59 +01:00
Zebediah Figura
5d740ddcfe
dbghelp: Avoid an infinite loop.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-01 22:24:59 +01:00
Nikolay Sivov
6fd9a98f1d
dbghelp: Use correct module name buffer length when doing enumeration.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-31 17:54:55 +01:00
Nikolay Sivov
1d3c14d2d1
dbghelp: Use correct destination buffer length when initializing module data.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 20:42:07 +01:00
Nikolay Sivov
da1d075b83
dbghelp: Make sure returned module info strings are null-terminated.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 20:42:07 +01:00
Nikolay Sivov
aae9700acc
dbghelp: Preserve caller supplied structure size member in SymGetModuleInfo() functions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 20:42:07 +01:00
Alexandre Julliard
21c12ddc64
ntdll: Fix CONTEXT definition for ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:01 +01:00
Alexandre Julliard
eb337adcc2
ntdll: Fix CONTEXT definition for ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 13:21:31 +01:00
Zebediah Figura
00e27186ed
dbghelp: Silence a noisy FIXME.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-21 19:24:01 +02:00
Akihiro Sagawa
d47c07d0cf
dbghelp: Avoid using isdigit() for WCHARs.
...
Found with Coccinelle.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-16 18:58:58 +02:00
Daniel Lehman
8d6cf80026
dbghelp: Add support for char32_t type.
...
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-04 09:13:22 +02:00
Daniel Lehman
b316ac1897
dbghelp: Add support for char16_t type.
...
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-04 09:13:18 +02:00
Alexandre Julliard
74f05b8660
dbghelp: Use the main module load address from the PEB.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-25 20:53:04 +02:00
Michael Stefaniuc
329b1763cb
dbghelp: Use debugstr_a() to trace a string that can be NULL.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-12 19:03:19 +02:00
Jacek Caban
4bbb252adc
dbghelp: Removed no longer needed psapi import.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 13:25:14 +01:00
Nikolay Sivov
ab27cb48fc
dbghelp: Support CIE version 4 in parse_cie_details().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 10:41:07 +09:00
Jacek Caban
b15cccd2dc
dbghelp: Removed no longer needed wine_rb_destroy call.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-06 11:28:39 +09:00
Jacek Caban
acc0bb0521
rbtree.h: Pass compare function instead of wine_rb_functions to wine_rb_init.
...
Also change return type to void since the function can no longer fail.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:30:29 +09:00
Nikolay Sivov
99f56bf78d
dbghelp: Recognize DW_FORM_flag_present.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 10:53:11 +09:00
Austin English
6e0366fd5e
dbghelp: Add forwards for EnumerateLoadedModulesEx/EnumerateLoadedModulesExW.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-18 21:18:33 +09:00
Andrey Gusev
b3c254cd75
dbghelp: Fix a typo in comment.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:51 +09:00
Thomas Faber
e91c06b068
dbghelp: Use documented member name in SYMBOL_INFO structure.
...
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 12:20:58 +09:00
Michael Stefaniuc
c8ab4004ad
dbghelp: Use CONTAINING_RECORD instead of reimplementing it.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-08 21:29:15 +09:00
André Hentschel
d8a39d40d8
dbghelp: Add even more symbol types.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 19:39:22 +09:00
Ralf Habacker
6018064d59
dbghelp: Fix crash in module_find_cb on trying to parse non image files.
...
Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-11 16:43:21 +09:00
Austin English
4f3f8a8cb7
dbghelp: Version to 6.1.7601.17514.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-10 18:35:36 +09:00
Alexandre Julliard
1fa7710ff9
makefiles: Get rid of the DLLPREFIX variable.
...
Android libraries will be handled differently.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 12:12:58 +09:00
André Hentschel
ee88d4ed99
dbghelp: Initialize more basic types.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-13 22:21:13 +09:00
Qian Hong
fd9d4b6232
dbghelp: Parse DW_TAG_const_type inside dwarf2_parse_subprogram.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 23:34:57 +09:00
Qian Hong
62d6a09085
dbghelp: Parse DW_TAG_const_type inside dwarf2_parse_subprogram_block.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 23:34:57 +09:00
Ken Thomases
d5739561d8
dbghelp: Provide a default value for DYLD_FALLBACK_LIBRARY_PATH, which is closer to how dyld behaves.
2015-09-18 14:59:01 +02:00
Ken Thomases
8d6b349409
dbghelp: Fix a comment to reflect what the code's actually doing.
2015-09-18 14:58:58 +02:00
Ken Thomases
f458cd844a
dbghelp: On Mac, get the wineloader path from the target or our own process before resorting to guessing.
...
This makes backtraces more reliably complete when WINELOADER isn't set
and the loader isn't in a typical location.
2015-09-18 14:58:55 +02:00
Francois Gouget
f8a7d6ed74
Assorted spelling fixes.
2015-08-07 23:50:48 +09:00
Sebastian Lackner
fa4dfa4325
dbghelp: Implement UnDecorateSymbolNameW.
...
Also fixes a bug in UnDecorateSymbolName when undecorated_length == 0.
2015-08-06 23:36:02 +09:00
Ken Thomases
49f0bf6f0b
dbghelp: Ignore Mach-O segments other than __TEXT for images in dyld's shared cache.
...
Images in the shared cache have their segments mapped non-contiguously. We
don't know how to find where the non-__TEXT segments actually are. Also, the
code assumes that the image is mapped contiguously in various places. So, we
just ignore those segments.
Treating the non-contiguous segments as though they were contiguous caused
their apparent memory ranges to overlap, leading to addresses being attributed
to the wrong module, let alone symbol.
2015-08-04 12:21:58 +02:00
Ken Thomases
be68890cac
dbghelp: Fix a copy-paste error in comparing Mach-O segment names.
2015-08-04 12:21:58 +02:00
Ken Thomases
5c39776327
dbghelp: Add support for loading an external DWARF debug info file associated with a Mach-O module.
...
Such external debug info files are created by the dsymutil command. Usually, it
creates a <name>.dSYM bundle directory but it can also produce a <name>.dwarf
flat file. The code will find and use either. It first checks if such a bundle
or file is adjacent to the module binary. If it's not, it uses Spotlight to
search for a .dSYM bundle based on the binary's UUID, which is what gdb and lldb
do, too. That way, it can find it anywhere on the system.
2015-06-29 19:07:52 +09:00
Ken Thomases
70565f1b8b
dbghelp: Don't parse the DWARF info from Mach-O files if we were requested to only provide public symbols.
...
This now works more like how the ELF and PE support works.
2015-06-29 19:07:52 +09:00
Ken Thomases
83c1255f66
dbghelp: Fix mapping of DWARF register numbers on x86 OS X.
...
For backward compatibility with old, buggy GCC, Apple uses a different register
numbering scheme for the eh_frame section.
See, for reference, the comments near the top of this file from LLDB's source:
https://github.com/llvm-mirror/lldb/blob/release_36/source/Plugins/Process/Utility/RegisterContext_x86.h
2015-06-29 19:07:51 +09:00
Ken Thomases
3a9698f4af
dbghelp: Parse the DWARF information in Mach-O modules.
...
At this point, this is just the .eh_frame information used for walking the stack.
2015-06-25 14:29:38 +09:00
Ken Thomases
500df92108
dbghelp: Add partial support for version 3 of DWARF CIEs which are generated by Clang/LLVM.
2015-06-25 14:29:38 +09:00
Ken Thomases
0bfa11455c
dbghelp: Implement the image_private.h functions for Mach-O modules.
2015-06-25 14:29:38 +09:00
Ken Thomases
729b53fb9e
dbghelp: For Mach-O, keep the module file mapped for as long as the module is tracked.
2015-06-25 14:02:17 +09:00
Ken Thomases
e15e9331cb
dbghelp: Move the macho_file_map structure into image_file_map.
2015-06-25 14:02:12 +09:00
Ken Thomases
dcbec3bf6a
dbghelp: Use existing IMAGE_NO_MAP constant instead of redundant MACHO_NO_MAP.
2015-06-25 14:02:00 +09:00
Ken Thomases
41d741761f
dbghelp: Remove the unused arch_size field of struct macho_file_map.
...
It was set, but never read.
2015-06-25 14:01:54 +09:00
Ken Thomases
4923f9afd5
dbghelp: Enable enumerating and loading 64-bit Mach-O modules.
2015-06-25 14:01:49 +09:00
Ken Thomases
378d557d77
dbghelp: Fix a leak of the Mach-O module structure by adding a module_remove callback.
2015-06-25 14:01:32 +09:00
Ken Thomases
8430ebc6b5
dbghelp: Eliminate an unnecessary parameter from macho_load_debug_info().
...
From outside of macho_module.c, it's only called with NULL. When it's
called with a non-NULL parameter, it's just a thin wrapper around
macho_load_debug_info_from_map(), so the code can just call that
directly.
2015-06-25 14:01:26 +09:00
Ken Thomases
604ce29cb3
dbghelp: Fix STABS support for 64-bit on OS X.
...
OS X uses a struct nlist_64 for 64-bit images, where the n_value field is a
64-bit unsigned integer.
2015-06-25 14:01:10 +09:00
André Hentschel
bd1f7ef186
include: Rename 64-bit PState to 32-bit Cpsr on ARM64.
2015-06-15 14:51:33 +09:00
André Hentschel
8e0164bd26
include: Add more ARM64 CV constants.
2015-05-28 14:20:55 +09:00
André Hentschel
0d68edf03e
dbghelp: Fix typo in trace output.
2015-05-20 22:10:19 +09:00
Austin English
f832f85c80
dbghelp: Ignore some more symbol ids.
...
These are from MSVC 2013.
2015-05-20 17:32:49 +09:00
Grazvydas Ignotas
2fee06de49
dbghelp: Detect if return address information is missing.
2015-04-07 15:08:44 +09:00
Francois Gouget
ed82981ae0
dbghelp: Mark internal symbols with hidden visibility.
2015-03-16 15:06:29 +09:00
Francois Gouget
ba6e4ff66e
dbghelp: pe_unmap_directory() is unused so remove it.
2015-03-16 15:03:31 +09:00
Francois Gouget
654657b715
dbghelp: Remove an unneeded NONAMELESSSTRUCT directive.
2015-03-10 15:18:25 +09:00
Michael Stefaniuc
1328ec4854
dbghelp: Remove no-op additions with 0 (PVS-Studio).
2015-03-09 22:06:39 +09:00
Francois Gouget
11f985541a
dbghelp: Fix compilation on systems that don't support nameless unions.
2015-03-02 13:49:02 +09:00
David Heidelberg
e6e50f6c47
dbghelp: Implement DW_TAG_unspecified_type.
2015-02-13 00:45:25 +09:00
Charles Davis
b3232e7c9d
dbghelp: Support 64-bit dyld_all_image_infos structures, too.
2015-02-06 22:35:23 +09:00
Sebastian Lackner
c6fcb427a2
dbghelp: Don't fill KdHelp structure for usermode applications.
2015-02-03 14:40:50 +09:00
André Hentschel
b2f967e086
dbghelp: Fix compiler warnings with flag -Wunused-macros.
2014-12-10 13:31:05 +01:00
Bruno Jesus
a5c3f38773
dbghelp: Remove a dead assignment (Cppcheck).
2014-11-20 22:32:43 +09:00
David Heidelberger
4f18c053d3
winedbg: List Dwarf2 GNU extensions as TODO to workaround spam in debug.
2014-10-22 21:02:01 +09:00
David Heidelberger
df5ff98b07
dbghelp: Implement DW_TAG_const_type in dwarf2_parse_udt_type.
2014-10-09 17:36:22 +02:00
Gerald Pfeifer
a910704ccf
dbghelp: Do not try to ignore the return codes in PEV_ERROR and and PEV_ERROR1.
2014-07-28 17:22:23 -05:00
Austin English
8980a6fa5c
dbghelp: Ignore a few more symbol ids.
2014-07-14 09:57:48 +02:00
Ken Thomases
5acf1510fb
dbghelp: Ignore the __PAGEZERO segment.
...
It made it seem as though the wineloader always started at address 0.
Issue identified by Jacek Caban.
2014-07-07 23:00:52 +02:00
Ken Thomases
1f2680f5f3
dbghelp: If the caller didn't provide a module load address use the segment start address.
2014-07-07 23:00:47 +02:00
Victor Martinez Calvo
9eca0aa8a7
dbghelp: Fix invalid assignment in symt_fill_sym_info.
2014-04-30 18:32:21 +02:00
André Hentschel
46594b8e6b
dbghelp: Make pdb_load_stream_name_table a void function.
2014-04-29 11:18:56 +02:00
André Hentschel
1986dabc3e
dbghelp: Use boolean return value in boolean function.
2014-04-29 11:18:51 +02:00
Alistair Leslie-Hughes
b816a8e629
dbghelp: Improve dwarf support.
2014-03-26 19:20:42 +01:00
Alexandre Julliard
cf0e96c6d0
configure: Rename substituted variables to a standard _CFLAGS and _LIBS format.
2014-01-30 14:51:33 +01:00
Andrey Gusev
e7f0a8a081
Assorted spelling and typos fixes.
2014-01-27 17:00:11 +01:00
Frédéric Delanoy
74b0f6b4ad
dbghelp: Remove an "#if 1" preprocessor directive.
2014-01-13 17:36:59 +01:00
Frédéric Delanoy
91f2435469
Assorted spelling fixes.
2014-01-09 17:39:59 +01:00
Alexandre Julliard
5e7416e5c8
makefiles: Get rid of the MAKE_DLL_RULES variable.
2014-01-02 12:08:18 +01:00
Frédéric Delanoy
d066561625
dbghelp: Constify some character strings.
2013-12-16 12:02:49 +01:00
Ken Thomases
1577fb6c3f
dbghelp: For Mach-O, get the address of the process's image info from its PEB.
2013-12-05 12:40:56 +01:00
Frédéric Delanoy
5ba7f79bad
Assorted spelling fixes.
2013-12-03 19:41:53 +01:00
Ken Thomases
15467577fc
dbghelp: Add debug logging to some error paths in the Mach-O support.
2013-12-03 12:34:45 +01:00
Ken Thomases
3fe34fe346
dbghelp: Fix some parameter names and types in the Mach-O support.
2013-12-03 12:33:55 +01:00
Stefan Leichter
89832cde4e
dbghelp: Add a null check for optional output parameter for function SymFromAddr.
2013-12-02 10:50:32 +01:00
Frédéric Delanoy
1d65efe50b
dbghelp: Use BOOL type where appropriate.
2013-11-12 12:58:03 +01:00