Commit Graph

183 Commits

Author SHA1 Message Date
Eric Pouech
ad02173d21 dbghelp: Added another basic type for storage: the sparse array. 2006-06-20 11:40:32 +02:00
Eric Pouech
b319600130 dbghelp: Transform a few TRACEs into WARNs (especially for unhandled stuff). 2006-06-20 11:39:58 +02:00
Eric Pouech
474c5cc2a5 dbghelp: Remove the unneeded level attribute while parsing. 2006-06-20 11:39:33 +02:00
Eric Pouech
57c662f4d1 dbghelp: Moved all Dwarf standard definitions into dwarf.h file. 2006-06-20 11:38:49 +02:00
Eric Pouech
00cf2da5d6 dbghelp: Dwarf & typedefs.
- removed lookup for name for the const modifier
- hard wire dwarf-reference to our pointer types
2006-06-20 11:37:50 +02:00
Eric Pouech
d396ec31f9 dbghelp: Dwarf & module's symtype.
- we should set the module's symtype upon success
- removed unneeded bRet variable
2006-06-20 11:37:28 +02:00
Eric Pouech
24743774e8 dbghelp: Dwarf2 & AT_byte_size.
- AT_byte_size can be larger than a single byte (especially for enums)
- added missing enumeration type parsing
2006-06-20 11:37:14 +02:00
Jeremy White
466d3fe8e5 dbghelp: Fix a Solaris compilation error. 2006-06-19 22:38:20 +02:00
Ge van Geldorp
5f299d6fe5 dbghelp: Fix compilation for x86_64. 2006-06-19 21:23:05 +02:00
Michael Stefaniuc
fee72b607a Yet another round of redundant NULL checks before HeapFree. 2006-06-13 11:40:23 +02:00
Pierre d'Herbemont
deab874424 dbghelp: Implement fetch_thread_info on powerpc. 2006-06-09 21:08:26 +02:00
Andrew Talbot
8527f91043 dbghelp: Write-strings warning fix. 2006-06-07 15:23:55 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Eric Pouech
a5b1581e48 dbghelp: SymFindFileInPath and PDB
- implemented correct lookup when SymFindFileInPath is called to find
  a PDB file
- added pdb_fetch_file_info to gather relevant information
- when looking for a PDB file (from a .EXE or a .DLL), now using
  SymFindFileInPath to locate the PDB file with the correct
  information
2006-05-11 12:20:12 +02:00
Eric Pouech
2a1d8efde4 dbghelp: Removed call to registered callback when unloading a module.
First, native dbghelp doesn't do it, and it crashed windbg, likely
because we got the undocumented arguments wrong.
2006-05-11 12:19:24 +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
08ba9cecff dbghelp: Stubbed SymGetSourceFileTokenW. 2006-05-11 12:17:23 +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
d2d85a1b46 dbghelp: Implemented SymGetModuleInfoW and SymGetModuleInfoW64. 2006-05-11 12:16:01 +02:00
Eric Pouech
922a7bd191 dbghelp: Implemented SymLoadModuleExW. 2006-05-11 12:15:21 +02:00
Eric Pouech
4a80e63a29 dbghelp: Implemented SymRegisterCallbackW64 and 64 -> 64W mapping function. 2006-05-11 12:14:51 +02:00
Eric Pouech
2e7d3c386a dbghelp: SymInitializeW.
- implemented SymInitializeW (and made SymInitialize call it)
- implemented Sym{SG}etSearchPathW (and made Sym{SG}etSearchPath
  call them)
- per process search path is now stored as unicode string
2006-05-11 12:14:06 +02:00
Eric Pouech
572e18ef39 dbghelp: Updated spec file. 2006-05-11 12:13:50 +02:00
Eric Pouech
645134397b dbghelp: Stub for SymGetSourceFileToken. 2006-05-08 14:48:10 +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
Alexandre Julliard
ae5aacb4cc dbghelp: Don't fail to initialize if we can't load the main module as ELF. 2006-04-19 14:30:10 +02:00
Paul Vriens
0c24301394 dbghelp: Params of LPSTACKFRAME64 only has 4 elements. 2006-04-17 11:57:47 +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
12eb665402 dbghelp: MSC fixes.
- wrong cut & paste across versions of a given record type
- wrong definition for register_v2
2006-03-18 18:21:30 +01:00
Eric Pouech
7eefc9eb0d dbghelp: Support for LF_VTSHAPE in MSC.
- added preliminary support for VT (virtual table) shape
  type record
