Alexandre Julliard
16a2ea5c8f
dbghelp: Use wine64 as loader name on 64-bit.
2011-01-28 11:57:46 +01:00
Alexandre Julliard
3bae7d0383
dbghelp: Add a helper function to determine the name of the wine loader.
2011-01-28 11:41:14 +01:00
Alexandre Julliard
9926ca771b
dbghelp: Use Dwarf debug info even when part of it is missing.
2011-01-24 15:52:42 +01:00
Eric Pouech
67a55feeaf
dbghelp, winedump: Added definition for S_FRAMEPROC_V2 symbol (CodeView).
2011-01-19 12:25:05 +01:00
Eric Pouech
60fbda43cb
dbghelp: Use AT_range attribute (for function, block... addresses) when AT_low_pc and AT_high_pc are not present.
2011-01-19 12:24:42 +01:00
Eric Pouech
e72d5d6de4
dbghelp: When failing to look up for a PDB file, don't keep a module format object around.
2011-01-18 12:36:36 +01:00
Eric Pouech
711f71639d
dbghelp: Get stream indexes out of PDB files (instead of hardwired values).
2011-01-18 12:36:30 +01:00
Eric Pouech
8595f6c652
dbghelp: Add support for stream lookup by name in PDB files and use it for strings stream.
2011-01-18 12:36:21 +01:00
Alexandre Julliard
cf1cd33570
dbghelp: Support pointer types of various sizes.
2011-01-13 20:09:49 +01:00
Alexandre Julliard
530e9c9b17
dbghelp: Try to load the string table from file number 4 too.
2011-01-12 10:45:49 +01:00
Eric Pouech
c7c8c0dea7
dbghelp: Speed up source string creation (by using rb trees).
2011-01-10 13:03:52 +01:00
Eric Pouech
cbd5811e90
dbghelp: Better support for OOM conditions when creating source file table.
2011-01-10 13:03:52 +01:00
Eric Pouech
99439e7589
dbghelp: Added preliminary extended FPO information out of PDB files.
2011-01-10 12:52:18 +01:00
Eric Pouech
5ce195ae89
dbghelp: Keep the mapping of any PDB file open until the module is unloaded.
2011-01-10 12:52:11 +01:00
Eric Pouech
0693572e4c
dbghelp: Use new file/debug format framework to allow keeping pdb files opened.
2011-01-10 12:52:01 +01:00
Eric Pouech
1acbb1c0ed
dbghelp: Restructure internal PDB information.
2011-01-10 12:51:39 +01:00
Gerald Pfeifer
061b50eda5
dbghelp: Also return a value in an error case in elf_map_file_read.
2011-01-03 11:54:03 +01:00
Gerald Pfeifer
8f7d06b69b
dbghelp: Make ehdr_addr in elf_enum_modules_internal dependent on AT_SYSINFO_EHDR.
2010-12-29 11:59:33 +01:00
Eric Pouech
1966ba8b7f
dbghelp: For targets on Linux, report the VDSO system page as a known ELF module.
2010-12-28 11:18:33 +01:00
Eric Pouech
749dafd987
dbghelp: Extend elf_map_file so that it can also handle ELF maps directly from debuggee address space.
2010-12-28 11:16:07 +01:00
Eric Pouech
737b5b95bb
dbghelp: Use pread instead of read in elf_map_file.
2010-12-28 11:15:24 +01:00
Eric Pouech
655247354a
dbghelp: Split elf_load_file into two functions (one for creating a file-map, another one for loading info out of a file-map).
2010-12-28 11:15:06 +01:00
Eric Pouech
8740f1dc1e
dbghelp: Factorize a bit the ELF enumeration callbacks.
2010-12-28 11:14:43 +01:00
Eric Pouech
cf06ef640d
dbghelp: Fix ELF file computation on 64bit systems.
2010-12-27 11:47:51 +01:00
André Hentschel
a4c1b34146
dbghelp: Implement arm_get_addr.
2010-10-15 11:32:44 +02:00
Eric Pouech
8d981b87f1
dbghelp: Proper support and definition for S_REGREL_V3.
2010-10-11 17:11:24 +02:00
Eric Pouech
fac5abc551
dbghelp: Ensure the stab_nlist structure is usable on 64bit systems.
2010-10-11 17:11:24 +02:00
Eric Pouech
854379bbaa
dbghelp: Fix some relocation errors for debug formats out of ELF files.
2010-10-11 17:11:24 +02:00
Eric Pouech
922caac23b
dbghelp: Compute ELF load address using the link_map ld's address (and get correct relocation computation).
2010-10-11 17:11:24 +02:00
Eric Pouech
2662ed10c8
dbghelp: When enumerating loaded modules from r_debug structure, pass the address of the dynamic section as well.
2010-10-11 17:11:24 +02:00
Eric Pouech
2a87a89680
dbghelp: Only map an ELF file once.
2010-10-11 17:11:17 +02:00
Eric Pouech
580cab9d8b
dbghelp: A couple of fixes for 64bit msvc debug info compatibility.
2010-10-11 17:08:13 +02:00
Eric Pouech
b164155447
dbghelp: Added a couple of missing CodeView base types (used in 64bit compilation).
2010-10-11 17:08:13 +02:00
Eric Pouech
229d753bc9
dbghelp: Some more 64bit base address fixes.
2010-10-11 17:07:57 +02:00
Eric Pouech
1e141eee4f
dbghelp: Allow loading PE module with 64bit addresses.
2010-10-11 12:54:18 +02:00
Austin English
95740b30b9
dbghelp: Fix compile on Hurd.
2010-10-08 11:56:46 +02:00
Paul Vriens
5da1ecef3a
dbghelp: Fix use of GetProcessHeap.
2010-09-21 17:53:55 +02:00
André Hentschel
9a1103112e
dbghelp: Add ARM support.
2010-09-20 12:58:56 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Eric Pouech
1e12e90cc9
dbghelp: Fix regression with prevented StackWalk on i386 CPU to be called with a NULL context.
2010-09-13 11:01:38 -05:00
Alexandre Julliard
352a876f91
dbghelp: Use int64 in the spec file for 64-bit integers.
2010-08-31 14:23:48 +02:00
Andrew Talbot
4e4948cfbf
dbghelp: Constify some variables.
2010-08-30 15:38:56 +02:00
Andrew Talbot
9738f40e79
dbghelp: Remove unused functions.
2010-08-30 11:26:29 +02:00
Eric Pouech
63c7ea6494
dbghelp: Use virtual size (not raw/file size) when getting the size of a PE section.
2010-08-30 11:26:29 +02:00
Eric Pouech
1e0af22ad2
dbghelp: dwarf debug info: a few more fixes to dwarf parsing.
2010-08-26 12:42:15 +02:00
Austin English
e92a552dca
dbghelp: Add initial Sparc CPU support.
2010-08-23 13:41:17 +02:00
Jacek Caban
1a1ffe60fd
dbghelp: Silence template related dwarf FIXMEs.
2010-08-16 17:28:58 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Eric Pouech
1783631f55
dbghelp: Added support for CFA save/restore operation.
2010-07-05 12:59:47 +02:00
Eric Pouech
5afe16621b
dbghelp: Parse correctly DW_LNE_set_discriminator.
2010-06-28 16:58:38 +02:00
Eric Pouech
b6c8b8959b
dbghelp: When unwinding i386 stacks, update CONTEXT with sp/bp/ip.
2010-06-28 16:58:05 +02:00
Eric Pouech
1c037bf564
dbghelp: Correctly handle the RULE_EXPRESSION when computing CFA in dwarf debug info.
2010-06-28 12:14:13 +02:00
Eric Pouech
b38cddf484
dbghelp: Set the correct word size when unwinding stacks with Dwarf debug info.
2010-06-28 12:14:04 +02:00
Eric Pouech
3ced7b8f40
dbghelp: Ensure we can try to load COFF symbols if none is found in other debug formats.
2010-06-28 11:42:28 +02:00
Eric Pouech
d97e6a47e5
dbghelp: Test validity of COFF symbol table against file size (and not image size).
2010-06-28 11:42:23 +02:00
Eric Pouech
1f5ff75107
dbghelp: Fix the localization of section table while loading COFF information.
2010-06-28 11:42:18 +02:00
Paul Chitescu
61a9eef9a1
dbghelp: Provide a non-NULL number of bytes read to ReadProcessMemoryProc64 callback.
2010-06-28 11:42:02 +02:00
Francois Gouget
7649c75b40
Assorted typo and spelling fixes.
2010-06-24 10:37:05 +02:00
Eric Pouech
083eca072d
dbghelp: Properly manage in dbghelp interfaces local variables and parameters that are constant.
2010-06-08 12:59:26 +02:00
Eric Pouech
99a5488a18
dbghelp: Ensure that local variables and parameter actually have a container.
2010-06-08 12:59:17 +02:00
Eric Pouech
8c7cc491ab
dbghelp: In dwarf parser, properly handle array without size specified.
2010-06-08 12:59:13 +02:00
Marcus Meissner
4f2e15d053
dbghelp: Add 2 new darf defines and implement DW_OP_stack_value.
2010-06-07 15:26:12 +02:00
André Hentschel
64951f7110
dbghelp: Use the available PowerPC functions.
2010-05-28 16:22:26 +02:00
Gerald Pfeifer
72216a604d
dbghelp: Remove variable basic_block which is not really used from dwarf2_parse_line_numbers.
2010-05-26 10:14:46 +02:00
Eric Pouech
516fc78a2b
dbghelp: Protect PE's COFF table reading against bogus values in NTHEADER.
2010-05-10 13:43:58 +02:00
Eric Pouech
e520605fa9
dbghelp: When trying to enumerate locals & parameters with SymEnumSymbols, don't return a global or public symbol when the nearest symbol of the current context isn't a function.
2010-04-08 12:28:53 +02:00
Eric Pouech
196f8f070d
dbghelp: Added support for DW_CFA_GNU_args_size.
2010-04-07 13:50:35 +02:00
Eric Pouech
a185435243
dbghelp: When handling a P augmentation in FDE/DIE parsing, throw away the DW_EH_indirect flag, as we don't handle the result.
...
It's needed as long as we don't support DW_EH_indirect while reading encoded values.
2010-04-02 10:35:21 +02:00
Eric Pouech
1b68d4e7ce
dbghelp: Extend dwarf stack unwinding by reading information out of .debug_frame sections.
...
Implement dwarf stack unwinding for i386 CPU.
2010-04-02 10:35:02 +02:00
Eric Pouech
34ef8d2113
dbghelp: Store delta used for re-locating a module.
2010-04-02 10:34:37 +02:00
Eric Pouech
51bce9b049
dbghelp: Implement the new register methods for x86.
2010-04-02 10:34:27 +02:00
Mikhail Maroukhine
0519c4b68a
dbghelp: Fix compiler warnings with flag -Wcast-qual.
2010-03-29 12:13:28 +02:00
Eric Pouech
060ccb123a
dbghelp: When unwinding the stack, stop if the current address isn't in a known module.
2010-03-29 11:45:13 +02:00
Eric Pouech
0c2401369c
dbghelp: Rewrite SymGetModuleBase so that it relies on 64 bit version.
2010-03-29 11:45:04 +02:00
Eric Pouech
a5293895a3
dbghelp: In dwarf parsing, correctly handle the DW_OP_regx option.
2010-03-29 11:44:52 +02:00
Eric Pouech
6a6edcd1ca
dbghelp: In dwarf attribute parsing, ensure that we do have a block when parsing a block.
2010-03-29 11:44:46 +02:00
Eric Pouech
036392c5d1
dbghelp: Added preliminary CFA management.
2010-03-29 11:38:17 +02:00
Eric Pouech
0eef5d6809
dbghelp: Added CFA information to dbghelp's dwarf.h.
2010-03-29 11:37:46 +02:00
Eric Pouech
1d60aa6000
dbghelp: Extend the CPU object in order to manipulate context's registers (getting context's content & register names).
2010-03-29 11:37:39 +02:00
Eric Pouech
9851ebf792
dbghelp: Keep the .debug_frame section mapped when parsing dwarf debug_info (needed for CFA management).
2010-03-29 11:37:27 +02:00
Eric Pouech
e2b62c91d5
dbghelp: Created a CPU method to map dwarf register number to codeview register number.
2010-03-25 09:45:32 +01:00
Eric Pouech
403f41687e
dbghelp: In dwarf parsing, correctly get the size of addresses in location lists.
2010-03-25 09:45:26 +01:00
Eric Pouech
8413810c6c
dbghelp: Don't try to hardwire the dwarf's "word size", but get it properly.
2010-03-25 09:45:21 +01:00
Eric Pouech
e6a08a1e15
dbghelp: Fixed a couple of portability issues to 64bit platforms.
2010-03-25 09:45:15 +01:00
Eric Pouech
51e9951a5f
dbghelp: Enhanced x86_64 stack unwinding with PE's function table data.
2010-03-25 09:45:11 +01:00
Eric Pouech
4c3361e39e
dbghelp: Properly bail out if get an error while reading ELF header.
2010-03-22 11:29:14 +01:00
Eric Pouech
375d158da7
dbghelp: Fix local/parameters enumeration on 64bit platforms.
2010-03-22 11:29:08 +01:00
Eric Pouech
d822aaff92
dbghelp: Removed the not-useful start_data field out of dwarf2_traverse_context_t.
2010-03-22 11:27:44 +01:00
Eric Pouech
bf97b03db5
dbghelp: Implemented SymFunctionTableAccess.
2010-03-22 11:27:36 +01:00
Eric Pouech
2ed8b9f6b6
dbghelp: Added helper to image_file_map to map also directory out of PE executables.
2010-03-22 11:27:32 +01:00
Eric Pouech
cecb80a4e8
dbghelp: Move the mach-o information into the modfmt structure.
2010-03-19 12:23:36 +01:00
Eric Pouech
fe2ae803ee
dbghelp: Moved the ELF's module information into the new scheme.
2010-03-19 12:08:46 +01:00
Eric Pouech
cd92e3d147
dbghelp: Move the PE debug info to the newly define scheme.
2010-03-19 12:08:37 +01:00
Eric Pouech
73f79e7fad
dbghelp: Create new infrastructure to hold specific information for multiple file/debug formats in a single module, and use it to store dwarf2 stuff.
2010-03-19 12:08:27 +01:00
Eric Pouech
3e6920d7b8
dbghelp: Now that we can keep ELF sections around, don't copy the loclist section, just don't unmap it.
2010-03-19 12:08:10 +01:00
Eric Pouech
2d8c788353
dbghelp: Let dwarf_parse decide on which sections it needs to map.
2010-03-19 12:08:03 +01:00
Eric Pouech
c9bac2efd2
dbghelp: Extend the image (ELF/PE) scheme to get the RVA out of a section.
2010-03-19 12:07:45 +01:00
Eric Pouech
a2e65f1311
dbghelp: Keep the file map around for every PE module, so that we can access image whenever we like to.
2010-03-19 12:07:27 +01:00
Eric Pouech
cbff4f063f
dbghelp: Create the notion of image (PE, ELF modules) to uniformize some handlings.
2010-03-19 12:05:59 +01:00
Eric Pouech
fb169502a5
dbghelp: Extend the ELF image management to PE modules so we get a rather uniform interface to image manipulation.
2010-03-19 12:04:19 +01:00
Eric Pouech
770f0d834f
dbghelp: Make the ELF mapping code easier to use.
2010-03-19 12:03:57 +01:00
Eric Pouech
8c4f96d232
dbghelp: Store the file map in ELF's module specific data.
2010-03-16 13:31:05 +01:00
Eric Pouech
9d7b6b65ef
dbghelp: Added helper to free module's specific data (ELF, MSC...) upon removal.
2010-03-16 13:30:46 +01:00
Eric Pouech
09a7e2d3d0
dbghelp: Added full support for DW_FORM_data8 attributes, as well as primary support for DW_FORM_block* attributes.
2010-03-16 13:30:31 +01:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Alexandre Julliard
ff55fc9bea
dbghelp: Fix a pointer cast.
2010-02-16 15:50:43 +01:00
André Hentschel
c71ffcf407
dbghelp: Merge dwarf code from ntdll/signal_x86_64.c.
2010-02-09 17:13:37 +01:00
Alistair Leslie-Hughes
a204f099c6
dbghelp: Add stubs for SymGetLineFromName, SymGetLineFromName64, SymGetLineFromNameW64.
2010-02-09 17:13:36 +01:00
Alistair Leslie-Hughes
d02040d98a
dbghelp: Add basic support for PVOID64.
2010-02-08 17:14:43 +01:00
Alexandre Julliard
58e08ebc08
dbghelp: Fix broken sw_read_mem() call in i386 stack backtrace.
2010-02-04 19:32:12 +01:00
Eric Pouech
a414e782f0
dbghelp: Remove a couple of unnneeded include files.
2010-02-04 13:39:28 +01:00
Alexandre Julliard
2a07163901
dbghelp: Fix the Mac OS build.
2010-01-28 15:52:32 +01:00
Alexandre Julliard
e42d1a8cc1
dbghelp: Don't require a 16-bit stack for StackWalk.
2010-01-27 18:46:06 +01:00
Eric Pouech
520fcae5d2
dbghelp: For PE modules, when no debug info is present, also try to load symbols out of COFF symbol table.
2010-01-25 12:53:03 +01:00
Eric Pouech
181de55619
dbghelp: Removed some unused fields for public symbol description.
2010-01-25 12:52:46 +01:00
André Hentschel
2f5ba0d8c0
dbghelp: Fix typo in url.
2010-01-06 09:52:48 +01:00
André Hentschel
1f168cbd6e
dbghelp: Fix a typo.
2009-12-31 12:12:16 +01:00
Eric Pouech
878f287366
dbghelp: Silence a couple of FIXMEs for C++ code.
...
Reported by Jacek Caban.
2009-12-29 13:28:01 +01:00
Marcus Meissner
c39cd4c0ce
dbghelp: Initialize ret (Coverity).
2009-12-29 11:07:11 +01:00
Eric Pouech
bc38d3eaac
dbghelp: Add support for loading dwarf debug information out of PE images.
2009-12-24 12:15:41 +01:00
Eric Pouech
ed96e740e9
dbghelp: Add a couple of helpers to struct cpu to help adding the stack to minidump.
2009-12-23 14:27:29 +01:00
Eric Pouech
54766cdac0
dbghelp: Hacked a StackWalk implementation for x86_64.
2009-12-23 14:27:29 +01:00
Eric Pouech
7230659ce9
dbghelp: Create a cpu backend to store CPU dependent code, and use it for the i386 stack implementation.
2009-12-23 14:27:29 +01:00
Eric Pouech
2d85d5c235
dbghelp: Generalize helper to get a string from an ADDRESS64.
2009-12-22 15:39:20 +01:00
Eric Pouech
fdc86c1999
dbghelp: Rewrote stack_walk with 64 bit structures.
2009-12-22 15:39:01 +01:00
André Hentschel
255a1ebaad
dbghelp: Implement literal dwarf opcodes.
2009-12-21 15:01:24 +01:00
Eric van Beurden
fefd0cfda7
dbghelp: Fix a minidump crash by using the correct variable.
2009-12-18 12:49:46 +01:00
Huw Davies
34a961d3af
dbghelp: Fix compilation on OSX.
2009-12-16 12:20:31 +01:00
Marcus Meissner
6feb525bc7
dbghelp: Check for NULL return from process_find_by_handle (Coverity).
2009-12-15 16:09:11 +01:00
Eric Pouech
9500df82f1
dbghelp: Move the core of some line related functions to 64bit interface.
2009-12-15 11:58:39 +01:00
Eric Pouech
776e75e43c
dbghelp: Fix symt_find_nearest so that it searches for 64bit addresses on 64bit platforms.
2009-12-15 11:58:24 +01:00
Eric Pouech
7b83b70b06
dbghelp: Rewrite the symt* <=> index wrappers to that they work on 64bit platforms.
2009-12-15 11:57:33 +01:00
Eric Pouech
92b9b0940d
dbghelp: Wrap the symt* <=> index transformations.
2009-12-15 11:56:45 +01:00
Eric Pouech
07c1a1ca51
dbghelp: Fix module on which GetTypeFromName is done.
2009-12-15 11:56:18 +01:00
Eric Pouech
b4da46ebe8
dbghelp: A couple of fixes for dwarf2 support on a 64bit platform.
2009-12-14 12:29:14 +01:00
Eric Pouech
c6eb8104dd
dbghelp: Enforce using 64bit integers for module's address and size.
2009-12-14 12:28:54 +01:00
Eric Pouech
9ff52fb82c
dbghelp: Don't return error when validating a 64bit wide address on a 64bit platform.
2009-12-14 12:28:37 +01:00
Eric Pouech
02a70615f9
dbghelp: Add ELF support but for the current 32 vs 64 bit architecture.
2009-12-14 12:28:25 +01:00
Eric Pouech
114bb38cd8
dbghelp: Rewrote the SymRegisterCallback function so that they work on a 64bit platform.
2009-12-14 12:28:00 +01:00
Eric Pouech
b037912c9d
dbghelp: Fix a couple of casts on 64bit platforms.
2009-12-14 12:27:32 +01:00
Eric Pouech
c300f215b1
dbghelp: Make the module enumeration process compatible with 64bit platforms.
2009-12-14 12:26:51 +01:00
Alexandre Julliard
891d025639
dbghelp: Fix an invalid pointer cast.
2009-12-10 15:31:27 +01:00
Alexandre Julliard
7f88738fa6
dbghelp: Moved addr_to_linear() to stack.c.
2009-12-10 15:29:20 +01:00
Eric Pouech
185e5daed6
dbghelp: For mingw32 (stabs debug info), parse the FileHeader's symbol table to offset properly the global variables.
2009-12-10 11:53:57 +01:00
Marcus Meissner
30c1df4a08
dbghelp: Add a missing NULL check (Coverity).
2009-12-09 12:03:47 +01:00
Marcus Meissner
d6f78e4014
dbghelp: Check wImageName for NULL (Coverity).
2009-12-01 13:14:40 +01:00
Eric Pouech
db077e11ad
dbghelp: In dwarf parsing, allow 64 bit wide values.
2009-11-29 16:39:35 +01:00
Eric Pouech
ed786fbae4
dbghelp: Correctly compute offsets in line number information.
2009-11-23 10:36:09 +01:00
Eric Pouech
9d80b19e83
dbghelp: Revisit array len description for debug format parsers.
...
One can now pass -1 as array len so that its size will be computed
later on (useful for dealing with forward declarations where size is
not known at array definition).
2009-11-23 10:36:02 +01:00
Eric Pouech
68cc7d5875
dbghelp: Beef up SymRefreshModuleList.
2009-11-17 12:05:46 +01:00
Andrew Nguyen
44ac91d78d
dbghelp: Stub SymRefreshModuleList.
2009-11-16 17:04:48 +01:00
Eric Pouech
aa9002755a
dbghelp: Fix the threads stream size.
2009-11-13 13:37:51 +01:00
Eric Pouech
64144519a0
winedump, dbghelp: In .pdb files (>= VC2005), handle the case where the codeview_linetab2_file structure is not the first one.
2009-11-03 21:20:21 +01:00
Paul Bolle
4c97910387
dbghelp: elf_load_file: return if elf_map_file fails.
2009-10-28 14:28:38 +01:00
Eric Pouech
6a1b2a9ca5
dbghelp: Enhance support for constant values in dwarf debug information.
2009-10-05 14:56:24 +02:00
Louis Lenders
a6aa4e1357
dbghelp: Add version resource.
2009-08-27 15:41:12 +02:00
Jesse Litton
43a35958f6
dbghelp: Don't double memory allocation on every add.
2009-08-19 14:42:00 +02:00
Jacek Caban
1e23e88914
dbghelp: Check for NULL adt before using it in stabs_pts_read_aggregate.
2009-08-17 13:57:49 +02:00
Jacek Caban
4cc3ce923a
dbghelp: Use symt_get_name directly in stabs_pts_read_aggregate.
2009-08-17 13:57:49 +02:00
Jacek Caban
956eea6b31
dbghelp: Fixed buffer overflow in stabs_parse.
2009-08-17 13:57:49 +02:00
Jacek Caban
4e1a4ecc04
dbghelp: Improved arena allocation in pool_alloc.
2009-08-14 15:29:59 +02:00
Andrew Talbot
f4d2db4c54
dbghelp: Constify some variables.
2009-07-15 13:23:00 +02:00
Eric Pouech
f2b7ec1c2c
dbghelp: Fixed regressions introduced by growing arrays exponentially instead of linearly.
2009-07-14 15:16:08 +02:00
Andrew Talbot
c702da34da
dbghelp: Constify some variables.
2009-07-14 10:45:29 +02:00
Andrew Talbot
41ca9b0ffd
dbghelp: Constify some variables.
2009-07-13 10:24:56 +02:00
Alexandre Julliard
75792a3e69
dbghelp: Grow all arrays by doubling the size.
2009-07-10 14:46:55 +02:00
Eric Pouech
9c54158958
dbghelp: Added reference for MSVC 8.
...
A+
2009-06-29 13:14:04 +02:00
Eric Pouech
7fbcd11db8
dbghelp: When the CU is compiled with GCC, deal with some GCC extensions.
2009-06-29 13:13:50 +02:00
Eric Pouech
4008943502
dbghelp: Simplify the resort operation (module address table) by using binary insertion instead of resorting the whole array.
2009-06-26 12:01:07 +02:00
Eric Pouech
609ec7b11d
dbghelp: when (re)building the per module symbol table (lookup by address), no longer iterate over the hash table.
...
Directly add to the table when adding a new symbol.
2009-06-26 12:01:00 +02:00
Eric Pouech
dde39fddc5
dbghelp: Factorize symbol insertion into module by address table.
2009-06-26 12:00:38 +02:00
Eric Pouech
607a07f42a
dbghelp: When loading ELF public information, handle the cases when we don't get an address.
2009-06-26 12:00:25 +02:00
Alexandre Julliard
a5231a60a1
dbghelp: Fix detection of special Wine segments.
2009-06-25 11:45:24 +02:00
Eric Pouech
b37996305d
dbghelp: Improve speed of our hashtable implementation by remembering the last element added to every bucket.
2009-06-15 13:42:28 +02:00
Alexandre Julliard
bb2d643f49
dbghelp: Try to avoid crashing on unrecognized attributes.
2009-05-29 12:30:28 +02:00
Dmitry Timoshkov
d82df8f9b0
dbghelp: All parameters of MiniDumpReadDumpStream() except base are optional.
2009-05-21 16:17:51 +02:00
Ken Thomases
6903238948
dbghelp: Don't check version of Mach-O dyld_all_image_infos structure.
...
The structure has changed repeatedly, but always in a backward compatible way.
The version check was only hampering us.
2009-05-04 12:52:01 +02:00
Alexandre Julliard
329c22f323
dbghelp: Add a few more 64-bit symbol functions.
2009-04-23 12:41:29 +02:00
Ken Thomases
905ab99815
dbghelp/stabs: For Mach-O, line offset is relative to original function address.
2009-04-07 11:21:40 +02:00
Ken Thomases
31fd8dd763
dbghelp: Include Mach-O modules in minidumps.
2009-03-25 12:17:51 +01:00
Ken Thomases
3a96219d57
dbghelp/stabs: For Mach-O, line numbers use absolute address, not offset.
...
So, compute the offset by subtracting the function address.
2009-03-25 12:17:42 +01:00
Ken Thomases
feedbb1630
dbghelp: Recognize .dylib files as Mach-O modules.
2009-03-25 12:17:36 +01:00
Ken Thomases
d7466e0c4e
dbghelp: Add support for debugging Mach-O modules.
2009-03-25 12:17:29 +01:00
Ken Thomases
df0f32bbd9
dbghelp: Increase file read buffer size for calc_crc32.
2009-03-12 14:29:14 +01:00
Ken Thomases
637827a2d0
dbghelp: Extract calc_crc32 function into a separate file.
2009-03-12 14:29:03 +01:00
Ken Thomases
b8f6a68d6f
dbghelp: Rename some things to be less ELF-centric.
2009-03-12 13:09:56 +01:00
Ken Thomases
985f0ea18f
dbghelp/stabs: Track line numbers pending for an upcoming function.
...
On Darwin, line numbers usually precede the associated function.
2009-03-12 13:09:56 +01:00
Ken Thomases
65d929079c
dbghelp/stabs: Allow pending list to include line numbers as well as variables.
...
On Darwin, line numbers usually precede the associated function.
2009-03-12 13:09:56 +01:00
Ken Thomases
a1ac32822a
dbghelp/stabs: Extract growing of pending_block's buffer to pending_make_room().
2009-03-12 13:09:56 +01:00
Ken Thomases
615fff293a
dbghelp: Teach stabs_parse about other kinds of Mach-O symbol definitions.
2009-03-12 13:09:56 +01:00
Ken Thomases
3db11b98b7
dbghelp: Let stabs_parse call back for real (non-debug) symbol definitions.
2009-03-12 13:09:55 +01:00
Ken Thomases
82a3f8fcb2
dbghelp/stabs: Decode the Stabs type more carefully.
2009-03-12 13:09:55 +01:00
Ken Thomases
1ecd634c4b
dbghelp/stabs: Ignore the N_OSO type used on Darwin.
2009-03-12 13:09:55 +01:00
Ken Thomases
1f4ddbaed9
dbghelp/stabs: Translate additional register codes.
2009-03-12 13:09:55 +01:00
Alexandre Julliard
d2682f57f8
dbghelp: The main executable is now always named "wine".
2009-03-10 18:22:43 +01:00
Alexandre Julliard
020b3b5bdc
dbghelp: Define _IMAGEHLP_SOURCE_.
2009-03-09 13:26:57 +01:00
Austin English
28fe3f76c0
dbghelp: Change pointer cast to DWORD_PTR.
2009-02-23 13:14:18 +01:00
Alexandre Julliard
9a4e519aeb
dbghelp: Avoid size_t in a trace.
2009-02-12 17:53:35 +01:00
Eric Pouech
c83039bd6e
dbghelp: Fix bad call to free() instead of pdb_free().
2009-02-11 12:29:37 +01:00
Alexandre Julliard
0f3445d6db
dbghelp: Fix handling of empty file regexp (Coverity).
2009-02-09 14:37:22 +01:00
Andrew Talbot
5b60142f94
dbghelp: Remove unused function.
2009-02-05 13:13:58 +01:00
Alexandre Julliard
601a1364b9
dbghelp: Moved SymEnumLines to symbol.c to reuse the regex support.
2009-02-04 13:13:08 +01:00
Alexandre Julliard
768954b245
dbghelp: Fall back to string comparison if regex support is missing.
2009-02-04 13:02:08 +01:00
Alexandre Julliard
e9610f674c
dbghelp: Allocate enough memory initially for regexps instead of growing the buffer.
2009-02-04 13:00:31 +01:00
Alexandre Julliard
ae7490d362
dbghelp: Fix pool allocation routines to be able to support arbitrary sizes.
...
Also move full arenas to a separate list to avoid searching through
them again and again.
2009-02-04 12:27:36 +01:00
Marcus Meissner
54e8ecf1b0
dbghelp: Check for wImageName being NULL (Coverity).
2009-02-02 15:44:39 +01:00
Michael Stefaniuc
3c3a9b5081
dbghelp: Remove superfluous pointer casts.
2009-01-19 13:36:25 +01:00
Andrew Talbot
4c92ba2270
dbghelp: Declare some functions static.
2009-01-03 15:35:29 +01:00
Alexandre Julliard
6a548b1e9d
ntdll: Fix the various structures returned by NtQuerySystemInformation for 64-bit.
2009-01-03 14:55:32 +01:00
Alexandre Julliard
fd2cb87c87
dbghelp: Make a function static.
2008-12-04 12:47:27 +01:00
Francois Gouget
9c5e97aa71
Assorted spelling fixes.
2008-11-24 14:25:10 +01:00
Kai Blin
4dedbd404c
dbghelp: Upgrade FIXME to ERR.
2008-11-24 14:18:41 +01:00
Ricardo Filipe
b5fcabb52c
dbghelp: Fixed dead store (llvm/clang).
2008-11-18 13:05:21 +01:00
Eric Pouech
9bac505f2a
dbghelp: Properly add CPU info to minidump.
2008-11-11 14:03:01 +01:00
Eric Pouech
fe734de8d9
dbghelp: Fix all forward declaration cases for UDT.
2008-11-10 11:59:21 +01:00
Eric Pouech
01e69c71e0
dbghelp: Report in module's info when a module's debug information has been mismatched (dbg and pdb only).
2008-10-20 13:52:16 +02:00
Alexandre Julliard
7f327237bf
Convert remaining source files to utf-8.
2008-10-18 19:23:08 +02:00
Eric Pouech
9bc74e3ab6
dbghelp: Add support for the newest line number information in pdb files.
2008-10-01 09:51:51 -05:00
Eric Pouech
3dc37cbf94
dbghelp: Rewrote the linetab access so that we don't need to allocate intermediate information.
2008-10-01 09:51:44 -05:00
Eric Pouech
864a60d5ba
dbghelp: Added support for real80 (aka long double) in inner codeview types.
2008-10-01 09:50:35 -05:00
Eric Pouech
1a1be65e8e
dbghelp: Now fully reading the leafs as variant for constants.
...
Also added missing creation for V3 constants.
2008-10-01 09:50:28 -05:00
Eric Pouech
81df3de0fc
dbghelp,winedump: Added support for symbol symbol.
2008-10-01 09:50:02 -05:00
Eric Pouech
028956d1fe
dbghelp,winedump: Added support for symbol 0x113c.
2008-10-01 09:49:54 -05:00
Eric Pouech
82d1845d85
dbghelp,winedump: Added support for 0x113d symbol.
2008-10-01 09:49:45 -05:00
Eric Pouech
1a6e018f0e
dbghelp: Silence symbol 0x1139.
2008-10-01 09:49:32 -05:00
Eric Pouech
cff33cedf5
winedump: Add preliminary dumping of 0x1136 and 0x1137 symbols.
2008-10-01 09:49:24 -05:00
Eric Pouech
076dcc845f
dbghelp,winedump: Added support for symbol 0x1012.
2008-10-01 09:48:32 -05:00
Eric Pouech
ee4aaf7fcd
dbghelp,winedump: Added support for symbol 0x113a.
2008-10-01 09:48:20 -05:00
Eric Pouech
7abf97ca47
dbghelp: Added stub for SymSetScopeFromAddr.
2008-10-01 09:48:06 -05:00
Eric Pouech
871dbfa88b
dbghelp: Added the latest stubs.
2008-10-01 09:47:55 -05:00
Eric Pouech
49a44342fa
dbghelp: Added stubs for add symbol functions.
2008-10-01 09:47:41 -05:00
Andrew Talbot
c9563e10fc
dbghelp: Sign-compare warnings fix.
2008-09-25 11:28:58 +02:00
Andrew Talbot
34ac3f15dd
dbghelp: Sign-compare warnings fix.
2008-09-25 11:28:52 +02:00
Eric Pouech
69bbefac5f
dbghelp: While loading MSC debug info, don't handle public symbol at once, but delay their handling after all other symbols are loaded.
...
This allows to handle properly addresses between public and real
symbols. It should also increase drastically the performance of
.dbg/.pdb loading.
2008-09-08 12:47:21 +02:00
Eric Pouech
2f98c59adb
dbghelp: Silence 0x112c symbol type.
2008-09-08 12:47:21 +02:00
Eric Pouech
5ad756fb3c
dbghelp: Use the correct size for global variable when searching for a symbol.
2008-09-08 12:47:20 +02:00
Eric Pouech
418a001e00
dbghelp: Correctly setup the Unix regular expression for matching file names in SymEnumLines.
...
Plug a potential memory leak as well.
2008-09-08 12:47:20 +02:00
Eric Pouech
b5ffe31d22
dbghelp: Fixed offset computation for bitfields inside structures in Codeview debug information.
2008-09-08 12:47:20 +02:00
Eric Pouech
07baf69080
dbghelp: SymFindFileInPath doesn't check for the parameters passed when looking in a directory, whatever the dbghelp's options.
2008-09-04 13:47:26 +02:00
Eric Pouech
2994e98850
dbghelp: Improve the symbol loader for .DBG files.
...
When looking for a .DBG file, first look for a .DBG file matching all
attributes, then for a .DBG partially matching the attributes.
2008-09-04 13:47:11 +02:00
Eric Pouech
d600115387
dbghelp: Improve the symbol loader.
...
When looking for a PDB file, no longer use SymFindFileInPath as it
doesn't actually check the signatures, but use an internal function
instead.
2008-09-04 13:46:54 +02:00
Eric Pouech
f3c071660d
winedump, dbghelp: Correctly name the age field in PDB headers.
2008-09-02 11:57:04 +02:00
Eric Pouech
8b9c05a9ca
dbghelp: Added the definitions for Dwarf3 specifications.
2008-09-02 11:56:53 +02:00
Alexandre Julliard
97429b32f8
dbghelp: Always initialize section pointer in ImageDirectoryEntryToDataEx.
2008-07-18 11:16:02 +02:00
Andrew Talbot
51b3b4a481
dbghelp: Use dbgstr_a() in case pointer is NULL.
2008-06-23 12:51:20 +02:00
Jon Griffiths
c683753185
dbghelp: Implement SymEnumerateSymbols64.
2008-06-21 11:13:37 +02:00
Eric Pouech
1f6974c124
dbghelp: Fix for SymGetModuleInfo().
2008-05-26 19:45:55 +02:00
Eric Pouech
1a34d70354
dbghelp: Don't crash when parsing the forward declaration of a function.
2008-05-26 17:59:39 +02:00
Eric Pouech
fd20b1be8a
dbghelp: Protect dwarf parsing against NULL function names.
2008-05-19 13:35:42 +02:00
Andrew Talbot
dbe65d03e2
dbghelp: Include port.h for possible alternative to strtoull().
2008-05-05 12:52:01 +02:00