X86: Fix a comment and adjust the stack base address.
authorGabe Black <gblack@eecs.umich.edu>
Sun, 29 Jul 2007 04:18:53 +0000 (21:18 -0700)
committerGabe Black <gblack@eecs.umich.edu>
Sun, 29 Jul 2007 04:18:53 +0000 (21:18 -0700)
The stack base on my development machine starts one page below where it needs to. I don't know why it does, but I've duplicated it in m5.

--HG--
extra : convert_revision : c4783ba885b90f17e843f61e07af0bc3330a74bc

src/arch/x86/process.cc

index 713e5d0a2e7f2747ca101b5d487533cff7169a06..ff23be33966b6c868d2c4a4630ea1ecf07f21753 100644 (file)
@@ -122,9 +122,10 @@ X86LiveProcess::X86LiveProcess(const std::string &nm, ObjectFile *objFile,
     // Set pointer for next thread stack.  Reserve 8M for main stack.
     next_thread_stack_base = stack_base - (8 * 1024 * 1024);
 
-    // Set up stack. On SPARC Linux, stack goes from the top of memory
-    // downward, less the hole for the kernel address space.
-    stack_base = (Addr)0x80000000000ULL;
+    // Set up stack. On X86_64 Linux, stack goes from the top of memory
+    // downward, less the hole for the kernel address space plus one page
+    // for undertermined purposes.
+    stack_base = (Addr)0x7FFFFFFF000ULL;
 
     // Set up region for mmaps.  Tru64 seems to start just above 0 and
     // grow up from there.