Eric Pouech
43dffcd05d
dbghelp: Now storing module information in Unicode form.
2007-02-22 11:39:08 +01:00
Eric Pouech
aac77c98a2
dbghelp: Added an ANSI copy of the module name (useful for next patches).
2007-02-22 11:28:53 +01:00
Eric Pouech
75033503e8
dbghelp: Added ability to internal store / reload a symbol with a constant value.
...
Let dwarf and msc use this new feature.
As we also add global symbol without addresses, don't take those
constant symbols into account for searches by address.
2006-12-06 11:38:43 +01:00
Eric Pouech
a1a879363d
dbghelp: Added a field to the hash table to store the number of elements in the hash table.
...
Make use of it to get rid to module_compute_num_syms.
2006-12-06 11:37:38 +01:00
Eric Pouech
4806320b48
dbghelp: In find_nearest, now return the symbol instead of its index in module->sorttable.
2006-12-06 11:37:10 +01:00
Eric Pouech
8e7b2e0fd7
dbghelp: Get rid of long int issues on 64bit platforms.
2006-11-30 13:26:39 +01:00
Eric Pouech
0d942b3aaa
dbghelp: Function points location is now expressed as a struct location.
2006-11-27 17:55:44 +01:00
Eric Pouech
d812f8b42c
dbghelp: Added infrastructure to compute variable location at runtime (as opposed to debug info parse time).
...
Use it to send the variables depending on not known frame register at parse time.
Made just a stub for the location computation function for dwarf2.
2006-11-27 17:55:17 +01:00
Eric Pouech
20fc25bc55
dbghelp: Use the location info structure thoughout the code to handle the location of a data variable.
2006-11-27 17:54:39 +01:00
Eric Pouech
1a723f237c
dbghelp: Store compiland's address in internal structures.
2006-11-27 17:49:50 +01:00
Eric Pouech
4bcca691d1
dbghelp: When looking up for a local variable (or parameter), pass the function pointer.
2006-11-27 17:49:27 +01:00
Eric Pouech
32c96adddd
dbghelp: Added a process field to the modules pair structure.
...
This makes the code simpler to read, a bit more efficient, and
furthermore it'll be needed in future patches.
2006-11-27 17:49:01 +01:00
Eric Pouech
6c4c64265d
dbghelp: Variables & registers.
...
- more strickling differentiation variable location between
a register, and the dereferenced address defined by a
register (and possibly an offset)
- added a parameter to symt_add_func_local (and internal symbol
data struct) to help differentiate
- fix all debug parsers to confer to this new scheme
2006-09-26 11:48:39 +02:00
Andrew Talbot
2f8c51f547
dbghelp: Cast-qual warnings fix.
2006-09-08 16:07:43 +02:00
Eric Pouech
83c30a55b8
dbghelp: Made stabs parsing a bit more robust.
...
Enhance dbghelp's robustness against bogus stabs sections found in
meetro.exe (as reported by Jan Zerebecki).
2006-08-09 23:08:00 +02:00
Robert Shearman
5c8b22f385
dbghelp: Implement SymGetSymFromAddr64.
2006-07-26 10:23:19 +02:00
Eric Pouech
7af4097d80
dbghelp: Added the ability to define a source file by dir+filename instead of only filename.
2006-06-20 11:54:40 +02:00
Eric Pouech
cff41cf9f2
dbghelp: Storage of func locals & parameters.
...
- added the ability to tell to add_func_local whether we're adding
a local variable or a parameter (and removed the black magic
we were using)
- we can now address variables defined as an offset to a register
2006-06-20 11:47:38 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Eric Pouech
c25d3ac7d5
dbghelp: Implemented SymSearchW.
2006-05-11 12:18:46 +02:00
Eric Pouech
208e701a7b
dbghelp: Implemented SymEnumSymbolsW.
2006-05-11 12:18:30 +02:00
Eric Pouech
96efcbc47b
dbghelp: Improved SymSearch (now using tag, index and address).
2006-05-11 12:18:06 +02:00
Eric Pouech
5eb1c98853
dbghelp: Factorize and simplify a bit symbol enumeration code.
2006-05-11 12:17:47 +02:00
Eric Pouech
55f8a1b8fb
dbghelp: Implemented SymGetLineFromAddrW64.
2006-05-11 12:17:03 +02:00
Eric Pouech
7d4194f57b
dbghelp: Implemented SymFromAddrW.
2006-05-11 12:16:24 +02:00
Eric Pouech
a49adbc49e
dbghelp: Base and symbols.
...
- report the correct image base for a symbol which is
seen as being in a builtin PE module, whilst its debug
information is gotten from an ELF module
- module_get_debug now returns a pair of modules
(the requested that has to be presented back to the client
and the effective one, which contains the debug info)
- reworked SymFromName in order to provide also the revelant
module base address
2006-05-08 14:47:56 +02:00
Eric Pouech
983d8aea3e
dbghelp: Module should be case insensitive.
...
When looking up a symbol name in the form module!name, the module
lookup should be insensitive.
2006-03-27 11:30:50 +02:00
Eric Pouech
c9de37d71c
dbghelp: Always set the size to public symbols to 1 when we don't know the size
...
so that they can only be search on their start address
2006-02-14 14:04:16 +01:00
Eric Pouech
2ce5eca6a5
winedbg: Added support for function parameters passed in registers.
...
Added correct stabs parsing for function parameters in registers.
Added a couple of helper functions to make code smaller and more
readable.
2006-02-06 11:27:32 +01:00
Dmitry Timoshkov
57a579ffcd
Make more arrays const.
2006-01-24 14:00:32 +01:00
Eric Pouech
0509fe72c9
dbghelp: Return better values in module information.
...
- 32/64: number of symbols is now correct
- 64: the 64 bit extra fields are now initialized with some non null
yet sensible value
2006-01-23 16:38:57 +01:00
Eric Pouech
bdf32ee032
dbghelp: Brought dbghelp.h a bit closer to PSDK definitions.
2006-01-23 16:37:48 +01:00
Eric Pouech
3792b1add3
dbghelp: Symbol info.
...
- better coding for SYMBOL_INFO filling
- some fixes on some fields (parameters)
- now using the max size for symbol info
2006-01-23 16:26:57 +01:00
Eric Pouech
558130a696
dbghelp: StackWalk (32 and 64 bit version).
...
- enhance implementation of StackWalk (32 and 64 bit version) by
making use of module information and calling for FPO
- FPO part is still non functional
- implemented SymGetModuleBase64
- stubbed SymFunctionTableAccess64
2006-01-05 13:41:25 +01:00
Eric Pouech
5d210af9dc
dbghelp: Removed no longer needed 'stub' in TRACEs.
2006-01-05 12:19:18 +01:00
Eric Pouech
a959732fff
dbghelp: Internal search routines can now be case sensitive/insensitive.
...
- Now handling option SYMOPT_CASE_INSENSITIVE for symbol search.
- Quick implementation of SymSearch on top of SymEnumSymbols (should
be the other way around).
2005-12-26 12:57:26 +01:00
Eric Pouech
750575ccf2
dbghelp: Return proper size for local & parameters in SYMBOL_INFO.
2005-12-19 18:20:47 +01:00
Eric Pouech
17d93f9855
dbghelp: Implemented SymMatchString.
2005-12-19 18:16:35 +01:00
Eric Pouech
34db4856ae
dbghelp,winedbg: SYMBOL_INFO fix.
...
- native dbghelp returns in SYMBOL_INFO.TypeIndex the index of the
type of the symbol (we were returning the symbol index instead)
- fixed winedbg accordingly
2005-12-05 12:00:54 +01:00
Eric Pouech
82aa9210df
Implemented SymGet{Next|Prev}Line64.
2005-11-29 11:45:28 +01:00
Eric Pouech
73b0e94bb3
Now returning correct symbol flags (as native does) for function pmts
...
& locals in dbghelp.
Modified winedbg accordingly.
2005-11-18 12:05:44 +00:00
Eric Pouech
6b7bebfbf9
SymGetType(...,TI_GET_LENGTH,...) requires a 64 bit parameter, not a
...
32 bit one.
2005-11-17 11:51:53 +00:00
Eric Pouech
9c1b57c3d4
Implemented SymEnumLines.
2005-11-03 09:51:26 +00:00
Eric Pouech
61beaf48d3
- PDB: better checking for error conditions
...
- Fixed name demangling (when activated) when searching for a symbol
2005-03-29 11:30:57 +00:00
Peter Berg Larsen
e732fc023d
Janitorial: Get rid of strncpy/strncpyW.
2005-03-28 14:17:51 +00:00
Eric Pouech
499cff6f26
Cleanup of dbghelp.h (and a couple of definition fixes). The
...
displacements (in most of the functions) are not optional.
2005-01-31 11:34:59 +00:00
Eric Pouech
25cdb4c236
Fixed regressions introduced when moving addresses as 64bit values.
2004-11-22 18:30:10 +00:00
Eric Pouech
954a612c49
- implement SymUnDName and UndecorateSymbolName on top of
...
msvcrt.__unDName
- implement SYMOPT_UNDNAME support
2004-11-19 18:02:47 +00:00
Robert Shearman
6c50556e8b
Fix function and structure field types so we are compatible with the
...
native dbghelp.
2004-10-11 21:00:17 +00:00
Francois Gouget
67aa858a31
Assorted spelling fixes.
2004-10-05 18:15:29 +00:00