Changeset 450 in vbox for trunk/src/VBox
- Timestamp:
- Jan 30, 2007 11:06:24 PM (18 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/DBGFInternal.h
r23 r450 222 222 RTCRITSECT InfoCritSect; 223 223 224 224 /** Range tree containing the loaded symbols of the a VM. 225 * This tree will never have blind spots. */ 226 HCPTRTYPE(AVLRGCPTRTREE) SymbolTree; 227 /** Symbol name space. */ 228 HCPTRTYPE(PRTSTRSPACE) pSymbolSpace; 225 229 /** Indicates whether DBGFSym.cpp is initialized or not. 226 230 * This part is initialized in a lazy manner for performance reasons. */ 227 231 bool fSymInited; 228 /** Range tree containing the loaded symbols of the a VM. 229 * This tree will never have blind spots. */ 230 AVLROGCPTRTREE SymbolTree; 231 /** Symbol name space. */ 232 HCPTRTYPE(PRTSTRSPACE) pSymbolSpace; 232 /** Alignment padding. */ 233 RTUINT uAlignment0; 233 234 234 235 /** The number of hardware breakpoints. */ -
trunk/src/VBox/VMM/DBGFSym.cpp
r23 r450 74 74 { 75 75 /** Node core with the symbol address range. */ 76 AVLR OGCPTRNODECORECore;76 AVLRGCPTRNODECORE Core; 77 77 /** Pointer to the module this symbol is associated with. */ 78 78 PDBGFMOD pModule; … … 116 116 pSym->pModule = NULL; 117 117 pSym->szName[0] = '\0'; 118 if (RTAvlr oGCPtrInsert(&pVM->dbgf.s.SymbolTree, &pSym->Core))118 if (RTAvlrGCPtrInsert(&pVM->dbgf.s.SymbolTree, &pSym->Core)) 119 119 return VINF_SUCCESS; 120 120 AssertReleaseMsgFailed(("Failed to insert %VGv-%VGv!\n", pSym->Core.Key, pSym->Core.KeyLast)); … … 142 142 memcpy(pSym->szName, pszName, cchName); 143 143 144 PDBGFSYM pOld = (PDBGFSYM)RTAvlr oGCPtrRangeGet(&pVM->dbgf.s.SymbolTree, (RTGCPTR)Address);144 PDBGFSYM pOld = (PDBGFSYM)RTAvlrGCPtrRangeGet(&pVM->dbgf.s.SymbolTree, (RTGCPTR)Address); 145 145 if (pOld) 146 146 { … … 148 148 if (pOld->Core.Key == pSym->Core.Key) 149 149 { 150 pOld = (PDBGFSYM)RTAvlr oGCPtrRemove(&pVM->dbgf.s.SymbolTree, (RTGCPTR)Address);150 pOld = (PDBGFSYM)RTAvlrGCPtrRemove(&pVM->dbgf.s.SymbolTree, (RTGCPTR)Address); 151 151 AssertRelease(pOld); 152 152 MMR3HeapFree(pOld); … … 154 154 else 155 155 pOld->Core.KeyLast = Address - 1; 156 if (RTAvlr oGCPtrInsert(&pVM->dbgf.s.SymbolTree, &pSym->Core))156 if (RTAvlrGCPtrInsert(&pVM->dbgf.s.SymbolTree, &pSym->Core)) 157 157 { 158 158 /* … … 199 199 static PDBGFSYM dbgfR3SymbolGetAddr(PVM pVM, RTGCPTR Address) 200 200 { 201 PDBGFSYM pSym = (PDBGFSYM)RTAvlr oGCPtrRangeGet(&pVM->dbgf.s.SymbolTree, Address);201 PDBGFSYM pSym = (PDBGFSYM)RTAvlrGCPtrRangeGet(&pVM->dbgf.s.SymbolTree, Address); 202 202 Assert(pSym); 203 203 if (pSym && pSym->szName[0])
Note:
See TracChangeset
for help on using the changeset viewer.