summaryrefslogtreecommitdiff
path: root/sim
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2004-08-31 23:47:57 -0400
committerAli Saidi <saidi@eecs.umich.edu>2004-08-31 23:47:57 -0400
commit23e0643c6918fe6dd8211d96eb791e69408479b9 (patch)
treeffa81ef221b6b4c1652fe7395a562af9c39174a0 /sim
parent0b0a6778c96c3ac3e3f979d655de0ae595232507 (diff)
downloadgem5-23e0643c6918fe6dd8211d96eb791e69408479b9.tar.xz
Updates to make SMP work.
dev/tsunami_cchip.cc: updates to ipi handling chipset code sim/system.cc: debugSymbolTable, now has symbols from pal, console, and linux --HG-- extra : convert_revision : c981d857f7e3d75f4c46172809e6d14e5f0a1238
Diffstat (limited to 'sim')
-rw-r--r--sim/system.cc19
1 files changed, 17 insertions, 2 deletions
diff --git a/sim/system.cc b/sim/system.cc
index 2d91e187b..de988f8d7 100644
--- a/sim/system.cc
+++ b/sim/system.cc
@@ -55,7 +55,7 @@ System::System(Params *p)
kernelSymtab = new SymbolTable;
consoleSymtab = new SymbolTable;
- debugSymbolTable = kernelSymtab;
+ debugSymbolTable = new SymbolTable;
/**
* Load the kernel, pal, and console code into memory
@@ -89,7 +89,6 @@ System::System(Params *p)
// load symbols
if (!kernel->loadGlobalSymbols(kernelSymtab))
panic("could not load kernel symbols\n");
- debugSymbolTable = kernelSymtab;
if (!kernel->loadLocalSymbols(kernelSymtab))
panic("could not load kernel local symbols\n");
@@ -97,6 +96,22 @@ System::System(Params *p)
if (!console->loadGlobalSymbols(consoleSymtab))
panic("could not load console symbols\n");
+ if (!kernel->loadGlobalSymbols(debugSymbolTable))
+ panic("could not load kernel symbols\n");
+
+ if (!kernel->loadLocalSymbols(debugSymbolTable))
+ panic("could not load kernel local symbols\n");
+
+ if (!console->loadGlobalSymbols(debugSymbolTable))
+ panic("could not load console symbols\n");
+
+ if (!pal->loadGlobalSymbols(debugSymbolTable))
+ panic("could not load pal symbols\n");
+
+ if (!pal->loadLocalSymbols(debugSymbolTable))
+ panic("could not load pal symbols\n");
+
+
DPRINTF(Loader, "Kernel start = %#x\n", kernelStart);
DPRINTF(Loader, "Kernel end = %#x\n", kernelEnd);
DPRINTF(Loader, "Kernel entry = %#x\n", kernelEntry);