- as we don't do C++, it's just a hack to get rid of
  some errors
2006-03-18 18:21:06 +01:00
Eric Pouech
e737dbec7f dbghelp: MSC forward declaration.
- create an infrastructure for handling forward usage
  of type records
- used it in some cases (pointer to yet not defined udt,
  function signature, modifiers)
2006-03-18 18:20:50 +01:00
Eric Pouech
79b47204f0 dbghelp: Type parsing refactoring.
- seperate types' table handling from a single type handling
  by adding codeview_parse_one_type function
- factored all calls for caching symt
- make type parsing helpers return the symt instead of a
  simple error status
2006-03-18 18:20:37 +01:00
Eric Pouech
dadd1080ee dbghelp: Fixes for NB11 types.
- when checking debug info in NB09 or NB11 format (CodeView),
  try to load the global types section
2006-03-18 18:20:10 +01:00
Eric Pouech
9e6573315d dbghelp: MSC handling of function signature's parameters.
- now correctly parsing parameters types for a function
  signature and storing them in dbghelp internal structures
2006-03-18 18:18:18 +01:00
Eric Pouech
209e175d83 dbghelp: Cleanup MSC bitfield handling.
- no longer caching bitfield information but accessing it directly
  when needed
- removed all kludges for bitfield handling
- reused BOOL parameter to codeview_get_type for monitoring
  traces (will be used in later patches)
2006-03-18 18:17:56 +01:00
Eric Pouech
4c2cec5553 dbghelp: Fieldlist.
- now that we have offset tables to type, we can cleanly
  parse the field-lists and remove the associated kludges
- also adding internal structure for easing parameter sharing
  across functions (codeview_type_parse)
- in mscvpdb.h, also reparated the type records that are
  referenced from other type records (union codeview_type_ref)
  from type records referenced by symbols (union codeview_type)
2006-03-18 18:17:30 +01:00
Eric Pouech
633ab584c1 dbghelp: MSC types.
- enforce the type records that can be accessed by symbols (these are
  anyway the high level ones)
2006-03-18 18:17:08 +01:00
Eric Pouech
68a0ca7418 dbghelp: Types parsing.
- our engine for parsing types section now requires in entry
  an offsets table for getting directly to each type in the
  section
- (re)construct this table for PDB types
2006-03-18 18:16:50 +01:00
Eric Pouech
bbf0251c78 dbghelp: CV's ssearch.
- added definitions for start_search symbol info
- silenced warnings from this symbol
2006-03-18 18:16:23 +01:00
Eric Pouech
4143ce5e0b dbghelp: Moved codeview structures and definitions from msc.c to mscvpdb.h. 2006-03-18 18:15:43 +01:00
Eric Pouech
c0e0de6c4e dbghelp: Compiland and source files are not the same thing.
- in MSC debug info parsing, clearly separate a source file
  information from a compiland (including in linetab structure)
- in ELF debug info parsing, now storing compiland directly
  in symtab_elt while browsing the symtab section (we still
  create twice the compilands, once in stabs/dwarf parsing, 
  a second time in symtab parsing)
2006-03-18 18:15:14 +01:00
Eric Pouech
db90e17d92 dbghelp: Live target detection.
- DBGHELP_NOLIVE env variable is tested earlier to avoid 
  some strange effects in live target detection
- in WineDbg, delete DBGHELP_NOLIVE before attaching to
  a process, because we know it must be a live target
2006-03-18 18:05:38 +01:00
Eric Pouech
34636b026b dbghelp: Added type for array index.
- added type for array index
- correctly parsing array index type in stabs, Dwarf2 and MSC formats
- fixed SyGetTypeInfo accordingly
2006-03-06 11:42:44 +01:00
Eric Pouech
e70617883b dbghelp: Implemented TI_GET_COUNT in SymGetTypeInfo for function. 2006-03-06 11:37:02 +01:00
Eric Pouech
88aa6703af dbghelp: Virtual modules.
Rewrote virtual modules handling so that it's an option to either PE
or ELF modules rather than a specific type.
2006-02-20 12:16:08 +01:00
Eric Pouech
0f86dd9324 dbghelp: Fix SymFindFileInPath to return files matching the requested
criteria (it was mainly doing the opposite).
2006-02-20 11:14:34 +01:00