Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/timing_L1 --HG-- extra : convert_revision : e314c70da4a9f4e05c9a8afec1de85000618ea4d
This commit is contained in:
commit
b5c788bf8a
6 changed files with 14 additions and 6 deletions
3
configs/boot/micro_memlat.rcS
Normal file
3
configs/boot/micro_memlat.rcS
Normal file
|
@ -0,0 +1,3 @@
|
|||
/benchmarks/micros/lmbench/bin/alphaev6-linux-gnu/lat_mem_rd 512 64
|
||||
m5 exit
|
||||
|
3
configs/boot/micro_syscall.rcS
Normal file
3
configs/boot/micro_syscall.rcS
Normal file
|
@ -0,0 +1,3 @@
|
|||
/benchmarks/micros/lmbench/bin/alphaev6-linux-gnu/lat_syscall null
|
||||
m5 exit
|
||||
|
|
@ -8,4 +8,4 @@ simobj SimConsole(SimObject):
|
|||
intr_control = Param.IntrControl(Super, "interrupt controller")
|
||||
listener = Param.ConsoleListener("console listener")
|
||||
number = Param.Int(0, "console number")
|
||||
output = Param.String('', "file to dump output to")
|
||||
output = Param.String('console', "file to dump output to")
|
||||
|
|
|
@ -287,7 +287,7 @@ LiveProcess::LiveProcess(const string &name, ObjectFile *objFile,
|
|||
|
||||
// Set up region for mmaps. Tru64 seems to start just above 0 and
|
||||
// grow up from there.
|
||||
mmap_base = 0x10000;
|
||||
mmap_start = mmap_end = 0x10000;
|
||||
|
||||
// Set pointer for next thread stack. Reserve 8M for main stack.
|
||||
next_thread_stack_base = stack_base - (8 * 1024 * 1024);
|
||||
|
|
|
@ -93,7 +93,8 @@ class Process : public SimObject
|
|||
Addr next_thread_stack_base;
|
||||
|
||||
// Base of region for mmaps (when user doesn't specify an address).
|
||||
Addr mmap_base;
|
||||
Addr mmap_start;
|
||||
Addr mmap_end;
|
||||
|
||||
std::string prog_fname; // file name
|
||||
Addr prog_entry; // entry point (initial PC)
|
||||
|
@ -158,7 +159,8 @@ class Process : public SimObject
|
|||
{
|
||||
return ((data_base <= addr && addr < brk_point) ||
|
||||
((stack_base - 16*1024*1024) <= addr && addr < stack_base) ||
|
||||
(text_base <= addr && addr < (text_base + text_size)));
|
||||
(text_base <= addr && addr < (text_base + text_size)) ||
|
||||
(mmap_start <= addr && addr < mmap_end));
|
||||
}
|
||||
|
||||
virtual void syscall(ExecContext *xc) = 0;
|
||||
|
|
|
@ -410,8 +410,8 @@ mmapFunc(SyscallDesc *desc, int num, Process *p, ExecContext *xc)
|
|||
|
||||
if (start == 0) {
|
||||
// user didn't give an address... pick one from our "mmap region"
|
||||
start = p->mmap_base;
|
||||
p->mmap_base += RoundUp<Addr>(length, VMPageSize);
|
||||
start = p->mmap_end;
|
||||
p->mmap_end += RoundUp<Addr>(length, VMPageSize);
|
||||
}
|
||||
|
||||
if (!(flags & OS::TGT_MAP_ANONYMOUS)) {
|
||||
|
|
Loading…
Reference in a new issue