summaryrefslogtreecommitdiff
path: root/sim/system.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sim/system.cc')
-rw-r--r--sim/system.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/sim/system.cc b/sim/system.cc
index e67cae333..f14a97603 100644
--- a/sim/system.cc
+++ b/sim/system.cc
@@ -54,6 +54,7 @@ System::System(Params *p)
kernelSymtab = new SymbolTable;
consoleSymtab = new SymbolTable;
palSymtab = new SymbolTable;
+ allSymtab = new SymbolTable;
debugSymbolTable = new SymbolTable;
/**
@@ -101,6 +102,21 @@ System::System(Params *p)
if (!pal->loadLocalSymbols(palSymtab))
panic("could not load pal symbols\n");
+ if (!kernel->loadGlobalSymbols(allSymtab))
+ panic("could not load kernel symbols\n");
+
+ if (!kernel->loadLocalSymbols(allSymtab))
+ panic("could not load kernel local symbols\n");
+
+ if (!console->loadGlobalSymbols(allSymtab))
+ panic("could not load console symbols\n");
+
+ if (!pal->loadGlobalSymbols(allSymtab))
+ panic("could not load pal symbols\n");
+
+ if (!pal->loadLocalSymbols(allSymtab))
+ panic("could not load pal symbols\n");
+
if (!kernel->loadGlobalSymbols(debugSymbolTable))
panic("could not load kernel symbols\n");