summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/arch/sparc/asi.cc27
-rw-r--r--src/arch/sparc/faults.cc73
-rw-r--r--src/arch/sparc/isa/decoder.isa96
-rw-r--r--src/arch/sparc/isa/formats/mem/blockmem.isa6
-rw-r--r--src/arch/sparc/isa/includes.isa3
-rw-r--r--src/arch/sparc/regfile.cc6
-rw-r--r--src/arch/sparc/tlb.cc102
-rw-r--r--src/arch/sparc/tlb_map.hh13
-rw-r--r--src/arch/sparc/ua2005.cc2
-rw-r--r--src/base/loader/elf_object.cc38
-rw-r--r--src/base/loader/elf_object.hh2
-rw-r--r--src/base/loader/object_file.cc6
-rw-r--r--src/base/loader/object_file.hh2
-rw-r--r--src/cpu/exetrace.cc3
-rw-r--r--src/cpu/simple/base.cc2
-rw-r--r--src/dev/alpha/tsunami_io.cc82
-rw-r--r--src/dev/alpha/tsunami_io.hh13
-rw-r--r--src/dev/sparc/SConscript1
-rw-r--r--src/dev/sparc/dtod.cc115
-rw-r--r--src/dev/sparc/dtod.hh67
-rw-r--r--src/python/m5/objects/T1000.py9
-rw-r--r--src/python/m5/objects/Tsunami.py2
-rw-r--r--src/python/m5/params.py70
-rw-r--r--src/sim/byteswap.hh2
-rw-r--r--src/sim/process.cc5
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.ini151
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.out151
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/m5stats.txt80
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stderr8
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stdout10
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.ini150
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.out150
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/m5stats.txt84
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stderr2
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stdout10
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.ini151
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.out151
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/m5stats.txt114
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stderr8
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stdout10
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.ini150
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.out150
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/m5stats.txt102
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stderr2
-rw-r--r--tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stdout10
-rw-r--r--tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.ini296
-rw-r--r--tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.out296
-rw-r--r--tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/m5stats.txt64
-rw-r--r--tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stderr4
-rw-r--r--tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stdout14
50 files changed, 2309 insertions, 756 deletions
diff --git a/src/arch/sparc/asi.cc b/src/arch/sparc/asi.cc
index a9a778ff6..3d553955f 100644
--- a/src/arch/sparc/asi.cc
+++ b/src/arch/sparc/asi.cc
@@ -179,26 +179,23 @@ namespace SparcISA
(asi == ASI_LDTX_PL) ||
(asi == ASI_LDTX_SL) ||
(asi == ASI_BLK_PL) ||
- (asi == ASI_BLK_SL);
+ (asi == ASI_BLK_SL) ||
+ (asi == ASI_LTX_L);
}
bool AsiIsTwin(ASI asi)
{
return
- (asi == ASI_QUAD_LDD) ||
- (asi == ASI_LDTX_AIUP) ||
- (asi == ASI_LDTX_AIUS) ||
- (asi == ASI_LDTX_REAL) ||
- (asi == ASI_LDTX_N) ||
- (asi == ASI_LDTX_AIUP_L) ||
- (asi == ASI_LDTX_AIUS_L) ||
- (asi == ASI_LDTX_REAL_L) ||
- (asi == ASI_LDTX_NL) ||
- (asi == ASI_LDTX_P) ||
- (asi == ASI_LDTX_S) ||
- (asi == ASI_LDTX_PL) ||
- (asi == ASI_LDTX_SL) ||
- (asi == ASI_LTX_L);
+ (asi >= ASI_LDTX_AIUP &&
+ asi <= ASI_LDTX_N &&
+ asi != ASI_QUEUE) ||
+ (asi >= ASI_LDTX_AIUP_L &&
+ asi <= ASI_LDTX_NL &&
+ asi != 0x2D) ||
+ asi == ASI_LDTX_P ||
+ asi == ASI_LDTX_S ||
+ asi == ASI_LDTX_PL ||
+ asi == ASI_LDTX_SL;
}
bool AsiIsPartialStore(ASI asi)
diff --git a/src/arch/sparc/faults.cc b/src/arch/sparc/faults.cc
index a74eebafa..825ff40f6 100644
--- a/src/arch/sparc/faults.cc
+++ b/src/arch/sparc/faults.cc
@@ -312,6 +312,11 @@ void doREDFault(ThreadContext *tc, TrapType tt)
TL++;
+ if (bits(PSTATE, 3,3)) {
+ PC &= mask(32);
+ NPC &= mask(32);
+ }
+
//set TSTATE.gl to gl
replaceBits(TSTATE, 42, 40, GL);
//set TSTATE.ccr to ccr
@@ -340,22 +345,8 @@ void doREDFault(ThreadContext *tc, TrapType tt)
//Update GL
tc->setMiscRegWithEffect(MISCREG_GL, min<int>(GL+1, MaxGL));
- //set PSTATE.mm to 00
- //set PSTATE.pef to 1
- PSTATE |= (1 << 4);
- //set PSTATE.am to 0
- PSTATE &= ~(1 << 3);
-/* //set PSTATE.priv to 0
- PSTATE &= ~(1 << 2);*/
- //set PSTATE.ie to 0
- //PSTATE.priv is set to 1 here. The manual says it should be 0, but
- //Legion sets it to 1.
- PSTATE |= (1 << 2);
- //set PSTATE.cle to 0
- PSTATE &= ~(1 << 9);
- //PSTATE.tle is unchanged
- //XXX Where is the tct bit?
- //set PSTATE.tct to 0
+ PSTATE = mbits(PSTATE, 2, 2); // just save the priv bit
+ PSTATE |= (1 << 4); //set PSTATE.pef to 1
tc->setMiscReg(MISCREG_PSTATE, PSTATE);
//set HPSTATE.red to 1
@@ -404,6 +395,11 @@ void doNormalFault(ThreadContext *tc, TrapType tt, bool gotoHpriv)
MiscReg PC = tc->readPC();
MiscReg NPC = tc->readNextPC();
+ if (bits(PSTATE, 3,3)) {
+ PC &= mask(32);
+ NPC &= mask(32);
+ }
+
//Increment the trap level
TL++;
tc->setMiscReg(MISCREG_TL, TL);
@@ -442,46 +438,27 @@ void doNormalFault(ThreadContext *tc, TrapType tt, bool gotoHpriv)
tc->setMiscRegWithEffect(MISCREG_GL, min<int>(GL+1, MaxGL));
//PSTATE.mm is unchanged
- //PSTATE.pef = whether or not an fpu is present
- //XXX We'll say there's one present, even though there aren't
- //implementations for a decent number of the instructions
- PSTATE |= (1 << 4);
- //PSTATE.am = 0
- PSTATE &= ~(1 << 3);
- if (!gotoHpriv)
- {
- //PSTATE.priv = 1
- PSTATE |= (1 << 2);
- //PSTATE.cle = PSTATE.tle
- replaceBits(PSTATE, 9, 9, PSTATE >> 8);
- }
- else
- {
- //PSTATE.priv = 0
- //PSTATE.priv is set to 1 here. The manual says it should be 0, but
- //Legion sets it to 1.
- PSTATE |= (1 << 2);
- //PSTATE.cle = 0
- PSTATE &= ~(1 << 9);
- }
- //PSTATE.ie = 0
- PSTATE &= ~(1 << 1);
+ PSTATE |= (1 << 4); //PSTATE.pef = whether or not an fpu is present
+ PSTATE &= ~(1 << 3); //PSTATE.am = 0
+ PSTATE &= ~(1 << 1); //PSTATE.ie = 0
//PSTATE.tle is unchanged
//PSTATE.tct = 0
- //XXX Where exactly is this field?
- tc->setMiscReg(MISCREG_PSTATE, PSTATE);
if (gotoHpriv)
{
- //HPSTATE.red = 0
- HPSTATE &= ~(1 << 5);
- //HPSTATE.hpriv = 1
- HPSTATE |= (1 << 2);
- //HPSTATE.ibe = 0
- HPSTATE &= ~(1 << 10);
+ PSTATE &= ~(1 << 9); // PSTATE.cle = 0
+ //The manual says PSTATE.priv should be 0, but Legion leaves it alone
+ HPSTATE &= ~(1 << 5); //HPSTATE.red = 0
+ HPSTATE |= (1 << 2); //HPSTATE.hpriv = 1
+ HPSTATE &= ~(1 << 10); //HPSTATE.ibe = 0
//HPSTATE.tlz is unchanged
tc->setMiscReg(MISCREG_HPSTATE, HPSTATE);
+ } else { // we are going to priv
+ PSTATE |= (1 << 2); //PSTATE.priv = 1
+ replaceBits(PSTATE, 9, 9, PSTATE >> 8); //PSTATE.cle = PSTATE.tle
}
+ tc->setMiscReg(MISCREG_PSTATE, PSTATE);
+
bool changedCWP = true;
if (tt == 0x24)
diff --git a/src/arch/sparc/isa/decoder.isa b/src/arch/sparc/isa/decoder.isa
index bd1a44342..425ebc9d0 100644
--- a/src/arch/sparc/isa/decoder.isa
+++ b/src/arch/sparc/isa/decoder.isa
@@ -163,7 +163,10 @@ decode OP default Unknown::unknown()
0x6: Trap::fbfcc({{fault = new FpDisabled;}});
}
0x1: BranchN::call(30, {{
- R15 = xc->readPC();
+ if (Pstate<3:>)
+ R15 = (xc->readPC())<31:0>;
+ else
+ R15 = xc->readPC();
NNPC = R15 + disp;
}});
0x2: decode OP3 {
@@ -183,7 +186,7 @@ decode OP default Unknown::unknown()
Y = Rd<63:32>;
}});
0x0B: smul({{
- Rd.sdw = Rs1.sdw<31:0> * Rs2_or_imm13<31:0>;
+ Rd.sdw = sext<32>(Rs1.sdw) * sext<32>(Rs2_or_imm13);
Y = Rd.sdw<63:32>;
}});
0x0C: subc({{Rd.sdw = Rs1.sdw + (~Rs2_or_imm13) + 1 - Ccr<0:0>}});
@@ -206,10 +209,10 @@ decode OP default Unknown::unknown()
else
{
Rd.udw = ((int64_t)((Y << 32) | Rs1.sdw<31:0>)) / Rs2_or_imm13.sdw;
- if(Rd.udw<63:31> != 0)
+ if((int64_t)Rd.udw >= std::numeric_limits<int32_t>::max())
Rd.udw = 0x7FFFFFFF;
- else if(Rd.udw<63:> && Rd.udw<62:31> != 0xFFFFFFFF)
- Rd.udw = 0xFFFFFFFF80000000ULL;
+ else if((int64_t)Rd.udw <= std::numeric_limits<int32_t>::min())
+ Rd.udw = ULL(0xFFFFFFFF80000000);
}
}});
}
@@ -254,7 +257,7 @@ decode OP default Unknown::unknown()
{{0}},{{0}},{{0}},{{0}});
0x1B: smulcc({{
int64_t resTemp;
- Rd = resTemp = Rs1.sdw<31:0> * Rs2_or_imm13.sdw<31:0>;
+ Rd = resTemp = sext<32>(Rs1.sdw) * sext<32>(Rs2_or_imm13);
Y = resTemp<63:32>;}},
{{0}},{{0}},{{0}},{{0}});
0x1C: subccc({{
@@ -293,10 +296,10 @@ decode OP default Unknown::unknown()
else
{
Rd = (int64_t)((Y << 32) | Rs1.sdw<31:0>) / val2;
- overflow = (Rd<63:31> != 0);
- underflow = (Rd<63:> && Rd<62:31> != 0xFFFFFFFF);
+ overflow = ((int64_t)Rd >= std::numeric_limits<int32_t>::max());
+ underflow = ((int64_t)Rd <= std::numeric_limits<int32_t>::min());
if(overflow) Rd = 0x7FFFFFFF;
- else if(underflow) Rd = 0xFFFFFFFF80000000ULL;
+ else if(underflow) Rd = ULL(0xFFFFFFFF80000000);
} }},
{{0}},
{{overflow || underflow}},
@@ -373,7 +376,7 @@ decode OP default Unknown::unknown()
0x1: srax({{Rd = Rs1.sdw >> (I ? SHCNT64 : Rs2<5:0>);}});
}
0x28: decode RS1 {
- 0x00: NoPriv::rdy({{Rd = Y;}});
+ 0x00: NoPriv::rdy({{Rd = Y<31:0>;}});
//1 should cause an illegal instruction exception
0x02: NoPriv::rdccr({{Rd = Ccr;}});
0x03: NoPriv::rdasi({{Rd = Asi;}});
@@ -468,12 +471,12 @@ decode OP default Unknown::unknown()
//0x11-0x1F should cause an illegal instruction exception
}
0x2B: BasicOperate::flushw({{
- if(NWindows - 2 - Cansave == 0)
+ if(NWindows - 2 - Cansave != 0)
{
if(Otherwin)
- fault = new SpillNOther(Wstate<5:3>);
+ fault = new SpillNOther(4*Wstate<5:3>);
else
- fault = new SpillNNormal(Wstate<2:0>);
+ fault = new SpillNNormal(4*Wstate<2:0>);
}
}});
0x2C: decode MOVCC3
@@ -523,7 +526,7 @@ decode OP default Unknown::unknown()
0x7: movrge({{Rd = (Rs1.sdw >= 0) ? Rs2_or_imm10 : Rd;}});
}
0x30: decode RD {
- 0x00: NoPriv::wry({{Y = Rs1 ^ Rs2_or_imm13;}});
+ 0x00: NoPriv::wry({{Y = (Rs1 ^ Rs2_or_imm13)<31:0>;}});
//0x01 should cause an illegal instruction exception
0x02: NoPriv::wrccr({{Ccr = Rs1 ^ Rs2_or_imm13;}});
0x03: NoPriv::wrasi({{Asi = Rs1 ^ Rs2_or_imm13;}});
@@ -578,6 +581,9 @@ decode OP default Unknown::unknown()
Cansave = Cansave - 1;
else
Otherwin = Otherwin - 1;
+
+ if(Cleanwin < NWindows - 1)
+ Cleanwin = Cleanwin + 1;
}});
}
0x32: decode RD {
@@ -875,7 +881,10 @@ decode OP default Unknown::unknown()
fault = new MemAddressNotAligned;
else
{
- Rd = xc->readPC();
+ if (Pstate<3:>)
+ Rd = (xc->readPC())<31:0>;
+ else
+ Rd = xc->readPC();
NNPC = target;
}
}});
@@ -893,9 +902,9 @@ decode OP default Unknown::unknown()
if(Canrestore == 0)
{
if(Otherwin)
- fault = new FillNOther(Wstate<5:3>);
+ fault = new FillNOther(4*Wstate<5:3>);
else
- fault = new FillNNormal(Wstate<2:0>);
+ fault = new FillNNormal(4*Wstate<2:0>);
}
else
{
@@ -949,9 +958,9 @@ decode OP default Unknown::unknown()
if(Cansave == 0)
{
if(Otherwin)
- fault = new SpillNOther(Wstate<5:3>);
+ fault = new SpillNOther(4*Wstate<5:3>);
else
- fault = new SpillNNormal(Wstate<2:0>);
+ fault = new SpillNNormal(4*Wstate<2:0>);
//Cwp = (Cwp + 2) % NWindows;
}
else if(Cleanwin - Canrestore == 0)
@@ -975,9 +984,9 @@ decode OP default Unknown::unknown()
if(Canrestore == 0)
{
if(Otherwin)
- fault = new FillNOther(Wstate<5:3>);
+ fault = new FillNOther(4*Wstate<5:3>);
else
- fault = new FillNNormal(Wstate<2:0>);
+ fault = new FillNNormal(4*Wstate<2:0>);
}
else
{
@@ -1049,39 +1058,49 @@ decode OP default Unknown::unknown()
0x0B: ldx({{Rd = (int64_t)Mem.sdw;}});
}
0x0D: LoadStore::ldstub(
- {{Rd = Mem.ub;}},
- {{Mem.ub = 0xFF;}});
+ {{uReg0 = Mem.ub;}},
+ {{Rd.ub = uReg0;
+ Mem.ub = 0xFF;}});
0x0E: Store::stx({{Mem.udw = Rd}});
0x0F: LoadStore::swap(
- {{uReg0 = Rd.uw;
- Rd.uw = Mem.uw;}},
- {{Mem.uw = uReg0;}});
+ {{ uReg0 = Mem.uw}},
+ {{ Mem.uw = Rd.uw;
+ Rd.uw = uReg0;}});
format LoadAlt {
0x10: lduwa({{Rd = Mem.uw;}}, {{EXT_ASI}});
0x11: lduba({{Rd = Mem.ub;}}, {{EXT_ASI}});
0x12: lduha({{Rd = Mem.uhw;}}, {{EXT_ASI}});
0x13: decode EXT_ASI {
+ //ASI_LDTD_AIUP
+ 0x22: TwinLoad::ldtx_aiup(
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
+ //ASI_LDTD_AIUS
+ 0x23: TwinLoad::ldtx_aius(
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_QUAD_LDD
0x24: TwinLoad::ldtx_quad_ldd(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_LDTX_REAL
0x26: TwinLoad::ldtx_real(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_LDTX_N
0x27: TwinLoad::ldtx_n(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_LDTX_L
0x2C: TwinLoad::ldtx_l(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_LDTX_REAL_L
0x2E: TwinLoad::ldtx_real_l(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_LDTX_N_L
0x2F: TwinLoad::ldtx_n_l(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
//ASI_LDTX_P
0xE2: TwinLoad::ldtx_p(
- {{RdTwin.udw = Mem.udw}}, {{EXT_ASI}});
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
+ //ASI_LDTX_S
+ 0xE3: TwinLoad::ldtx_s(
+ {{RdTwin.udw = Mem.udw;}}, {{EXT_ASI}});
default: ldtwa({{
uint64_t val = Mem.udw;
RdLow = val<31:0>;
@@ -1102,13 +1121,14 @@ decode OP default Unknown::unknown()
0x1B: ldxa({{Rd = (int64_t)Mem.sdw;}}, {{EXT_ASI}});
}
0x1D: LoadStoreAlt::ldstuba(
- {{Rd = Mem.ub;}},
- {{Mem.ub = 0xFF}}, {{EXT_ASI}});
+ {{uReg0 = Mem.ub;}},
+ {{Rd.ub = uReg0;
+ Mem.ub = 0xFF;}}, {{EXT_ASI}});
0x1E: StoreAlt::stxa({{Mem.udw = Rd}}, {{EXT_ASI}});
0x1F: LoadStoreAlt::swapa(
- {{uReg0 = Rd.uw;
- Rd.uw = Mem.uw;}},
- {{Mem.uw = uReg0;}}, {{EXT_ASI}});
+ {{ uReg0 = Mem.uw}},
+ {{ Mem.uw = Rd.uw;
+ Rd.uw = uReg0;}}, {{EXT_ASI}});
format Trap {
0x20: Load::ldf({{Frd.uw = Mem.uw;}});
0x21: decode X {
diff --git a/src/arch/sparc/isa/formats/mem/blockmem.isa b/src/arch/sparc/isa/formats/mem/blockmem.isa
index 32421a75f..c36fede2e 100644
--- a/src/arch/sparc/isa/formats/mem/blockmem.isa
+++ b/src/arch/sparc/isa/formats/mem/blockmem.isa
@@ -476,7 +476,6 @@ let {{
faultCode = ''
return (header_output, decoder_output, exec_output, decode_block)
-
def doTwinLoadFormat(code, faultCode, name, Name, asi, opt_flags):
addrCalcReg = 'EA = Rs1 + Rs2 + offset;'
addrCalcImm = 'EA = Rs1 + imm + offset;'
@@ -492,10 +491,11 @@ let {{
pcedCode = ''
if (microPc == 1):
flag_code = "flags[IsLastMicroOp] = true;"
- pcedCode = matcher.sub("RdHigh", code)
+ pcedCode = "RdLow = uReg0;\n"
+ pcedCode += matcher.sub("RdHigh", code)
else:
flag_code = "flags[IsDelayedCommit] = true; flags[IsFirstMicroOp] = true;"
- pcedCode = matcher.sub("RdLow", code)
+ pcedCode = matcher.sub("uReg0", code)
iop = InstObjParams(name, Name, 'TwinMem', pcedCode,
opt_flags, {"ea_code": addrCalcReg,
"fault_check": faultCode, "micro_pc": microPc,
diff --git a/src/arch/sparc/isa/includes.isa b/src/arch/sparc/isa/includes.isa
index 624afb693..0c112d481 100644
--- a/src/arch/sparc/isa/includes.isa
+++ b/src/arch/sparc/isa/includes.isa
@@ -1,4 +1,4 @@
-// Copyright (c) 2006 The Regents of The University of Michigan
+// Copyright (c) 2006-2007 The Regents of The University of Michigan
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
@@ -63,6 +63,7 @@ output exec {{
#if defined(linux)
#include <fenv.h>
#endif
+#include <limits>
#include "arch/sparc/asi.hh"
#include "cpu/base.hh"
diff --git a/src/arch/sparc/regfile.cc b/src/arch/sparc/regfile.cc
index 5d8ac6a17..b36133544 100644
--- a/src/arch/sparc/regfile.cc
+++ b/src/arch/sparc/regfile.cc
@@ -189,10 +189,10 @@ int SparcISA::InterruptLevel(uint64_t softint)
if (softint & 0x10000 || softint & 0x1)
return 14;
- int level = 14;
- while (level >= 0 && !(1 << (level + 1) & softint))
+ int level = 15;
+ while (level > 0 && !(1 << level & softint))
level--;
- if (1 << (level + 1) & softint)
+ if (1 << level & softint)
return level;
return 0;
}
diff --git a/src/arch/sparc/tlb.cc b/src/arch/sparc/tlb.cc
index 612345300..bf57c894f 100644
--- a/src/arch/sparc/tlb.cc
+++ b/src/arch/sparc/tlb.cc
@@ -85,6 +85,7 @@ TLB::insert(Addr va, int partition_id, int context_id, bool real,
int x;
cacheValid = false;
+ va &= ~(PTE.size()-1);
/* tr.va = va;
tr.size = PTE.size() - 1;
tr.contextId = context_id;
@@ -169,8 +170,8 @@ insertAllLocked:
freeList.remove(new_entry);
if (new_entry->valid && new_entry->used)
usedEntries--;
-
- lookupTable.erase(new_entry->range);
+ if (new_entry->valid)
+ lookupTable.erase(new_entry->range);
DPRINTF(TLB, "Using entry: %#X\n", new_entry);
@@ -414,6 +415,9 @@ TLB::writeSfsr(ThreadContext *tc, int reg, bool write, ContextType ct,
void
TLB::writeTagAccess(ThreadContext *tc, int reg, Addr va, int context)
{
+ DPRINTF(TLB, "TLB: Writing Tag Access: va: %#X ctx: %#X value: %#X\n",
+ va, context, mbits(va, 63,13) | mbits(context,12,0));
+
tc->setMiscRegWithEffect(reg, mbits(va, 63,13) | mbits(context,12,0));
}
@@ -536,8 +540,7 @@ ITB::translate(RequestPtr &req, ThreadContext *tc)
}
if (e == NULL || !e->valid) {
- tc->setMiscReg(MISCREG_MMU_ITLB_TAG_ACCESS,
- vaddr & ~BytesInPageMask | context);
+ writeTagAccess(tc, vaddr, context);
if (real)
return new InstructionRealTranslationMiss;
else
@@ -546,6 +549,7 @@ ITB::translate(RequestPtr &req, ThreadContext *tc)
// were not priviledged accesing priv page
if (!priv && e->pte.priv()) {
+ writeTagAccess(tc, vaddr, context);
writeSfsr(tc, false, ct, false, PrivViolation, asi);
return new InstructionAccessException;
}
@@ -578,6 +582,9 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write)
DPRINTF(TLB, "TLB: DTB Request to translate va=%#x size=%d asi=%#x\n",
vaddr, size, asi);
+ if (lookupTable.size() != 64 - freeList.size())
+ panic("Lookup table size: %d tlb size: %d\n", lookupTable.size(),
+ freeList.size());
if (asi == ASI_IMPLICIT)
implicit = true;
@@ -589,13 +596,15 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write)
// Be fast if we can!
if (cacheValid && cacheState == tlbdata) {
if (cacheEntry[0] && cacheAsi[0] == asi && cacheEntry[0]->range.va < vaddr + size &&
- cacheEntry[0]->range.va + cacheEntry[0]->range.size > vaddr) {
+ cacheEntry[0]->range.va + cacheEntry[0]->range.size > vaddr &&
+ (!write || cacheEntry[0]->pte.writable())) {
req->setPaddr(cacheEntry[0]->pte.paddr() & ~(cacheEntry[0]->pte.size()-1) |
vaddr & cacheEntry[0]->pte.size()-1 );
return NoFault;
}
if (cacheEntry[1] && cacheAsi[1] == asi && cacheEntry[1]->range.va < vaddr + size &&
- cacheEntry[1]->range.va + cacheEntry[1]->range.size > vaddr) {
+ cacheEntry[1]->range.va + cacheEntry[1]->range.size > vaddr &&
+ (!write || cacheEntry[1]->pte.writable())) {
req->setPaddr(cacheEntry[1]->pte.paddr() & ~(cacheEntry[1]->pte.size()-1) |
vaddr & cacheEntry[1]->pte.size()-1 );
return NoFault;
@@ -610,7 +619,7 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write)
int part_id = bits(tlbdata,15,8);
int tl = bits(tlbdata,18,16);
int pri_context = bits(tlbdata,47,32);
- int sec_context = bits(tlbdata,47,32);
+ int sec_context = bits(tlbdata,63,48);
bool real = false;
ContextType ct = Primary;
@@ -631,48 +640,42 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write)
ct = Primary;
context = pri_context;
}
- } else if (!hpriv && !red) {
- if (tl > 0 || AsiIsNucleus(asi)) {
- ct = Nucleus;
- context = 0;
- } else if (AsiIsSecondary(asi)) {
- ct = Secondary;
- context = sec_context;
- } else {
- context = pri_context;
- ct = Primary; //???
- }
-
+ } else {
// We need to check for priv level/asi priv
- if (!priv && !AsiIsUnPriv(asi)) {
+ if (!priv && !hpriv && !AsiIsUnPriv(asi)) {
// It appears that context should be Nucleus in these cases?
writeSfr(tc, vaddr, write, Nucleus, false, IllegalAsi, asi);
return new PrivilegedAction;
}
- if (priv && AsiIsHPriv(asi)) {
+
+ if (!hpriv && AsiIsHPriv(asi)) {
writeSfr(tc, vaddr, write, Nucleus, false, IllegalAsi, asi);
return new DataAccessException;
}
- }
- if (asi == ASI_P || asi == ASI_LDTX_P) {
- ct = Primary;
- context = pri_context;
- goto continueDtbFlow;
+ if (AsiIsPrimary(asi)) {
+ context = pri_context;
+ ct = Primary;
+ } else if (AsiIsSecondary(asi)) {
+ context = sec_context;
+ ct = Secondary;
+ } else if (AsiIsNucleus(asi)) {
+ ct = Nucleus;
+ context = 0;
+ } else { // ????
+ ct = Primary;
+ context = pri_context;
+ }
}
- if (!implicit) {
+ if (!implicit && asi != ASI_P && asi != ASI_S) {
if (AsiIsLittle(asi))
panic("Little Endian ASIs not supported\n");
if (AsiIsBlock(asi))
panic("Block ASIs not supported\n");
if (AsiIsNoFault(asi))
panic("No Fault ASIs not supported\n");
- if (!write && (asi == ASI_QUAD_LDD || asi == ASI_LDTX_REAL))
- goto continueDtbFlow;
- if (AsiIsTwin(asi))
- panic("Twin ASIs not supported\n");
if (AsiIsPartialStore(asi))
panic("Partial Store ASIs not supported\n");
if (AsiIsInterrupt(asi))
@@ -687,11 +690,11 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write)
if (AsiIsSparcError(asi))
goto handleSparcErrorRegAccess;
- if (!AsiIsReal(asi) && !AsiIsNucleus(asi))
+ if (!AsiIsReal(asi) && !AsiIsNucleus(asi) && !AsiIsAsIfUser(asi) &&
+ !AsiIsTwin(asi))
panic("Accessing ASI %#X. Should we?\n", asi);
}
-continueDtbFlow:
// If the asi is unaligned trap
if (vaddr & size-1) {
writeSfr(tc, vaddr, false, ct, false, OtherFault, asi);
@@ -707,7 +710,7 @@ continueDtbFlow:
}
- if ((!lsu_dm && !hpriv) || AsiIsReal(asi)) {
+ if ((!lsu_dm && !hpriv && !red) || AsiIsReal(asi)) {
real = true;
context = 0;
};
@@ -720,8 +723,7 @@ continueDtbFlow:
e = lookup(vaddr, part_id, real, context);
if (e == NULL || !e->valid) {
- tc->setMiscReg(MISCREG_MMU_DTLB_TAG_ACCESS,
- vaddr & ~BytesInPageMask | context);
+ writeTagAccess(tc, vaddr, context);
DPRINTF(TLB, "TLB: DTB Failed to find matching TLB entry\n");
if (real)
return new DataRealTranslationMiss;
@@ -730,26 +732,34 @@ continueDtbFlow:
}
+ if (!priv && e->pte.priv()) {
+ writeTagAccess(tc, vaddr, context);
+ writeSfr(tc, vaddr, write, ct, e->pte.sideffect(), PrivViolation, asi);
+ return new DataAccessException;
+ }
if (write && !e->pte.writable()) {
+ writeTagAccess(tc, vaddr, context);
writeSfr(tc, vaddr, write, ct, e->pte.sideffect(), OtherFault, asi);
return new FastDataAccessProtection;
}
if (e->pte.nofault() && !AsiIsNoFault(asi)) {
+ writeTagAccess(tc, vaddr, context);
writeSfr(tc, vaddr, write, ct, e->pte.sideffect(), LoadFromNfo, asi);
return new DataAccessException;
}
- if (e->pte.sideffect())
- req->setFlags(req->getFlags() | UNCACHEABLE);
-
-
- if (!priv && e->pte.priv()) {
- writeSfr(tc, vaddr, write, ct, e->pte.sideffect(), PrivViolation, asi);
+ if (e->pte.sideffect() && AsiIsNoFault(asi)) {
+ writeTagAccess(tc, vaddr, context);
+ writeSfr(tc, vaddr, write, ct, e->pte.sideffect(), SideEffect, asi);
return new DataAccessException;
}
+
+ if (e->pte.sideffect())
+ req->setFlags(req->getFlags() | UNCACHEABLE);
+
// cache translation date for next translation
cacheState = tlbdata;
if (!cacheValid) {
@@ -893,7 +903,7 @@ DTB::doMmuRegRead(ThreadContext *tc, Packet *pkt)
break;
case ASI_SPARC_ERROR_STATUS_REG:
warn("returning 0 for SPARC ERROR regsiter read\n");
- pkt->set(0);
+ pkt->set((uint64_t)0);
break;
case ASI_HYP_SCRATCHPAD:
case ASI_SCRATCHPAD:
@@ -963,7 +973,7 @@ DTB::doMmuRegRead(ThreadContext *tc, Packet *pkt)
data = mbits(tsbtemp,63,13);
if (bits(tsbtemp,12,12))
data |= ULL(1) << (13+bits(tsbtemp,3,0));
- data |= temp >> (9 + bits(cnftemp,2,0) * 3) &
+ data |= temp >> (9 + bits(cnftemp,10,8) * 3) &
mbits((uint64_t)-1ll,12+bits(tsbtemp,3,0), 4);
pkt->set(data);
break;
@@ -993,7 +1003,7 @@ DTB::doMmuRegRead(ThreadContext *tc, Packet *pkt)
data = mbits(tsbtemp,63,13);
if (bits(tsbtemp,12,12))
data |= ULL(1) << (13+bits(tsbtemp,3,0));
- data |= temp >> (9 + bits(cnftemp,2,0) * 3) &
+ data |= temp >> (9 + bits(cnftemp,10,8) * 3) &
mbits((uint64_t)-1ll,12+bits(tsbtemp,3,0), 4);
pkt->set(data);
break;
@@ -1112,6 +1122,7 @@ DTB::doMmuRegWrite(ThreadContext *tc, Packet *pkt)
tc->setMiscRegWithEffect(MISCREG_MMU_ITLB_SFSR, data);
break;
case 0x30:
+ sext<59>(bits(data, 59,0));
tc->setMiscRegWithEffect(MISCREG_MMU_ITLB_TAG_ACCESS, data);
break;
default:
@@ -1186,6 +1197,7 @@ DTB::doMmuRegWrite(ThreadContext *tc, Packet *pkt)
tc->setMiscRegWithEffect(MISCREG_MMU_DTLB_SFSR, data);
break;
case 0x30:
+ sext<59>(bits(data, 59,0));
tc->setMiscRegWithEffect(MISCREG_MMU_DTLB_TAG_ACCESS, data);
break;
case 0x80:
diff --git a/src/arch/sparc/tlb_map.hh b/src/arch/sparc/tlb_map.hh
index 688daf5b9..8285db939 100644
--- a/src/arch/sparc/tlb_map.hh
+++ b/src/arch/sparc/tlb_map.hh
@@ -135,6 +135,19 @@ class TlbMap
{
return tree.empty();
}
+
+ void print()
+ {
+ iterator i;
+ i = tree.begin();
+ while (i != tree.end()) {
+ std::cout << std::hex << i->first.va << " " << i->first.size << " " <<
+ i->first.contextId << " " << i->first.partitionId << " " <<
+ i->first.real << " " << i->second << std::endl;
+ i++;
+ }
+ }
+
};
};
diff --git a/src/arch/sparc/ua2005.cc b/src/arch/sparc/ua2005.cc
index b583da8b0..ecb63bb9a 100644
--- a/src/arch/sparc/ua2005.cc
+++ b/src/arch/sparc/ua2005.cc
@@ -43,8 +43,6 @@ MiscRegFile::setFSRegWithEffect(int miscReg, const MiscReg &val,
/* Full system only ASRs */
case MISCREG_SOFTINT:
setReg(miscReg, val);;
- if (val != 0x10000 && val != 0)
- warn("Writing to softint not really supported, writing: %#x\n", val);
break;
case MISCREG_SOFTINT_CLR:
diff --git a/src/base/loader/elf_object.cc b/src/base/loader/elf_object.cc
index 7339507f6..d59affe85 100644
--- a/src/base/loader/elf_object.cc
+++ b/src/base/loader/elf_object.cc
@@ -340,3 +340,41 @@ ElfObject::loadLocalSymbols(SymbolTable *symtab, Addr addrMask)
{
return loadSomeSymbols(symtab, STB_LOCAL);
}
+
+bool
+ElfObject::isDynamic()
+{
+ Elf *elf;
+ int sec_idx = 1; // there is a 0 but it is nothing, go figure
+ Elf_Scn *section;
+ GElf_Shdr shdr;
+
+ GElf_Ehdr ehdr;
+
+ // check that header matches library version
+ if (elf_version(EV_CURRENT) == EV_NONE)
+ panic("wrong elf version number!");
+
+ // get a pointer to elf structure
+ elf = elf_memory((char*)fileData,len);
+ assert(elf != NULL);
+
+ // Check that we actually have a elf file
+ if (gelf_getehdr(elf, &ehdr) ==0) {
+ panic("Not ELF, shouldn't be here");
+ }
+
+ // Get the first section
+ section = elf_getscn(elf, sec_idx);
+
+ // While there are no more sections
+ while (section != NULL) {
+ gelf_getshdr(section, &shdr);
+ if (!strcmp(".interp", elf_strptr(elf, ehdr.e_shstrndx, shdr.sh_name)))
+ return true;
+ section = elf_getscn(elf, ++sec_idx);
+ } // while sections
+ return false;
+}
+
+
diff --git a/src/base/loader/elf_object.hh b/src/base/loader/elf_object.hh
index fb728b3c5..d909140f3 100644
--- a/src/base/loader/elf_object.hh
+++ b/src/base/loader/elf_object.hh
@@ -58,6 +58,8 @@ class ElfObject : public ObjectFile
virtual bool loadLocalSymbols(SymbolTable *symtab, Addr addrMask =
std::numeric_limits<Addr>::max());
+ virtual bool isDynamic();
+
static ObjectFile *tryFile(const std::string &fname, int fd,
size_t len, uint8_t *data);
Addr programHeaderTable() {return _programHeaderTable;}
diff --git a/src/base/loader/object_file.cc b/src/base/loader/object_file.cc
index ad2cd34ba..da5aa9552 100644
--- a/src/base/loader/object_file.cc
+++ b/src/base/loader/object_file.cc
@@ -150,3 +150,9 @@ createObjectFile(const string &fname, bool raw)
munmap(fileData, len);
return NULL;
}
+
+bool
+ObjectFile::isDynamic()
+{
+ return false;
+}
diff --git a/src/base/loader/object_file.hh b/src/base/loader/object_file.hh
index 6e98332c5..18e6482be 100644
--- a/src/base/loader/object_file.hh
+++ b/src/base/loader/object_file.hh
@@ -83,6 +83,8 @@ class ObjectFile
virtual bool loadLocalSymbols(SymbolTable *symtab, Addr addrMask =
std::numeric_limits<Addr>::max()) = 0;
+ virtual bool isDynamic();
+
Arch getArch() const { return arch; }
OpSys getOpSys() const { return opSys; }
diff --git a/src/cpu/exetrace.cc b/src/cpu/exetrace.cc
index 87075c1ec..26e8b6b44 100644
--- a/src/cpu/exetrace.cc
+++ b/src/cpu/exetrace.cc
@@ -340,6 +340,9 @@ Trace::InstRecord::dump(ostream &outs)
while (!compared) {
if (shared_data->flags == OWN_M5) {
m5Pc = PC & TheISA::PAddrImplMask;
+ if (bits(shared_data->pstate,3,3)) {
+ m5Pc &= mask(32);
+ }
lgnPc = shared_data->pc & TheISA::PAddrImplMask;
if (lgnPc != m5Pc)
diffPC = true;
diff --git a/src/cpu/simple/base.cc b/src/cpu/simple/base.cc
index 9e5dfe2a6..b8d1f3bed 100644
--- a/src/cpu/simple/base.cc
+++ b/src/cpu/simple/base.cc
@@ -438,6 +438,8 @@ BaseSimpleCPU::advancePC(Fault fault)
if (fault != NoFault) {
curMacroStaticInst = StaticInst::nullStaticInstPtr;
fault->invoke(tc);
+ thread->setMicroPC(0);
+ thread->setNextMicroPC(1);
} else {
//If we're at the last micro op for this instruction
if (curStaticInst->isLastMicroOp()) {
diff --git a/src/dev/alpha/tsunami_io.cc b/src/dev/alpha/tsunami_io.cc
index 38986b77e..d701dc98f 100644
--- a/src/dev/alpha/tsunami_io.cc
+++ b/src/dev/alpha/tsunami_io.cc
@@ -57,25 +57,77 @@ using namespace std;
//Should this be AlphaISA?
using namespace TheISA;
-TsunamiIO::RTC::RTC(const string &n, Tsunami* tsunami, time_t t, Tick i)
- : _name(n), event(tsunami, i), addr(0)
+TsunamiIO::RTC::RTC(const string &n, Tsunami* tsunami, const vector<int> &t,
+ bool bcd, Tick i)
+ : _name(n), event(tsunami, i), addr(0), year_is_bcd(bcd)
{
memset(clock_data, 0, sizeof(clock_data));
stat_regA = RTCA_32768HZ | RTCA_1024HZ;
stat_regB = RTCB_PRDC_IE |RTCB_BIN | RTCB_24HR;
+ if (year_is_bcd) {
+ // The RTC uses BCD for the last two digits in the year.
+ // They python year is a full year.
+ int _year = t[0] % 100;
+ int tens = _year / 10;
+ int ones = _year % 10;
+
+ year = (tens << 4) + ones;
+ } else {
+ // Even though the datasheet says that the year field should be
+ // interpreted as BCD, we just enter the number of years since
+ // 1900 since linux seems to be happy with that (and I believe
+ // that Tru64 was as well)
+ year = t[0] - 1900;
+ }
+
+ mon = t[1];
+ mday = t[2];
+ hour = t[3];
+ min = t[4];
+ sec = t[5];
+
+ // wday is defined to be in the range from 1 - 7 with 1 being Sunday.
+ // the value coming from python is in the range from 0 - 6 with 0 being
+ // Monday. Fix that here.
+ wday = t[6] + 2;
+ if (wday > 7)
+ wday -= 7;
+
+ DPRINTFN("Real-time clock set to %s", getDateString());
+}
+
+std::string
+TsunamiIO::RTC::getDateString()
+{
struct tm tm;
- gmtime_r(&t, &tm);
- sec = tm.tm_sec;
- min = tm.tm_min;
- hour = tm.tm_hour;
- wday = tm.tm_wday + 1;
- mday = tm.tm_mday;
- mon = tm.tm_mon + 1;
- year = tm.tm_year;
+ memset(&tm, 0, sizeof(tm));
+
+ if (year_is_bcd) {
+ // undo the BCD and conver to years since 1900 guessing that
+ // anything before 1970 is actually after 2000
+ int _year = (year >> 4) * 10 + (year & 0xf);
+ if (_year < 70)
+ _year += 100;
+
+ tm.tm_year = _year;
+ } else {
+ // number of years since 1900
+ tm.tm_year = year;
+ }
+
+ // unix is 0-11 for month
+ tm.tm_mon = mon - 1;
+ tm.tm_mday = mday;
+ tm.tm_hour = hour;
+ tm.tm_min = min;
+ tm.tm_sec = sec;
+
+ // to add more annoyance unix is 0 - 6 with 0 as sunday
+ tm.tm_wday = wday - 1;
- DPRINTFN("Real-time clock set to %s", asctime(&tm));
+ return asctime(&tm);
}
void
@@ -424,7 +476,8 @@ TsunamiIO::PITimer::Counter::CounterEvent::description()
TsunamiIO::TsunamiIO(Params *p)
: BasicPioDevice(p), tsunami(p->tsunami), pitimer(p->name + "pitimer"),
- rtc(p->name + ".rtc", p->tsunami, p->init_time, p->frequency)
+ rtc(p->name + ".rtc", p->tsunami, p->init_time, p->year_is_bcd,
+ p->frequency)
{
pioSize = 0x100;
@@ -649,7 +702,8 @@ BEGIN_DECLARE_SIM_OBJECT_PARAMS(TsunamiIO)
Param<Tick> frequency;
SimObjectParam<Platform *> platform;
SimObjectParam<System *> system;
- Param<time_t> time;
+ VectorParam<int> time;
+ Param<bool> year_is_bcd;
SimObjectParam<Tsunami *> tsunami;
END_DECLARE_SIM_OBJECT_PARAMS(TsunamiIO)
@@ -662,6 +716,7 @@ BEGIN_INIT_SIM_OBJECT_PARAMS(TsunamiIO)
INIT_PARAM(platform, "platform"),
INIT_PARAM(system, "system object"),
INIT_PARAM(time, "System time to use (0 for actual time"),
+ INIT_PARAM(year_is_bcd, ""),
INIT_PARAM(tsunami, "Tsunami")
END_INIT_SIM_OBJECT_PARAMS(TsunamiIO)
@@ -676,6 +731,7 @@ CREATE_SIM_OBJECT(TsunamiIO)
p->platform = platform;
p->system = system;
p->init_time = time;
+ p->year_is_bcd = year_is_bcd;
p->tsunami = tsunami;
return new TsunamiIO(p);
}
diff --git a/src/dev/alpha/tsunami_io.hh b/src/dev/alpha/tsunami_io.hh
index b0c368eb8..f42af4197 100644
--- a/src/dev/alpha/tsunami_io.hh
+++ b/src/dev/alpha/tsunami_io.hh
@@ -85,6 +85,9 @@ class TsunamiIO : public BasicPioDevice
/** Current RTC register address/index */
int addr;
+ /** should the year be interpreted as BCD? */
+ bool year_is_bcd;
+
/** Data for real-time clock function */
union {
uint8_t clock_data[10];
@@ -110,7 +113,8 @@ class TsunamiIO : public BasicPioDevice
uint8_t stat_regB;
public:
- RTC(const std::string &name, Tsunami* tsunami, time_t t, Tick i);
+ RTC(const std::string &name, Tsunami* tsunami,
+ const std::vector<int> &t, bool bcd, Tick i);
/** RTC address port: write address of RTC RAM data to access */
void writeAddr(const uint8_t data);
@@ -121,6 +125,9 @@ class TsunamiIO : public BasicPioDevice
/** RTC read data */
uint8_t readData();
+ /** RTC get the date */
+ std::string getDateString();
+
/**
* Serialize this object to the given output stream.
* @param base The base name of the counter object.
@@ -313,8 +320,10 @@ class TsunamiIO : public BasicPioDevice
{
Tick frequency;
Tsunami *tsunami;
- time_t init_time;
+ std::vector<int> init_time;
+ bool year_is_bcd;
};
+
protected:
const Params *params() const { return (const Params*)_params; }
diff --git a/src/dev/sparc/SConscript b/src/dev/sparc/SConscript
index 63f29846a..44b082b68 100644
--- a/src/dev/sparc/SConscript
+++ b/src/dev/sparc/SConscript
@@ -37,6 +37,7 @@ Import('env')
sources = []
sources += Split('''
+ dtod.cc
t1000.cc
mm_disk.cc
''')
diff --git a/src/dev/sparc/dtod.cc b/src/dev/sparc/dtod.cc
new file mode 100644
index 000000000..30c7baaf5
--- /dev/null
+++ b/src/dev/sparc/dtod.cc
@@ -0,0 +1,115 @@
+/*
+ * Copyright (c) 2004-2006 The Regents of The University of Michigan
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met: redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer;
+ * redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution;
+ * neither the name of the copyright holders nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Authors: Ali Saidi
+ */
+
+/** @file
+ * Time of date device implementation
+ */
+#include <sys/time.h>
+
+#include <deque>
+#include <string>
+#include <vector>
+
+#include "base/trace.hh"
+#include "dev/sparc/dtod.hh"
+#include "dev/platform.hh"
+#include "mem/packet_access.hh"
+#include "mem/port.hh"
+#include "sim/builder.hh"
+#include "sim/system.hh"
+
+using namespace std;
+using namespace TheISA;
+
+DumbTOD::DumbTOD(Params *p)
+ : BasicPioDevice(p), todTime(p->init_time)
+{
+ pioSize = 0x08;
+
+ struct tm tm;
+ gmtime_r((time_t*)&todTime, &tm);
+ DPRINTFN("Real-time clock set to %s\n", asctime(&tm));
+ DPRINTFN("Real-time clock set to %d\n", todTime);
+}
+
+Tick
+DumbTOD::read(PacketPtr pkt)
+{
+ assert(pkt->result == Packet::Unknown);
+ assert(pkt->getAddr() >= pioAddr && pkt->getAddr() < pioAddr + pioSize);
+ assert(pkt->getSize() == 8);
+
+ pkt->allocate();
+ pkt->set(todTime);
+ todTime += 1000;
+
+ pkt->result = Packet::Success;
+ return pioDelay;
+}
+
+Tick
+DumbTOD::write(PacketPtr pkt)
+{
+ panic("Dumb tod device doesn't support writes\n");
+}
+
+BEGIN_DECLARE_SIM_OBJECT_PARAMS(DumbTOD)
+
+ Param<Addr> pio_addr;
+ Param<Tick> pio_latency;
+ SimObjectParam<Platform *> platform;
+ SimObjectParam<System *> system;
+ Param<time_t> time;
+
+END_DECLARE_SIM_OBJECT_PARAMS(DumbTOD)
+
+BEGIN_INIT_SIM_OBJECT_PARAMS(DumbTOD)
+
+ INIT_PARAM(pio_addr, "Device Address"),
+ INIT_PARAM(pio_latency, "Programmed IO latency"),
+ INIT_PARAM(platform, "platform"),
+ INIT_PARAM(system, "system object"),
+ INIT_PARAM(time, "System time to use (0 for actual time")
+
+END_INIT_SIM_OBJECT_PARAMS(DumbTOD)
+
+CREATE_SIM_OBJECT(DumbTOD)
+{
+ DumbTOD::Params *p = new DumbTOD::Params;
+ p->name =getInstanceName();
+ p->pio_addr = pio_addr;
+ p->pio_delay = pio_latency;
+ p->platform = platform;
+ p->system = system;
+ p->init_time = time;
+ return new DumbTOD(p);
+}
+
+REGISTER_SIM_OBJECT("DumbTOD", DumbTOD)
diff --git a/src/dev/sparc/dtod.hh b/src/dev/sparc/dtod.hh
new file mode 100644
index 000000000..7d3a9f628
--- /dev/null
+++ b/src/dev/sparc/dtod.hh
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 206, 2004-2005 The Regents of The University of Michigan
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met: redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer;
+ * redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution;
+ * neither the name of the copyright holders nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Authors: Ali Saidi
+ */
+
+/** @file
+ * This device acts as a simple time of date device. It's implemented as a
+ * simple device register read.
+ */
+
+#ifndef __DEV_SPARC_DTOD_HH__
+#define __DEV_SPARC_DTOD_HH__
+
+#include "base/range.hh"
+#include "dev/io_device.hh"
+
+
+/**
+ * DumbTOD simply returns some idea of time when read. Until we finish with
+ * legion it starts with the start time and increments itself by 1000 each time.
+ */
+class DumbTOD : public BasicPioDevice
+{
+ private:
+ uint64_t todTime;
+
+ public:
+ struct Params : public BasicPioDevice::Params
+ {
+ time_t init_time;
+ };
+ protected:
+ const Params *params() const { return (const Params *)_params; }
+
+ public:
+ DumbTOD(Params *p);
+
+ virtual Tick read(PacketPtr pkt);
+ virtual Tick write(PacketPtr pkt);
+};
+
+#endif // __DEV_BADDEV_HH__
diff --git a/src/python/m5/objects/T1000.py b/src/python/m5/objects/T1000.py
index 030f4abd8..7b93268ac 100644
--- a/src/python/m5/objects/T1000.py
+++ b/src/python/m5/objects/T1000.py
@@ -11,6 +11,12 @@ class MmDisk(BasicPioDevice):
image = Param.DiskImage("Disk Image")
pio_addr = 0x1F40000000
+class DumbTOD(BasicPioDevice):
+ type = 'DumbTOD'
+ time = Param.Time('01/01/2009', "System time to use ('Now' for real time)")
+ pio_addr = 0xfff0c1fff8
+
+
class T1000(Platform):
type = 'T1000'
system = Param.System(Parent.any, "system")
@@ -64,6 +70,8 @@ class T1000(Platform):
warn_access="Accessing SSI -- Unimplemented!")
hvuart = Uart8250(pio_addr=0xfff0c2c000)
+ htod = DumbTOD()
+
puart0 = Uart8250(pio_addr=0x1f10000000)
console = SimConsole(listener = ConsoleListener())
@@ -86,3 +94,4 @@ class T1000(Platform):
self.fake_ssi.pio = bus.port
self.puart0.pio = bus.port
self.hvuart.pio = bus.port
+ self.htod.pio = bus.port
diff --git a/src/python/m5/objects/Tsunami.py b/src/python/m5/objects/Tsunami.py
index 18a776a7f..85105ff20 100644
--- a/src/python/m5/objects/Tsunami.py
+++ b/src/python/m5/objects/Tsunami.py
@@ -15,6 +15,8 @@ class TsunamiIO(BasicPioDevice):
type = 'TsunamiIO'
time = Param.Time('01/01/2009',
"System time to use ('Now' for actual time)")
+ year_is_bcd = Param.Bool(False,
+ "The RTC should interpret the year as a BCD value")
tsunami = Param.Tsunami(Parent.any, "Tsunami")
frequency = Param.Frequency('1024Hz', "frequency of interrupts")
diff --git a/src/python/m5/params.py b/src/python/m5/params.py
index d570804d8..f8a9f9ddd 100644
--- a/src/python/m5/params.py
+++ b/src/python/m5/params.py
@@ -518,49 +518,55 @@ class EthernetAddr(ParamValue):
else:
return self.value
+time_formats = [ "%a %b %d %H:%M:%S %Z %Y",
+ "%a %b %d %H:%M:%S %Z %Y",
+ "%Y/%m/%d %H:%M:%S",
+ "%Y/%m/%d %H:%M",
+ "%Y/%m/%d",
+ "%m/%d/%Y %H:%M:%S",
+ "%m/%d/%Y %H:%M",
+ "%m/%d/%Y",
+ "%m/%d/%y %H:%M:%S",
+ "%m/%d/%y %H:%M",
+ "%m/%d/%y"]
+
+
def parse_time(value):
- strings = [ "%a %b %d %H:%M:%S %Z %Y",
- "%a %b %d %H:%M:%S %Z %Y",
- "%Y/%m/%d %H:%M:%S",
- "%Y/%m/%d %H:%M",
- "%Y/%m/%d",
- "%m/%d/%Y %H:%M:%S",
- "%m/%d/%Y %H:%M",
- "%m/%d/%Y",
- "%m/%d/%y %H:%M:%S",
- "%m/%d/%y %H:%M",
- "%m/%d/%y"]
-
- for string in strings:
- try:
- return time.strptime(value, string)
- except ValueError:
- pass
+ from time import gmtime, strptime, struct_time, time
+ from datetime import datetime, date
+
+ if isinstance(value, struct_time):
+ return value
+
+ if isinstance(value, (int, long)):
+ return gmtime(value)
+
+ if isinstance(value, (datetime, date)):
+ return value.timetuple()
+
+ if isinstance(value, str):
+ if value in ('Now', 'Today'):
+ return time.gmtime(time.time())
+
+ for format in time_formats:
+ try:
+ return strptime(value, format)
+ except ValueError:
+ pass
raise ValueError, "Could not parse '%s' as a time" % value
class Time(ParamValue):
cxx_type = 'time_t'
def __init__(self, value):
- if isinstance(value, time.struct_time):
- self.value = time.mktime(value)
- elif isinstance(value, int):
- self.value = value
- elif isinstance(value, str):
- if value in ('Now', 'Today'):
- self.value = time.time()
- else:
- self.value = time.mktime(parse_time(value))
- elif isinstance(value, (datetime.datetime, datetime.date)):
- self.value = time.mktime(value.timetuple())
- else:
- raise ValueError, "Could not parse '%s' as a time" % value
+ self.value = parse_time(value)
def __str__(self):
- return str(int(self.value))
+ tm = self.value
+ return ' '.join([ str(tm[i]) for i in xrange(8)])
def ini_str(self):
- return str(int(self.value))
+ return str(self)
# Enumerated types are a little more complex. The user specifies the
# type as Enum(foo) where foo is either a list or dictionary of
diff --git a/src/sim/byteswap.hh b/src/sim/byteswap.hh
index 7b1ae701e..4ac1ee711 100644
--- a/src/sim/byteswap.hh
+++ b/src/sim/byteswap.hh
@@ -130,7 +130,7 @@ template <typename T> static inline T letobe(T value) {return swap_byte(value);}
//For conversions not involving the guest system, we can define the functions
//conditionally based on the BYTE_ORDER macro and outside of the namespaces
-#if defined(_BIG_ENDIAN) || BYTE_ORDER == BIG_ENDIAN
+#if defined(_BIG_ENDIAN) || !defined(_LITTLE_ENDIAN) && BYTE_ORDER == BIG_ENDIAN
template <typename T> static inline T htole(T value) {return swap_byte(value);}
template <typename T> static inline T letoh(T value) {return swap_byte(value);}
template <typename T> static inline T htobe(T value) {return value;}
diff --git a/src/sim/process.cc b/src/sim/process.cc
index b43fa7d00..63ff33969 100644
--- a/src/sim/process.cc
+++ b/src/sim/process.cc
@@ -440,6 +440,11 @@ LiveProcess::create(const std::string &nm, System *system, int stdin_fd,
fatal("Can't load object file %s", executable);
}
+ if (objFile->isDynamic())
+ fatal("Object file is a dynamic executable however only static "
+ "executables are supported!\n Please recompile your "
+ "executable as a static binary and try again.\n");
+
#if THE_ISA == ALPHA_ISA
if (objFile->getArch() != ObjectFile::Alpha)
fatal("Object file architecture does not match compiled ISA (Alpha).");
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.ini b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.ini
index 7180478db..034ed9fa0 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.ini
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.ini
@@ -7,9 +7,6 @@ max_tick=0
output_file=cout
progress_interval=0
-[debug]
-break_cycles=
-
[exetrace]
intel_format=false
legion_lockstep=false
@@ -89,6 +86,7 @@ max_insts_all_threads=0
max_insts_any_thread=0
max_loads_all_threads=0
max_loads_any_thread=0
+phase=0
profile=0
progress_interval=0
simulate_stalls=false
@@ -122,6 +120,7 @@ max_insts_all_threads=0
max_insts_any_thread=0
max_loads_all_threads=0
max_loads_any_thread=0
+phase=0
profile=0
progress_interval=0
simulate_stalls=false
@@ -206,8 +205,13 @@ pio_latency=0
pio_size=8
platform=system.tsunami
ret_bad_addr=true
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.membus.default
[system.physmem]
@@ -215,6 +219,7 @@ type=PhysicalMemory
file=
latency=1
range=0:134217727
+zero=false
port=system.membus.port[1]
[system.sim_console]
@@ -347,8 +352,13 @@ pio_latency=2
pio_size=393216
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[9]
[system.tsunami.fake_ata0]
@@ -358,8 +368,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[20]
[system.tsunami.fake_ata1]
@@ -369,8 +384,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[21]
[system.tsunami.fake_pnp_addr]
@@ -380,8 +400,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[10]
[system.tsunami.fake_pnp_read0]
@@ -391,8 +416,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[12]
[system.tsunami.fake_pnp_read1]
@@ -402,8 +432,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[13]
[system.tsunami.fake_pnp_read2]
@@ -413,8 +448,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[14]
[system.tsunami.fake_pnp_read3]
@@ -424,8 +464,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[15]
[system.tsunami.fake_pnp_read4]
@@ -435,8 +480,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[16]
[system.tsunami.fake_pnp_read5]
@@ -446,8 +496,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[17]
[system.tsunami.fake_pnp_read6]
@@ -457,8 +512,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[18]
[system.tsunami.fake_pnp_read7]
@@ -468,8 +528,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[19]
[system.tsunami.fake_pnp_write]
@@ -479,19 +544,29 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[11]
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[8]
[system.tsunami.fake_sm_chip]
@@ -501,8 +576,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[3]
[system.tsunami.fake_uart1]
@@ -512,8 +592,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[4]
[system.tsunami.fake_uart2]
@@ -523,8 +608,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[5]
[system.tsunami.fake_uart3]
@@ -534,8 +624,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[6]
[system.tsunami.fake_uart4]
@@ -545,8 +640,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[7]
[system.tsunami.fb]
@@ -616,8 +716,9 @@ pio_addr=8804615847936
pio_latency=2
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
tsunami=system.tsunami
+year_is_bcd=false
pio=system.iobus.port[23]
[system.tsunami.pchip]
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.out b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.out
index ae75e1db0..35abc9f24 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.out
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/config.out
@@ -10,6 +10,7 @@ type=PhysicalMemory
file=
range=[0,134217727]
latency=1
+zero=false
[system]
type=LinuxAlphaSystem
@@ -57,6 +58,7 @@ do_quiesce=true
do_checkpoint_insts=true
do_statistics_insts=true
clock=1
+phase=0
defer_registration=false
width=1
function_trace=false
@@ -78,7 +80,12 @@ pio_addr=0
pio_latency=0
pio_size=8
ret_bad_addr=true
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -149,6 +156,7 @@ do_quiesce=true
do_checkpoint_insts=true
do_statistics_insts=true
clock=1
+phase=0
defer_registration=false
width=1
function_trace=false
@@ -171,7 +179,12 @@ pio_addr=8804615848696
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -181,7 +194,12 @@ pio_addr=8804615848936
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -191,7 +209,12 @@ pio_addr=8804615848680
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -201,17 +224,27 @@ pio_addr=8804615848944
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -230,7 +263,8 @@ pio_latency=2
frequency=1953125
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
+year_is_bcd=false
tsunami=system.tsunami
[]
@@ -269,7 +303,12 @@ pio_addr=8804615848304
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -279,7 +318,12 @@ pio_addr=8804615848432
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -297,7 +341,12 @@ pio_addr=8804615848643
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -307,7 +356,12 @@ pio_addr=8804615848579
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -317,7 +371,12 @@ pio_addr=8804615848515
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -327,7 +386,12 @@ pio_addr=8804615848451
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -337,7 +401,12 @@ pio_addr=8804615848899
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -347,7 +416,12 @@ pio_addr=8804615848835
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -357,7 +431,12 @@ pio_addr=8804615848771
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -367,7 +446,12 @@ pio_addr=8804615848707
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -377,7 +461,12 @@ pio_addr=8804615850617
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -464,7 +553,12 @@ pio_addr=8796093677568
pio_latency=2
pio_size=393216
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -482,7 +576,12 @@ pio_addr=8804615848816
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -492,7 +591,12 @@ pio_addr=8804615848569
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -595,9 +699,6 @@ intel_format=false
legion_lockstep=false
trace_system=client
-[debug]
-break_cycles=
-
[statsreset]
reset_cycle=0
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/m5stats.txt b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/m5stats.txt
index 2fcb2a638..4dbe8c13c 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/m5stats.txt
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/m5stats.txt
@@ -1,13 +1,13 @@
---------- Begin Simulation Statistics ----------
-host_inst_rate 1285205 # Simulator instruction rate (inst/s)
-host_mem_usage 200148 # Number of bytes of host memory used
-host_seconds 50.51 # Real time elapsed on the host
-host_tick_rate 73618621 # Simulator tick rate (ticks/s)
+host_inst_rate 1026206 # Simulator instruction rate (inst/s)
+host_mem_usage 240860 # Number of bytes of host memory used
+host_seconds 63.27 # Real time elapsed on the host
+host_tick_rate 58764450 # Simulator tick rate (ticks/s)
sim_freq 2000000000 # Frequency of simulated ticks
-sim_insts 64909600 # Number of instructions simulated
-sim_seconds 1.859078 # Number of seconds simulated
-sim_ticks 3718155709 # Number of ticks simulated
+sim_insts 64932819 # Number of instructions simulated
+sim_seconds 1.859157 # Number of seconds simulated
+sim_ticks 3718314928 # Number of ticks simulated
system.cpu0.dtb.accesses 544556 # DTB accesses
system.cpu0.dtb.acv 335 # DTB access violations
system.cpu0.dtb.hits 14841931 # DTB hits
@@ -20,7 +20,7 @@ system.cpu0.dtb.write_accesses 167026 # DT
system.cpu0.dtb.write_acv 125 # DTB write access violations
system.cpu0.dtb.write_hits 5871355 # DTB write hits
system.cpu0.dtb.write_misses 775 # DTB write misses
-system.cpu0.idle_fraction 0.984943 # Percentage of idle cycles
+system.cpu0.idle_fraction 0.984944 # Percentage of idle cycles
system.cpu0.itb.accesses 3586919 # ITB accesses
system.cpu0.itb.acv 184 # ITB acv
system.cpu0.itb.hits 3583450 # ITB hits
@@ -58,8 +58,8 @@ system.cpu0.kern.ipl_good_21 245 0.17% 49.41% # nu
system.cpu0.kern.ipl_good_22 1896 1.35% 50.76% # number of times we switched to this ipl from a different ipl
system.cpu0.kern.ipl_good_30 8 0.01% 50.77% # number of times we switched to this ipl from a different ipl
system.cpu0.kern.ipl_good_31 69366 49.23% 100.00% # number of times we switched to this ipl from a different ipl
-system.cpu0.kern.ipl_ticks 3718155294 # number of cycles we spent at this ipl
-system.cpu0.kern.ipl_ticks_0 3683661066 99.07% 99.07% # number of cycles we spent at this ipl
+system.cpu0.kern.ipl_ticks 3718314513 # number of cycles we spent at this ipl
+system.cpu0.kern.ipl_ticks_0 3683820285 99.07% 99.07% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_ticks_21 40474 0.00% 99.07% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_ticks_22 163056 0.00% 99.08% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_ticks_30 2026 0.00% 99.08% # number of cycles we spent at this ipl
@@ -80,7 +80,7 @@ system.cpu0.kern.mode_switch_good 0.286108 # fr
system.cpu0.kern.mode_switch_good_kernel 0.166877 # fraction of useful protection mode switches
system.cpu0.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
system.cpu0.kern.mode_switch_good_idle <err: div-0> # fraction of useful protection mode switches
-system.cpu0.kern.mode_ticks_kernel 3716512331 99.96% 99.96% # number of ticks spent at the given mode
+system.cpu0.kern.mode_ticks_kernel 3716671550 99.96% 99.96% # number of ticks spent at the given mode
system.cpu0.kern.mode_ticks_user 1642961 0.04% 100.00% # number of ticks spent at the given mode
system.cpu0.kern.mode_ticks_idle 0 0.00% 100.00% # number of ticks spent at the given mode
system.cpu0.kern.swap_context 3792 # number of times the context was actually changed
@@ -113,28 +113,28 @@ system.cpu0.kern.syscall_98 2 1.01% 97.49% # nu
system.cpu0.kern.syscall_132 1 0.50% 97.99% # number of syscalls executed
system.cpu0.kern.syscall_144 2 1.01% 98.99% # number of syscalls executed
system.cpu0.kern.syscall_147 2 1.01% 100.00% # number of syscalls executed
-system.cpu0.not_idle_fraction 0.015057 # Percentage of non-idle cycles
+system.cpu0.not_idle_fraction 0.015056 # Percentage of non-idle cycles
system.cpu0.numCycles 55984201 # number of cpu cycles simulated
system.cpu0.num_insts 55980548 # Number of instructions executed
system.cpu0.num_refs 15081320 # Number of memory references
system.cpu1.dtb.accesses 761000 # DTB accesses
system.cpu1.dtb.acv 32 # DTB access violations
-system.cpu1.dtb.hits 2653187 # DTB hits
+system.cpu1.dtb.hits 2658022 # DTB hits
system.cpu1.dtb.misses 4173 # DTB misses
system.cpu1.dtb.read_accesses 523552 # DTB read accesses
system.cpu1.dtb.read_acv 0 # DTB read access violations
-system.cpu1.dtb.read_hits 1675663 # DTB read hits
+system.cpu1.dtb.read_hits 1679180 # DTB read hits
system.cpu1.dtb.read_misses 3798 # DTB read misses
system.cpu1.dtb.write_accesses 237448 # DTB write accesses
system.cpu1.dtb.write_acv 32 # DTB write access violations
-system.cpu1.dtb.write_hits 977524 # DTB write hits
+system.cpu1.dtb.write_hits 978842 # DTB write hits
system.cpu1.dtb.write_misses 375 # DTB write misses
-system.cpu1.idle_fraction 0.997598 # Percentage of idle cycles
-system.cpu1.itb.accesses 2420372 # ITB accesses
+system.cpu1.idle_fraction 0.997592 # Percentage of idle cycles
+system.cpu1.itb.accesses 2420426 # ITB accesses
system.cpu1.itb.acv 0 # ITB acv
-system.cpu1.itb.hits 2418785 # ITB hits
+system.cpu1.itb.hits 2418839 # ITB hits
system.cpu1.itb.misses 1587 # ITB misses
-system.cpu1.kern.callpal 34405 # number of callpals executed
+system.cpu1.kern.callpal 34411 # number of callpals executed
system.cpu1.kern.callpal_cserve 1 0.00% 0.00% # number of callpals executed
system.cpu1.kern.callpal_wripir 8 0.02% 0.03% # number of callpals executed
system.cpu1.kern.callpal_wrmces 1 0.00% 0.03% # number of callpals executed
@@ -142,7 +142,7 @@ system.cpu1.kern.callpal_wrfen 1 0.00% 0.03% # nu
system.cpu1.kern.callpal_swpctx 468 1.36% 1.39% # number of callpals executed
system.cpu1.kern.callpal_tbi 5 0.01% 1.41% # number of callpals executed
system.cpu1.kern.callpal_wrent 7 0.02% 1.43% # number of callpals executed
-system.cpu1.kern.callpal_swpipl 28030 81.47% 82.90% # number of callpals executed
+system.cpu1.kern.callpal_swpipl 28036 81.47% 82.90% # number of callpals executed
system.cpu1.kern.callpal_rdps 3042 8.84% 91.74% # number of callpals executed
system.cpu1.kern.callpal_wrkgp 1 0.00% 91.74% # number of callpals executed
system.cpu1.kern.callpal_wrusp 5 0.01% 91.76% # number of callpals executed
@@ -152,28 +152,28 @@ system.cpu1.kern.callpal_callsys 187 0.54% 99.83% # nu
system.cpu1.kern.callpal_imb 59 0.17% 100.00% # number of callpals executed
system.cpu1.kern.callpal_rdunique 1 0.00% 100.00% # number of callpals executed
system.cpu1.kern.inst.arm 0 # number of arm instructions executed
-system.cpu1.kern.inst.hwrei 42209 # number of hwrei instructions executed
-system.cpu1.kern.inst.quiesce 2146 # number of quiesce instructions executed
-system.cpu1.kern.ipl_count 32627 # number of times we switched to this ipl
-system.cpu1.kern.ipl_count_0 11165 34.22% 34.22% # number of times we switched to this ipl
+system.cpu1.kern.inst.hwrei 42215 # number of hwrei instructions executed
+system.cpu1.kern.inst.quiesce 2214 # number of quiesce instructions executed
+system.cpu1.kern.ipl_count 32633 # number of times we switched to this ipl
+system.cpu1.kern.ipl_count_0 11168 34.22% 34.22% # number of times we switched to this ipl
system.cpu1.kern.ipl_count_22 1895 5.81% 40.03% # number of times we switched to this ipl
system.cpu1.kern.ipl_count_30 115 0.35% 40.38% # number of times we switched to this ipl
-system.cpu1.kern.ipl_count_31 19452 59.62% 100.00% # number of times we switched to this ipl
-system.cpu1.kern.ipl_good 24195 # number of times we switched to this ipl from a different ipl
-system.cpu1.kern.ipl_good_0 11150 46.08% 46.08% # number of times we switched to this ipl from a different ipl
+system.cpu1.kern.ipl_count_31 19455 59.62% 100.00% # number of times we switched to this ipl
+system.cpu1.kern.ipl_good 24201 # number of times we switched to this ipl from a different ipl
+system.cpu1.kern.ipl_good_0 11153 46.08% 46.08% # number of times we switched to this ipl from a different ipl
system.cpu1.kern.ipl_good_22 1895 7.83% 53.92% # number of times we switched to this ipl from a different ipl
system.cpu1.kern.ipl_good_30 115 0.48% 54.39% # number of times we switched to this ipl from a different ipl
-system.cpu1.kern.ipl_good_31 11035 45.61% 100.00% # number of times we switched to this ipl from a different ipl
-system.cpu1.kern.ipl_ticks 3717733449 # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_0 3695802393 99.41% 99.41% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_good_31 11038 45.61% 100.00% # number of times we switched to this ipl from a different ipl
+system.cpu1.kern.ipl_ticks 3717892668 # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_ticks_0 3695802544 99.41% 99.41% # number of cycles we spent at this ipl
system.cpu1.kern.ipl_ticks_22 162970 0.00% 99.41% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_30 29122 0.00% 99.42% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_31 21738964 0.58% 100.00% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_used 0.741564 # fraction of swpipl calls that actually changed the ipl
+system.cpu1.kern.ipl_ticks_30 29122 0.00% 99.41% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_ticks_31 21898032 0.59% 100.00% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_used 0.741611 # fraction of swpipl calls that actually changed the ipl
system.cpu1.kern.ipl_used_0 0.998657 # fraction of swpipl calls that actually changed the ipl
system.cpu1.kern.ipl_used_22 1 # fraction of swpipl calls that actually changed the ipl
system.cpu1.kern.ipl_used_30 1 # fraction of swpipl calls that actually changed the ipl
-system.cpu1.kern.ipl_used_31 0.567294 # fraction of swpipl calls that actually changed the ipl
+system.cpu1.kern.ipl_used_31 0.567361 # fraction of swpipl calls that actually changed the ipl
system.cpu1.kern.mode_good_kernel 602
system.cpu1.kern.mode_good_user 563
system.cpu1.kern.mode_good_idle 39
@@ -184,7 +184,7 @@ system.cpu1.kern.mode_switch_good 0.332689 # fr
system.cpu1.kern.mode_switch_good_kernel 0.595450 # fraction of useful protection mode switches
system.cpu1.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
system.cpu1.kern.mode_switch_good_idle 0.019071 # fraction of useful protection mode switches
-system.cpu1.kern.mode_ticks_kernel 4713507 0.13% 0.13% # number of ticks spent at the given mode
+system.cpu1.kern.mode_ticks_kernel 4872726 0.13% 0.13% # number of ticks spent at the given mode
system.cpu1.kern.mode_ticks_user 1950903 0.05% 0.18% # number of ticks spent at the given mode
system.cpu1.kern.mode_ticks_idle 3710606044 99.82% 100.00% # number of ticks spent at the given mode
system.cpu1.kern.swap_context 469 # number of times the context was actually changed
@@ -205,10 +205,10 @@ system.cpu1.kern.syscall_71 34 26.15% 87.69% # nu
system.cpu1.kern.syscall_74 11 8.46% 96.15% # number of syscalls executed
system.cpu1.kern.syscall_92 2 1.54% 97.69% # number of syscalls executed
system.cpu1.kern.syscall_132 3 2.31% 100.00% # number of syscalls executed
-system.cpu1.not_idle_fraction 0.002402 # Percentage of non-idle cycles
-system.cpu1.numCycles 8930639 # number of cpu cycles simulated
-system.cpu1.num_insts 8929052 # Number of instructions executed
-system.cpu1.num_refs 2665347 # Number of memory references
+system.cpu1.not_idle_fraction 0.002408 # Percentage of non-idle cycles
+system.cpu1.numCycles 8953858 # number of cpu cycles simulated
+system.cpu1.num_insts 8952271 # Number of instructions executed
+system.cpu1.num_refs 2670182 # Number of memory references
system.disk0.dma_read_bytes 1024 # Number of bytes transfered via DMA reads (not PRD).
system.disk0.dma_read_full_pages 0 # Number of full page size DMA reads (not PRD).
system.disk0.dma_read_txs 1 # Number of DMA read transactions (not PRD).
@@ -221,7 +221,7 @@ system.disk2.dma_read_txs 0 # Nu
system.disk2.dma_write_bytes 8192 # Number of bytes transfered via DMA writes.
system.disk2.dma_write_full_pages 1 # Number of full page size DMA writes.
system.disk2.dma_write_txs 1 # Number of DMA write transactions.
-system.tsunami.ethernet.coalescedRxDesc no value # average number of RxDesc's coalesced into each post
+system.tsunami.ethernet.coalescedRxDesc <err: div-0> # average number of RxDesc's coalesced into each post
system.tsunami.ethernet.coalescedRxIdle <err: div-0> # average number of RxIdle's coalesced into each post
system.tsunami.ethernet.coalescedRxOk <err: div-0> # average number of RxOk's coalesced into each post
system.tsunami.ethernet.coalescedRxOrn <err: div-0> # average number of RxOrn's coalesced into each post
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stderr b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stderr
index 9bd19d291..9a6301977 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stderr
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stderr
@@ -1,8 +1,8 @@
Warning: rounding error > tolerance
0.002000 rounded to 0
- 0: system.tsunami.io.rtc: Real-time clock set to Sun Jan 1 00:00:00 2006
-Listening for console connection on port 3457
-0: system.remote_gdb.listener: listening for remote gdb #0 on port 7001
-0: system.remote_gdb.listener: listening for remote gdb #1 on port 7002
+ 0: system.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
+Listening for console connection on port 3456
+0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
+0: system.remote_gdb.listener: listening for remote gdb #1 on port 7001
warn: Entering event queue @ 0. Starting simulation...
warn: 195723: Trying to launch CPU number 1!
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stdout b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stdout
index 8bfefbb7c..1cecd3a25 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stdout
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic-dual/stdout
@@ -5,8 +5,8 @@ The Regents of The University of Michigan
All Rights Reserved
-M5 compiled Nov 5 2006 19:41:29
-M5 started Sun Nov 5 20:03:49 2006
-M5 executing on zizzer.eecs.umich.edu
-command line: build/ALPHA_FS/m5.opt -d build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual
-Exiting @ tick 3718155709 because m5_exit instruction encountered
+M5 compiled Jan 25 2007 15:05:30
+M5 started Thu Jan 25 15:06:16 2007
+M5 executing on zeep
+command line: /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/m5.opt -d /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual
+Exiting @ tick 3718314928 because m5_exit instruction encountered
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.ini b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.ini
index f69482dc0..fbc68db88 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.ini
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.ini
@@ -7,9 +7,6 @@ max_tick=0
output_file=cout
progress_interval=0
-[debug]
-break_cycles=
-
[exetrace]
intel_format=false
legion_lockstep=false
@@ -89,6 +86,7 @@ max_insts_all_threads=0
max_insts_any_thread=0
max_loads_all_threads=0
max_loads_any_thread=0
+phase=0
profile=0
progress_interval=0
simulate_stalls=false
@@ -173,8 +171,13 @@ pio_latency=0
pio_size=8
platform=system.tsunami
ret_bad_addr=true
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.membus.default
[system.physmem]
@@ -182,6 +185,7 @@ type=PhysicalMemory
file=
latency=1
range=0:134217727
+zero=false
port=system.membus.port[1]
[system.sim_console]
@@ -314,8 +318,13 @@ pio_latency=2
pio_size=393216
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[9]
[system.tsunami.fake_ata0]
@@ -325,8 +334,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[20]
[system.tsunami.fake_ata1]
@@ -336,8 +350,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[21]
[system.tsunami.fake_pnp_addr]
@@ -347,8 +366,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[10]
[system.tsunami.fake_pnp_read0]
@@ -358,8 +382,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[12]
[system.tsunami.fake_pnp_read1]
@@ -369,8 +398,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[13]
[system.tsunami.fake_pnp_read2]
@@ -380,8 +414,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[14]
[system.tsunami.fake_pnp_read3]
@@ -391,8 +430,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[15]
[system.tsunami.fake_pnp_read4]
@@ -402,8 +446,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[16]
[system.tsunami.fake_pnp_read5]
@@ -413,8 +462,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[17]
[system.tsunami.fake_pnp_read6]
@@ -424,8 +478,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[18]
[system.tsunami.fake_pnp_read7]
@@ -435,8 +494,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[19]
[system.tsunami.fake_pnp_write]
@@ -446,19 +510,29 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[11]
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[8]
[system.tsunami.fake_sm_chip]
@@ -468,8 +542,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[3]
[system.tsunami.fake_uart1]
@@ -479,8 +558,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[4]
[system.tsunami.fake_uart2]
@@ -490,8 +574,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[5]
[system.tsunami.fake_uart3]
@@ -501,8 +590,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[6]
[system.tsunami.fake_uart4]
@@ -512,8 +606,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[7]
[system.tsunami.fb]
@@ -583,8 +682,9 @@ pio_addr=8804615847936
pio_latency=2
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
tsunami=system.tsunami
+year_is_bcd=false
pio=system.iobus.port[23]
[system.tsunami.pchip]
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.out b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.out
index 1254e9fec..673f2c89c 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.out
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/config.out
@@ -10,6 +10,7 @@ type=PhysicalMemory
file=
range=[0,134217727]
latency=1
+zero=false
[system]
type=LinuxAlphaSystem
@@ -57,6 +58,7 @@ do_quiesce=true
do_checkpoint_insts=true
do_statistics_insts=true
clock=1
+phase=0
defer_registration=false
width=1
function_trace=false
@@ -78,7 +80,12 @@ pio_addr=0
pio_latency=0
pio_size=8
ret_bad_addr=true
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -141,7 +148,12 @@ pio_addr=8804615848696
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -151,7 +163,12 @@ pio_addr=8804615848936
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -161,7 +178,12 @@ pio_addr=8804615848680
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -171,17 +193,27 @@ pio_addr=8804615848944
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -200,7 +232,8 @@ pio_latency=2
frequency=1953125
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
+year_is_bcd=false
tsunami=system.tsunami
[]
@@ -239,7 +272,12 @@ pio_addr=8804615848304
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -249,7 +287,12 @@ pio_addr=8804615848432
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -267,7 +310,12 @@ pio_addr=8804615848643
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -277,7 +325,12 @@ pio_addr=8804615848579
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -287,7 +340,12 @@ pio_addr=8804615848515
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -297,7 +355,12 @@ pio_addr=8804615848451
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -307,7 +370,12 @@ pio_addr=8804615848899
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -317,7 +385,12 @@ pio_addr=8804615848835
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -327,7 +400,12 @@ pio_addr=8804615848771
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -337,7 +415,12 @@ pio_addr=8804615848707
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -347,7 +430,12 @@ pio_addr=8804615850617
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -434,7 +522,12 @@ pio_addr=8796093677568
pio_latency=2
pio_size=393216
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -452,7 +545,12 @@ pio_addr=8804615848816
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -462,7 +560,12 @@ pio_addr=8804615848569
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -565,9 +668,6 @@ intel_format=false
legion_lockstep=false
trace_system=client
-[debug]
-break_cycles=
-
[statsreset]
reset_cycle=0
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/m5stats.txt b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/m5stats.txt
index 0c0307c15..a10779a99 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/m5stats.txt
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/m5stats.txt
@@ -1,31 +1,31 @@
---------- Begin Simulation Statistics ----------
-host_inst_rate 1254169 # Simulator instruction rate (inst/s)
-host_mem_usage 199988 # Number of bytes of host memory used
-host_seconds 49.27 # Real time elapsed on the host
-host_tick_rate 73765213 # Simulator tick rate (ticks/s)
+host_inst_rate 1452138 # Simulator instruction rate (inst/s)
+host_mem_usage 239532 # Number of bytes of host memory used
+host_seconds 42.57 # Real time elapsed on the host
+host_tick_rate 85380734 # Simulator tick rate (ticks/s)
sim_freq 2000000000 # Frequency of simulated ticks
-sim_insts 61788439 # Number of instructions simulated
-sim_seconds 1.817090 # Number of seconds simulated
-sim_ticks 3634179176 # Number of ticks simulated
+sim_insts 61811715 # Number of instructions simulated
+sim_seconds 1.817169 # Number of seconds simulated
+sim_ticks 3634338452 # Number of ticks simulated
system.cpu.dtb.accesses 1304494 # DTB accesses
system.cpu.dtb.acv 367 # DTB access violations
-system.cpu.dtb.hits 16552094 # DTB hits
+system.cpu.dtb.hits 16556949 # DTB hits
system.cpu.dtb.misses 11425 # DTB misses
system.cpu.dtb.read_accesses 900425 # DTB read accesses
system.cpu.dtb.read_acv 210 # DTB read access violations
-system.cpu.dtb.read_hits 10038384 # DTB read hits
+system.cpu.dtb.read_hits 10041919 # DTB read hits
system.cpu.dtb.read_misses 10280 # DTB read misses
system.cpu.dtb.write_accesses 404069 # DTB write accesses
system.cpu.dtb.write_acv 157 # DTB write access violations
-system.cpu.dtb.write_hits 6513710 # DTB write hits
+system.cpu.dtb.write_hits 6515030 # DTB write hits
system.cpu.dtb.write_misses 1145 # DTB write misses
-system.cpu.idle_fraction 0.982997 # Percentage of idle cycles
-system.cpu.itb.accesses 5655311 # ITB accesses
+system.cpu.idle_fraction 0.982991 # Percentage of idle cycles
+system.cpu.itb.accesses 5655354 # ITB accesses
system.cpu.itb.acv 184 # ITB acv
-system.cpu.itb.hits 5650321 # ITB hits
+system.cpu.itb.hits 5650364 # ITB hits
system.cpu.itb.misses 4990 # ITB misses
-system.cpu.kern.callpal 193842 # number of callpals executed
+system.cpu.kern.callpal 193847 # number of callpals executed
system.cpu.kern.callpal_cserve 1 0.00% 0.00% # number of callpals executed
system.cpu.kern.callpal_wrmces 1 0.00% 0.00% # number of callpals executed
system.cpu.kern.callpal_wrfen 1 0.00% 0.00% # number of callpals executed
@@ -33,7 +33,7 @@ system.cpu.kern.callpal_wrvptptr 1 0.00% 0.00% # nu
system.cpu.kern.callpal_swpctx 4203 2.17% 2.17% # number of callpals executed
system.cpu.kern.callpal_tbi 54 0.03% 2.20% # number of callpals executed
system.cpu.kern.callpal_wrent 7 0.00% 2.20% # number of callpals executed
-system.cpu.kern.callpal_swpipl 176751 91.18% 93.38% # number of callpals executed
+system.cpu.kern.callpal_swpipl 176756 91.18% 93.38% # number of callpals executed
system.cpu.kern.callpal_rdps 6881 3.55% 96.93% # number of callpals executed
system.cpu.kern.callpal_wrkgp 1 0.00% 96.94% # number of callpals executed
system.cpu.kern.callpal_wrusp 7 0.00% 96.94% # number of callpals executed
@@ -43,41 +43,41 @@ system.cpu.kern.callpal_rti 5211 2.69% 99.63% # nu
system.cpu.kern.callpal_callsys 531 0.27% 99.91% # number of callpals executed
system.cpu.kern.callpal_imb 181 0.09% 100.00% # number of callpals executed
system.cpu.kern.inst.arm 0 # number of arm instructions executed
-system.cpu.kern.inst.hwrei 212908 # number of hwrei instructions executed
-system.cpu.kern.inst.quiesce 6207 # number of quiesce instructions executed
-system.cpu.kern.ipl_count 184061 # number of times we switched to this ipl
-system.cpu.kern.ipl_count_0 75348 40.94% 40.94% # number of times we switched to this ipl
+system.cpu.kern.inst.hwrei 212913 # number of hwrei instructions executed
+system.cpu.kern.inst.quiesce 6275 # number of quiesce instructions executed
+system.cpu.kern.ipl_count 184066 # number of times we switched to this ipl
+system.cpu.kern.ipl_count_0 75351 40.94% 40.94% # number of times we switched to this ipl
system.cpu.kern.ipl_count_21 245 0.13% 41.07% # number of times we switched to this ipl
system.cpu.kern.ipl_count_22 1853 1.01% 42.08% # number of times we switched to this ipl
-system.cpu.kern.ipl_count_31 106615 57.92% 100.00% # number of times we switched to this ipl
-system.cpu.kern.ipl_good 150060 # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_good_0 73981 49.30% 49.30% # number of times we switched to this ipl from a different ipl
+system.cpu.kern.ipl_count_31 106617 57.92% 100.00% # number of times we switched to this ipl
+system.cpu.kern.ipl_good 150066 # number of times we switched to this ipl from a different ipl
+system.cpu.kern.ipl_good_0 73984 49.30% 49.30% # number of times we switched to this ipl from a different ipl
system.cpu.kern.ipl_good_21 245 0.16% 49.46% # number of times we switched to this ipl from a different ipl
system.cpu.kern.ipl_good_22 1853 1.23% 50.70% # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_good_31 73981 49.30% 100.00% # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_ticks 3634178761 # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_0 3599646819 99.05% 99.05% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_good_31 73984 49.30% 100.00% # number of times we switched to this ipl from a different ipl
+system.cpu.kern.ipl_ticks 3634338037 # number of cycles we spent at this ipl
+system.cpu.kern.ipl_ticks_0 3599646965 99.05% 99.05% # number of cycles we spent at this ipl
system.cpu.kern.ipl_ticks_21 40474 0.00% 99.05% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_22 159358 0.00% 99.06% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_31 34332110 0.94% 100.00% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_used 0.815273 # fraction of swpipl calls that actually changed the ipl
+system.cpu.kern.ipl_ticks_22 159358 0.00% 99.05% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_ticks_31 34491240 0.95% 100.00% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_used 0.815284 # fraction of swpipl calls that actually changed the ipl
system.cpu.kern.ipl_used_0 0.981858 # fraction of swpipl calls that actually changed the ipl
system.cpu.kern.ipl_used_21 1 # fraction of swpipl calls that actually changed the ipl
system.cpu.kern.ipl_used_22 1 # fraction of swpipl calls that actually changed the ipl
-system.cpu.kern.ipl_used_31 0.693908 # fraction of swpipl calls that actually changed the ipl
-system.cpu.kern.mode_good_kernel 1938
-system.cpu.kern.mode_good_user 1758
+system.cpu.kern.ipl_used_31 0.693923 # fraction of swpipl calls that actually changed the ipl
+system.cpu.kern.mode_good_kernel 1937
+system.cpu.kern.mode_good_user 1757
system.cpu.kern.mode_good_idle 180
system.cpu.kern.mode_switch_kernel 5978 # number of protection mode switches
-system.cpu.kern.mode_switch_user 1758 # number of protection mode switches
+system.cpu.kern.mode_switch_user 1757 # number of protection mode switches
system.cpu.kern.mode_switch_idle 2102 # number of protection mode switches
-system.cpu.kern.mode_switch_good 0.393983 # fraction of useful protection mode switches
-system.cpu.kern.mode_switch_good_kernel 0.324189 # fraction of useful protection mode switches
+system.cpu.kern.mode_switch_good 0.393819 # fraction of useful protection mode switches
+system.cpu.kern.mode_switch_good_kernel 0.324021 # fraction of useful protection mode switches
system.cpu.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
system.cpu.kern.mode_switch_good_idle 0.085633 # fraction of useful protection mode switches
-system.cpu.kern.mode_ticks_kernel 54682435 1.50% 1.50% # number of ticks spent at the given mode
-system.cpu.kern.mode_ticks_user 3591244 0.10% 1.60% # number of ticks spent at the given mode
-system.cpu.kern.mode_ticks_idle 3575905080 98.40% 100.00% # number of ticks spent at the given mode
+system.cpu.kern.mode_ticks_kernel 54841721 1.51% 1.51% # number of ticks spent at the given mode
+system.cpu.kern.mode_ticks_user 3591234 0.10% 1.61% # number of ticks spent at the given mode
+system.cpu.kern.mode_ticks_idle 3575905080 98.39% 100.00% # number of ticks spent at the given mode
system.cpu.kern.swap_context 4204 # number of times the context was actually changed
system.cpu.kern.syscall 329 # number of syscalls executed
system.cpu.kern.syscall_2 8 2.43% 2.43% # number of syscalls executed
@@ -110,10 +110,10 @@ system.cpu.kern.syscall_98 2 0.61% 97.57% # nu
system.cpu.kern.syscall_132 4 1.22% 98.78% # number of syscalls executed
system.cpu.kern.syscall_144 2 0.61% 99.39% # number of syscalls executed
system.cpu.kern.syscall_147 2 0.61% 100.00% # number of syscalls executed
-system.cpu.not_idle_fraction 0.017003 # Percentage of non-idle cycles
-system.cpu.numCycles 61793613 # number of cpu cycles simulated
-system.cpu.num_insts 61788439 # Number of instructions executed
-system.cpu.num_refs 16800623 # Number of memory references
+system.cpu.not_idle_fraction 0.017009 # Percentage of non-idle cycles
+system.cpu.numCycles 61816889 # number of cpu cycles simulated
+system.cpu.num_insts 61811715 # Number of instructions executed
+system.cpu.num_refs 16805478 # Number of memory references
system.disk0.dma_read_bytes 1024 # Number of bytes transfered via DMA reads (not PRD).
system.disk0.dma_read_full_pages 0 # Number of full page size DMA reads (not PRD).
system.disk0.dma_read_txs 1 # Number of DMA read transactions (not PRD).
@@ -131,7 +131,7 @@ system.tsunami.ethernet.coalescedRxIdle <err: div-0> # av
system.tsunami.ethernet.coalescedRxOk <err: div-0> # average number of RxOk's coalesced into each post
system.tsunami.ethernet.coalescedRxOrn <err: div-0> # average number of RxOrn's coalesced into each post
system.tsunami.ethernet.coalescedSwi <err: div-0> # average number of Swi's coalesced into each post
-system.tsunami.ethernet.coalescedTotal <err: div-0> # average number of interrupts coalesced into each post
+system.tsunami.ethernet.coalescedTotal no value # average number of interrupts coalesced into each post
system.tsunami.ethernet.coalescedTxDesc <err: div-0> # average number of TxDesc's coalesced into each post
system.tsunami.ethernet.coalescedTxIdle <err: div-0> # average number of TxIdle's coalesced into each post
system.tsunami.ethernet.coalescedTxOk <err: div-0> # average number of TxOk's coalesced into each post
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stderr b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stderr
index a8bcb04d9..69304a604 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stderr
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stderr
@@ -1,6 +1,6 @@
Warning: rounding error > tolerance
0.002000 rounded to 0
- 0: system.tsunami.io.rtc: Real-time clock set to Sun Jan 1 00:00:00 2006
+ 0: system.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
Listening for console connection on port 3456
0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
warn: Entering event queue @ 0. Starting simulation...
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stdout b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stdout
index 3929194fc..631453025 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stdout
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-atomic/stdout
@@ -5,8 +5,8 @@ The Regents of The University of Michigan
All Rights Reserved
-M5 compiled Nov 5 2006 19:41:29
-M5 started Sun Nov 5 20:03:49 2006
-M5 executing on zizzer.eecs.umich.edu
-command line: build/ALPHA_FS/m5.opt -d build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-atomic tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-atomic
-Exiting @ tick 3634179176 because m5_exit instruction encountered
+M5 compiled Jan 25 2007 15:05:30
+M5 started Thu Jan 25 15:05:33 2007
+M5 executing on zeep
+command line: /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/m5.opt -d /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-atomic tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-atomic
+Exiting @ tick 3634338452 because m5_exit instruction encountered
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.ini b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.ini
index 5c151b2f9..5a824717f 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.ini
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.ini
@@ -7,9 +7,6 @@ max_tick=0
output_file=cout
progress_interval=0
-[debug]
-break_cycles=
-
[exetrace]
intel_format=false
legion_lockstep=false
@@ -89,6 +86,7 @@ max_insts_all_threads=0
max_insts_any_thread=0
max_loads_all_threads=0
max_loads_any_thread=0
+phase=0
profile=0
progress_interval=0
system=system
@@ -120,6 +118,7 @@ max_insts_all_threads=0
max_insts_any_thread=0
max_loads_all_threads=0
max_loads_any_thread=0
+phase=0
profile=0
progress_interval=0
system=system
@@ -202,8 +201,13 @@ pio_latency=0
pio_size=8
platform=system.tsunami
ret_bad_addr=true
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.membus.default
[system.physmem]
@@ -211,6 +215,7 @@ type=PhysicalMemory
file=
latency=1
range=0:134217727
+zero=false
port=system.membus.port[1]
[system.sim_console]
@@ -343,8 +348,13 @@ pio_latency=2
pio_size=393216
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[9]
[system.tsunami.fake_ata0]
@@ -354,8 +364,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[20]
[system.tsunami.fake_ata1]
@@ -365,8 +380,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[21]
[system.tsunami.fake_pnp_addr]
@@ -376,8 +396,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[10]
[system.tsunami.fake_pnp_read0]
@@ -387,8 +412,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[12]
[system.tsunami.fake_pnp_read1]
@@ -398,8 +428,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[13]
[system.tsunami.fake_pnp_read2]
@@ -409,8 +444,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[14]
[system.tsunami.fake_pnp_read3]
@@ -420,8 +460,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[15]
[system.tsunami.fake_pnp_read4]
@@ -431,8 +476,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[16]
[system.tsunami.fake_pnp_read5]
@@ -442,8 +492,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[17]
[system.tsunami.fake_pnp_read6]
@@ -453,8 +508,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[18]
[system.tsunami.fake_pnp_read7]
@@ -464,8 +524,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[19]
[system.tsunami.fake_pnp_write]
@@ -475,19 +540,29 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[11]
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[8]
[system.tsunami.fake_sm_chip]
@@ -497,8 +572,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[3]
[system.tsunami.fake_uart1]
@@ -508,8 +588,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[4]
[system.tsunami.fake_uart2]
@@ -519,8 +604,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[5]
[system.tsunami.fake_uart3]
@@ -530,8 +620,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[6]
[system.tsunami.fake_uart4]
@@ -541,8 +636,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[7]
[system.tsunami.fb]
@@ -612,8 +712,9 @@ pio_addr=8804615847936
pio_latency=2
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
tsunami=system.tsunami
+year_is_bcd=false
pio=system.iobus.port[23]
[system.tsunami.pchip]
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.out b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.out
index 3e9c8d863..c1e5baadb 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.out
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/config.out
@@ -10,6 +10,7 @@ type=PhysicalMemory
file=
range=[0,134217727]
latency=1
+zero=false
[system]
type=LinuxAlphaSystem
@@ -57,6 +58,7 @@ do_quiesce=true
do_checkpoint_insts=true
do_statistics_insts=true
clock=1
+phase=0
defer_registration=false
// width not specified
function_trace=false
@@ -78,7 +80,12 @@ pio_addr=0
pio_latency=0
pio_size=8
ret_bad_addr=true
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -149,6 +156,7 @@ do_quiesce=true
do_checkpoint_insts=true
do_statistics_insts=true
clock=1
+phase=0
defer_registration=false
// width not specified
function_trace=false
@@ -171,7 +179,12 @@ pio_addr=8804615848696
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -181,7 +194,12 @@ pio_addr=8804615848936
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -191,7 +209,12 @@ pio_addr=8804615848680
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -201,17 +224,27 @@ pio_addr=8804615848944
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -230,7 +263,8 @@ pio_latency=2
frequency=1953125
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
+year_is_bcd=false
tsunami=system.tsunami
[]
@@ -269,7 +303,12 @@ pio_addr=8804615848304
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -279,7 +318,12 @@ pio_addr=8804615848432
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -297,7 +341,12 @@ pio_addr=8804615848643
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -307,7 +356,12 @@ pio_addr=8804615848579
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -317,7 +371,12 @@ pio_addr=8804615848515
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -327,7 +386,12 @@ pio_addr=8804615848451
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -337,7 +401,12 @@ pio_addr=8804615848899
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -347,7 +416,12 @@ pio_addr=8804615848835
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -357,7 +431,12 @@ pio_addr=8804615848771
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -367,7 +446,12 @@ pio_addr=8804615848707
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -377,7 +461,12 @@ pio_addr=8804615850617
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -464,7 +553,12 @@ pio_addr=8796093677568
pio_latency=2
pio_size=393216
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -482,7 +576,12 @@ pio_addr=8804615848816
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -492,7 +591,12 @@ pio_addr=8804615848569
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -595,9 +699,6 @@ intel_format=false
legion_lockstep=false
trace_system=client
-[debug]
-break_cycles=
-
[statsreset]
reset_cycle=0
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/m5stats.txt b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/m5stats.txt
index ce69639b4..d6bc028f1 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/m5stats.txt
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/m5stats.txt
@@ -1,26 +1,26 @@
---------- Begin Simulation Statistics ----------
-host_inst_rate 321604 # Simulator instruction rate (inst/s)
-host_mem_usage 199700 # Number of bytes of host memory used
-host_seconds 208.16 # Real time elapsed on the host
-host_tick_rate 19071805 # Simulator tick rate (ticks/s)
+host_inst_rate 359240 # Simulator instruction rate (inst/s)
+host_mem_usage 240844 # Number of bytes of host memory used
+host_seconds 186.42 # Real time elapsed on the host
+host_tick_rate 21297758 # Simulator tick rate (ticks/s)
sim_freq 2000000000 # Frequency of simulated ticks
-sim_insts 66945470 # Number of instructions simulated
-sim_seconds 1.985009 # Number of seconds simulated
-sim_ticks 3970017178 # Number of ticks simulated
+sim_insts 66968427 # Number of instructions simulated
+sim_seconds 1.985132 # Number of seconds simulated
+sim_ticks 3970264174 # Number of ticks simulated
system.cpu0.dtb.accesses 1003481 # DTB accesses
system.cpu0.dtb.acv 289 # DTB access violations
-system.cpu0.dtb.hits 13332675 # DTB hits
+system.cpu0.dtb.hits 13332650 # DTB hits
system.cpu0.dtb.misses 8437 # DTB misses
system.cpu0.dtb.read_accesses 695694 # DTB read accesses
system.cpu0.dtb.read_acv 174 # DTB read access violations
-system.cpu0.dtb.read_hits 8285791 # DTB read hits
+system.cpu0.dtb.read_hits 8285777 # DTB read hits
system.cpu0.dtb.read_misses 7640 # DTB read misses
system.cpu0.dtb.write_accesses 307787 # DTB write accesses
system.cpu0.dtb.write_acv 115 # DTB write access violations
-system.cpu0.dtb.write_hits 5046884 # DTB write hits
+system.cpu0.dtb.write_hits 5046873 # DTB write hits
system.cpu0.dtb.write_misses 797 # DTB write misses
-system.cpu0.idle_fraction 0.928150 # Percentage of idle cycles
+system.cpu0.idle_fraction 0.928155 # Percentage of idle cycles
system.cpu0.itb.accesses 4220935 # ITB accesses
system.cpu0.itb.acv 143 # ITB acv
system.cpu0.itb.hits 4217111 # ITB hits
@@ -58,12 +58,12 @@ system.cpu0.kern.ipl_good_21 143 0.13% 49.16% # nu
system.cpu0.kern.ipl_good_22 2005 1.82% 50.97% # number of times we switched to this ipl from a different ipl
system.cpu0.kern.ipl_good_30 483 0.44% 51.41% # number of times we switched to this ipl from a different ipl
system.cpu0.kern.ipl_good_31 53596 48.59% 100.00% # number of times we switched to this ipl from a different ipl
-system.cpu0.kern.ipl_ticks 3970015394 # number of cycles we spent at this ipl
-system.cpu0.kern.ipl_ticks_0 3836129328 96.63% 96.63% # number of cycles we spent at this ipl
+system.cpu0.kern.ipl_ticks 3970262390 # number of cycles we spent at this ipl
+system.cpu0.kern.ipl_ticks_0 3836377682 96.63% 96.63% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_ticks_21 133000 0.00% 96.63% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_ticks_22 1870128 0.05% 96.68% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_ticks_30 1206048 0.03% 96.71% # number of cycles we spent at this ipl
-system.cpu0.kern.ipl_ticks_31 130676890 3.29% 100.00% # number of cycles we spent at this ipl
+system.cpu0.kern.ipl_ticks_31 130675532 3.29% 100.00% # number of cycles we spent at this ipl
system.cpu0.kern.ipl_used 0.807801 # fraction of swpipl calls that actually changed the ipl
system.cpu0.kern.ipl_used_0 0.992330 # fraction of swpipl calls that actually changed the ipl
system.cpu0.kern.ipl_used_21 1 # fraction of swpipl calls that actually changed the ipl
@@ -80,8 +80,8 @@ system.cpu0.kern.mode_switch_good 0.311313 # fr
system.cpu0.kern.mode_switch_good_kernel 0.184292 # fraction of useful protection mode switches
system.cpu0.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
system.cpu0.kern.mode_switch_good_idle <err: div-0> # fraction of useful protection mode switches
-system.cpu0.kern.mode_ticks_kernel 3956260432 99.65% 99.65% # number of ticks spent at the given mode
-system.cpu0.kern.mode_ticks_user 13754954 0.35% 100.00% # number of ticks spent at the given mode
+system.cpu0.kern.mode_ticks_kernel 3956507378 99.65% 99.65% # number of ticks spent at the given mode
+system.cpu0.kern.mode_ticks_user 13755004 0.35% 100.00% # number of ticks spent at the given mode
system.cpu0.kern.mode_ticks_idle 0 0.00% 100.00% # number of ticks spent at the given mode
system.cpu0.kern.swap_context 2908 # number of times the context was actually changed
system.cpu0.kern.syscall 227 # number of syscalls executed
@@ -115,28 +115,28 @@ system.cpu0.kern.syscall_98 2 0.88% 97.80% # nu
system.cpu0.kern.syscall_132 2 0.88% 98.68% # number of syscalls executed
system.cpu0.kern.syscall_144 1 0.44% 99.12% # number of syscalls executed
system.cpu0.kern.syscall_147 2 0.88% 100.00% # number of syscalls executed
-system.cpu0.not_idle_fraction 0.071850 # Percentage of non-idle cycles
-system.cpu0.numCycles 3970017178 # number of cpu cycles simulated
-system.cpu0.num_insts 52312134 # Number of instructions executed
-system.cpu0.num_refs 13564902 # Number of memory references
+system.cpu0.not_idle_fraction 0.071845 # Percentage of non-idle cycles
+system.cpu0.numCycles 3970264174 # number of cpu cycles simulated
+system.cpu0.num_insts 52311968 # Number of instructions executed
+system.cpu0.num_refs 13564877 # Number of memory references
system.cpu1.dtb.accesses 302962 # DTB accesses
system.cpu1.dtb.acv 84 # DTB access violations
-system.cpu1.dtb.hits 4635665 # DTB hits
+system.cpu1.dtb.hits 4640482 # DTB hits
system.cpu1.dtb.misses 3107 # DTB misses
system.cpu1.dtb.read_accesses 205912 # DTB read accesses
system.cpu1.dtb.read_acv 36 # DTB read access violations
-system.cpu1.dtb.read_hits 2664909 # DTB read hits
+system.cpu1.dtb.read_hits 2668410 # DTB read hits
system.cpu1.dtb.read_misses 2747 # DTB read misses
system.cpu1.dtb.write_accesses 97050 # DTB write accesses
system.cpu1.dtb.write_acv 48 # DTB write access violations
-system.cpu1.dtb.write_hits 1970756 # DTB write hits
+system.cpu1.dtb.write_hits 1972072 # DTB write hits
system.cpu1.dtb.write_misses 360 # DTB write misses
-system.cpu1.idle_fraction 0.974941 # Percentage of idle cycles
-system.cpu1.itb.accesses 1965693 # ITB accesses
+system.cpu1.idle_fraction 0.974914 # Percentage of idle cycles
+system.cpu1.itb.accesses 1965758 # ITB accesses
system.cpu1.itb.acv 41 # ITB acv
-system.cpu1.itb.hits 1964446 # ITB hits
+system.cpu1.itb.hits 1964511 # ITB hits
system.cpu1.itb.misses 1247 # ITB misses
-system.cpu1.kern.callpal 80664 # number of callpals executed
+system.cpu1.kern.callpal 80671 # number of callpals executed
system.cpu1.kern.callpal_cserve 1 0.00% 0.00% # number of callpals executed
system.cpu1.kern.callpal_wripir 483 0.60% 0.60% # number of callpals executed
system.cpu1.kern.callpal_wrmces 1 0.00% 0.60% # number of callpals executed
@@ -144,7 +144,7 @@ system.cpu1.kern.callpal_wrfen 1 0.00% 0.60% # nu
system.cpu1.kern.callpal_swpctx 2277 2.82% 3.43% # number of callpals executed
system.cpu1.kern.callpal_tbi 10 0.01% 3.44% # number of callpals executed
system.cpu1.kern.callpal_wrent 7 0.01% 3.45% # number of callpals executed
-system.cpu1.kern.callpal_swpipl 71260 88.34% 91.79% # number of callpals executed
+system.cpu1.kern.callpal_swpipl 71267 88.34% 91.79% # number of callpals executed
system.cpu1.kern.callpal_rdps 2378 2.95% 94.74% # number of callpals executed
system.cpu1.kern.callpal_wrkgp 1 0.00% 94.74% # number of callpals executed
system.cpu1.kern.callpal_wrusp 3 0.00% 94.74% # number of callpals executed
@@ -155,41 +155,41 @@ system.cpu1.kern.callpal_callsys 161 0.20% 99.96% # nu
system.cpu1.kern.callpal_imb 31 0.04% 100.00% # number of callpals executed
system.cpu1.kern.callpal_rdunique 1 0.00% 100.00% # number of callpals executed
system.cpu1.kern.inst.arm 0 # number of arm instructions executed
-system.cpu1.kern.inst.hwrei 87713 # number of hwrei instructions executed
-system.cpu1.kern.inst.quiesce 2740 # number of quiesce instructions executed
-system.cpu1.kern.ipl_count 77873 # number of times we switched to this ipl
-system.cpu1.kern.ipl_count_0 30259 38.86% 38.86% # number of times we switched to this ipl
+system.cpu1.kern.inst.hwrei 87720 # number of hwrei instructions executed
+system.cpu1.kern.inst.quiesce 2808 # number of quiesce instructions executed
+system.cpu1.kern.ipl_count 77880 # number of times we switched to this ipl
+system.cpu1.kern.ipl_count_0 30262 38.86% 38.86% # number of times we switched to this ipl
system.cpu1.kern.ipl_count_22 1997 2.56% 41.42% # number of times we switched to this ipl
system.cpu1.kern.ipl_count_30 571 0.73% 42.15% # number of times we switched to this ipl
-system.cpu1.kern.ipl_count_31 45046 57.85% 100.00% # number of times we switched to this ipl
-system.cpu1.kern.ipl_good 60597 # number of times we switched to this ipl from a different ipl
-system.cpu1.kern.ipl_good_0 29300 48.35% 48.35% # number of times we switched to this ipl from a different ipl
+system.cpu1.kern.ipl_count_31 45050 57.85% 100.00% # number of times we switched to this ipl
+system.cpu1.kern.ipl_good 60603 # number of times we switched to this ipl from a different ipl
+system.cpu1.kern.ipl_good_0 29303 48.35% 48.35% # number of times we switched to this ipl from a different ipl
system.cpu1.kern.ipl_good_22 1997 3.30% 51.65% # number of times we switched to this ipl from a different ipl
system.cpu1.kern.ipl_good_30 571 0.94% 52.59% # number of times we switched to this ipl from a different ipl
-system.cpu1.kern.ipl_good_31 28729 47.41% 100.00% # number of times we switched to this ipl from a different ipl
-system.cpu1.kern.ipl_ticks 3968771896 # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_0 3847181696 96.94% 96.94% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_22 1867354 0.05% 96.98% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_30 1457952 0.04% 97.02% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_ticks_31 118264894 2.98% 100.00% # number of cycles we spent at this ipl
-system.cpu1.kern.ipl_used 0.778152 # fraction of swpipl calls that actually changed the ipl
-system.cpu1.kern.ipl_used_0 0.968307 # fraction of swpipl calls that actually changed the ipl
+system.cpu1.kern.ipl_good_31 28732 47.41% 100.00% # number of times we switched to this ipl from a different ipl
+system.cpu1.kern.ipl_ticks 3968772136 # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_ticks_0 3846937158 96.93% 96.93% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_ticks_22 1867822 0.05% 96.98% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_ticks_30 1457952 0.04% 97.01% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_ticks_31 118509204 2.99% 100.00% # number of cycles we spent at this ipl
+system.cpu1.kern.ipl_used 0.778159 # fraction of swpipl calls that actually changed the ipl
+system.cpu1.kern.ipl_used_0 0.968310 # fraction of swpipl calls that actually changed the ipl
system.cpu1.kern.ipl_used_22 1 # fraction of swpipl calls that actually changed the ipl
system.cpu1.kern.ipl_used_30 1 # fraction of swpipl calls that actually changed the ipl
-system.cpu1.kern.ipl_used_31 0.637770 # fraction of swpipl calls that actually changed the ipl
-system.cpu1.kern.mode_good_kernel 1013
-system.cpu1.kern.mode_good_user 518
+system.cpu1.kern.ipl_used_31 0.637780 # fraction of swpipl calls that actually changed the ipl
+system.cpu1.kern.mode_good_kernel 1014
+system.cpu1.kern.mode_good_user 519
system.cpu1.kern.mode_good_idle 495
system.cpu1.kern.mode_switch_kernel 2345 # number of protection mode switches
-system.cpu1.kern.mode_switch_user 518 # number of protection mode switches
+system.cpu1.kern.mode_switch_user 519 # number of protection mode switches
system.cpu1.kern.mode_switch_idle 3028 # number of protection mode switches
-system.cpu1.kern.mode_switch_good 0.343914 # fraction of useful protection mode switches
-system.cpu1.kern.mode_switch_good_kernel 0.431983 # fraction of useful protection mode switches
+system.cpu1.kern.mode_switch_good 0.344196 # fraction of useful protection mode switches
+system.cpu1.kern.mode_switch_good_kernel 0.432409 # fraction of useful protection mode switches
system.cpu1.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
system.cpu1.kern.mode_switch_good_idle 0.163474 # fraction of useful protection mode switches
-system.cpu1.kern.mode_ticks_kernel 63013938 1.59% 1.59% # number of ticks spent at the given mode
-system.cpu1.kern.mode_ticks_user 5102326 0.13% 1.72% # number of ticks spent at the given mode
-system.cpu1.kern.mode_ticks_idle 3899442912 98.28% 100.00% # number of ticks spent at the given mode
+system.cpu1.kern.mode_ticks_kernel 63257834 1.59% 1.59% # number of ticks spent at the given mode
+system.cpu1.kern.mode_ticks_user 5106070 0.13% 1.72% # number of ticks spent at the given mode
+system.cpu1.kern.mode_ticks_idle 3899443084 98.28% 100.00% # number of ticks spent at the given mode
system.cpu1.kern.swap_context 2278 # number of times the context was actually changed
system.cpu1.kern.syscall 102 # number of syscalls executed
system.cpu1.kern.syscall_2 2 1.96% 1.96% # number of syscalls executed
@@ -213,10 +213,10 @@ system.cpu1.kern.syscall_90 1 0.98% 95.10% # nu
system.cpu1.kern.syscall_92 2 1.96% 97.06% # number of syscalls executed
system.cpu1.kern.syscall_132 2 1.96% 99.02% # number of syscalls executed
system.cpu1.kern.syscall_144 1 0.98% 100.00% # number of syscalls executed
-system.cpu1.not_idle_fraction 0.025059 # Percentage of non-idle cycles
-system.cpu1.numCycles 3968772136 # number of cpu cycles simulated
-system.cpu1.num_insts 14633336 # Number of instructions executed
-system.cpu1.num_refs 4665250 # Number of memory references
+system.cpu1.not_idle_fraction 0.025086 # Percentage of non-idle cycles
+system.cpu1.numCycles 3968772376 # number of cpu cycles simulated
+system.cpu1.num_insts 14656459 # Number of instructions executed
+system.cpu1.num_refs 4670067 # Number of memory references
system.disk0.dma_read_bytes 1024 # Number of bytes transfered via DMA reads (not PRD).
system.disk0.dma_read_full_pages 0 # Number of full page size DMA reads (not PRD).
system.disk0.dma_read_txs 1 # Number of DMA read transactions (not PRD).
@@ -234,7 +234,7 @@ system.tsunami.ethernet.coalescedRxIdle <err: div-0> # av
system.tsunami.ethernet.coalescedRxOk <err: div-0> # average number of RxOk's coalesced into each post
system.tsunami.ethernet.coalescedRxOrn <err: div-0> # average number of RxOrn's coalesced into each post
system.tsunami.ethernet.coalescedSwi <err: div-0> # average number of Swi's coalesced into each post
-system.tsunami.ethernet.coalescedTotal <err: div-0> # average number of interrupts coalesced into each post
+system.tsunami.ethernet.coalescedTotal no value # average number of interrupts coalesced into each post
system.tsunami.ethernet.coalescedTxDesc <err: div-0> # average number of TxDesc's coalesced into each post
system.tsunami.ethernet.coalescedTxIdle <err: div-0> # average number of TxIdle's coalesced into each post
system.tsunami.ethernet.coalescedTxOk <err: div-0> # average number of TxOk's coalesced into each post
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stderr b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stderr
index c211114c2..5b02d9b91 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stderr
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stderr
@@ -1,8 +1,8 @@
Warning: rounding error > tolerance
0.002000 rounded to 0
- 0: system.tsunami.io.rtc: Real-time clock set to Sun Jan 1 00:00:00 2006
-Listening for console connection on port 3457
-0: system.remote_gdb.listener: listening for remote gdb #0 on port 7001
-0: system.remote_gdb.listener: listening for remote gdb #1 on port 7002
+ 0: system.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
+Listening for console connection on port 3456
+0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
+0: system.remote_gdb.listener: listening for remote gdb #1 on port 7001
warn: Entering event queue @ 0. Starting simulation...
warn: 1082476: Trying to launch CPU number 1!
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stdout b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stdout
index c97d4fc44..9c25032e4 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stdout
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing-dual/stdout
@@ -5,8 +5,8 @@ The Regents of The University of Michigan
All Rights Reserved
-M5 compiled Nov 5 2006 19:41:29
-M5 started Sun Nov 5 20:04:42 2006
-M5 executing on zizzer.eecs.umich.edu
-command line: build/ALPHA_FS/m5.opt -d build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-timing-dual tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-timing-dual
-Exiting @ tick 3970017178 because m5_exit instruction encountered
+M5 compiled Jan 25 2007 15:05:30
+M5 started Thu Jan 25 15:09:33 2007
+M5 executing on zeep
+command line: /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/m5.opt -d /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-timing-dual tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-timing-dual
+Exiting @ tick 3970264174 because m5_exit instruction encountered
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.ini b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.ini
index b7bd833a9..104bbce36 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.ini
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.ini
@@ -7,9 +7,6 @@ max_tick=0
output_file=cout
progress_interval=0
-[debug]
-break_cycles=
-
[exetrace]
intel_format=false
legion_lockstep=false
@@ -89,6 +86,7 @@ max_insts_all_threads=0
max_insts_any_thread=0
max_loads_all_threads=0
max_loads_any_thread=0
+phase=0
profile=0
progress_interval=0
system=system
@@ -171,8 +169,13 @@ pio_latency=0
pio_size=8
platform=system.tsunami
ret_bad_addr=true
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.membus.default
[system.physmem]
@@ -180,6 +183,7 @@ type=PhysicalMemory
file=
latency=1
range=0:134217727
+zero=false
port=system.membus.port[1]
[system.sim_console]
@@ -312,8 +316,13 @@ pio_latency=2
pio_size=393216
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[9]
[system.tsunami.fake_ata0]
@@ -323,8 +332,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[20]
[system.tsunami.fake_ata1]
@@ -334,8 +348,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[21]
[system.tsunami.fake_pnp_addr]
@@ -345,8 +364,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[10]
[system.tsunami.fake_pnp_read0]
@@ -356,8 +380,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[12]
[system.tsunami.fake_pnp_read1]
@@ -367,8 +396,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[13]
[system.tsunami.fake_pnp_read2]
@@ -378,8 +412,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[14]
[system.tsunami.fake_pnp_read3]
@@ -389,8 +428,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[15]
[system.tsunami.fake_pnp_read4]
@@ -400,8 +444,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[16]
[system.tsunami.fake_pnp_read5]
@@ -411,8 +460,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[17]
[system.tsunami.fake_pnp_read6]
@@ -422,8 +476,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[18]
[system.tsunami.fake_pnp_read7]
@@ -433,8 +492,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[19]
[system.tsunami.fake_pnp_write]
@@ -444,19 +508,29 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[11]
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[8]
[system.tsunami.fake_sm_chip]
@@ -466,8 +540,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[3]
[system.tsunami.fake_uart1]
@@ -477,8 +556,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[4]
[system.tsunami.fake_uart2]
@@ -488,8 +572,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[5]
[system.tsunami.fake_uart3]
@@ -499,8 +588,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[6]
[system.tsunami.fake_uart4]
@@ -510,8 +604,13 @@ pio_latency=2
pio_size=8
platform=system.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=system
+update_data=false
+warn_access=
pio=system.iobus.port[7]
[system.tsunami.fb]
@@ -581,8 +680,9 @@ pio_addr=8804615847936
pio_latency=2
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
tsunami=system.tsunami
+year_is_bcd=false
pio=system.iobus.port[23]
[system.tsunami.pchip]
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.out b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.out
index 13bf1de8e..8791359a1 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.out
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/config.out
@@ -10,6 +10,7 @@ type=PhysicalMemory
file=
range=[0,134217727]
latency=1
+zero=false
[system]
type=LinuxAlphaSystem
@@ -57,6 +58,7 @@ do_quiesce=true
do_checkpoint_insts=true
do_statistics_insts=true
clock=1
+phase=0
defer_registration=false
// width not specified
function_trace=false
@@ -78,7 +80,12 @@ pio_addr=0
pio_latency=0
pio_size=8
ret_bad_addr=true
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -141,7 +148,12 @@ pio_addr=8804615848696
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -151,7 +163,12 @@ pio_addr=8804615848936
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -161,7 +178,12 @@ pio_addr=8804615848680
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -171,17 +193,27 @@ pio_addr=8804615848944
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
[system.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -200,7 +232,8 @@ pio_latency=2
frequency=1953125
platform=system.tsunami
system=system
-time=1136073600
+time=2009 1 1 0 0 0 3 1
+year_is_bcd=false
tsunami=system.tsunami
[]
@@ -239,7 +272,12 @@ pio_addr=8804615848304
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -249,7 +287,12 @@ pio_addr=8804615848432
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -267,7 +310,12 @@ pio_addr=8804615848643
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -277,7 +325,12 @@ pio_addr=8804615848579
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -287,7 +340,12 @@ pio_addr=8804615848515
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -297,7 +355,12 @@ pio_addr=8804615848451
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -307,7 +370,12 @@ pio_addr=8804615848899
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -317,7 +385,12 @@ pio_addr=8804615848835
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -327,7 +400,12 @@ pio_addr=8804615848771
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -337,7 +415,12 @@ pio_addr=8804615848707
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -347,7 +430,12 @@ pio_addr=8804615850617
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -434,7 +522,12 @@ pio_addr=8796093677568
pio_latency=2
pio_size=393216
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -452,7 +545,12 @@ pio_addr=8804615848816
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -462,7 +560,12 @@ pio_addr=8804615848569
pio_latency=2
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=system.tsunami
system=system
@@ -565,9 +668,6 @@ intel_format=false
legion_lockstep=false
trace_system=client
-[debug]
-break_cycles=
-
[statsreset]
reset_cycle=0
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/m5stats.txt b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/m5stats.txt
index 9e46f55ce..75746eadf 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/m5stats.txt
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/m5stats.txt
@@ -1,31 +1,31 @@
---------- Begin Simulation Statistics ----------
-host_inst_rate 328353 # Simulator instruction rate (inst/s)
-host_mem_usage 199236 # Number of bytes of host memory used
-host_seconds 188.42 # Real time elapsed on the host
-host_tick_rate 20564913 # Simulator tick rate (ticks/s)
+host_inst_rate 469266 # Simulator instruction rate (inst/s)
+host_mem_usage 238376 # Number of bytes of host memory used
+host_seconds 131.89 # Real time elapsed on the host
+host_tick_rate 29380471 # Simulator tick rate (ticks/s)
sim_freq 2000000000 # Frequency of simulated ticks
-sim_insts 61868161 # Number of instructions simulated
-sim_seconds 1.937422 # Number of seconds simulated
-sim_ticks 3874844018 # Number of ticks simulated
+sim_insts 61893104 # Number of instructions simulated
+sim_seconds 1.937550 # Number of seconds simulated
+sim_ticks 3875100962 # Number of ticks simulated
system.cpu.dtb.accesses 1304554 # DTB accesses
system.cpu.dtb.acv 367 # DTB access violations
-system.cpu.dtb.hits 16566194 # DTB hits
+system.cpu.dtb.hits 16571487 # DTB hits
system.cpu.dtb.misses 11447 # DTB misses
system.cpu.dtb.read_accesses 900486 # DTB read accesses
system.cpu.dtb.read_acv 210 # DTB read access violations
-system.cpu.dtb.read_hits 10048141 # DTB read hits
+system.cpu.dtb.read_hits 10051940 # DTB read hits
system.cpu.dtb.read_misses 10303 # DTB read misses
system.cpu.dtb.write_accesses 404068 # DTB write accesses
system.cpu.dtb.write_acv 157 # DTB write access violations
-system.cpu.dtb.write_hits 6518053 # DTB write hits
+system.cpu.dtb.write_hits 6519547 # DTB write hits
system.cpu.dtb.write_misses 1144 # DTB write misses
-system.cpu.idle_fraction 0.918945 # Percentage of idle cycles
-system.cpu.itb.accesses 5663974 # ITB accesses
+system.cpu.idle_fraction 0.918919 # Percentage of idle cycles
+system.cpu.itb.accesses 5664253 # ITB accesses
system.cpu.itb.acv 184 # ITB acv
-system.cpu.itb.hits 5658971 # ITB hits
+system.cpu.itb.hits 5659250 # ITB hits
system.cpu.itb.misses 5003 # ITB misses
-system.cpu.kern.callpal 195242 # number of callpals executed
+system.cpu.kern.callpal 195265 # number of callpals executed
system.cpu.kern.callpal_cserve 1 0.00% 0.00% # number of callpals executed
system.cpu.kern.callpal_wrmces 1 0.00% 0.00% # number of callpals executed
system.cpu.kern.callpal_wrfen 1 0.00% 0.00% # number of callpals executed
@@ -33,51 +33,51 @@ system.cpu.kern.callpal_wrvptptr 1 0.00% 0.00% # nu
system.cpu.kern.callpal_swpctx 4161 2.13% 2.13% # number of callpals executed
system.cpu.kern.callpal_tbi 54 0.03% 2.16% # number of callpals executed
system.cpu.kern.callpal_wrent 7 0.00% 2.16% # number of callpals executed
-system.cpu.kern.callpal_swpipl 178096 91.22% 93.38% # number of callpals executed
-system.cpu.kern.callpal_rdps 6977 3.57% 96.96% # number of callpals executed
+system.cpu.kern.callpal_swpipl 178117 91.22% 93.38% # number of callpals executed
+system.cpu.kern.callpal_rdps 6978 3.57% 96.96% # number of callpals executed
system.cpu.kern.callpal_wrkgp 1 0.00% 96.96% # number of callpals executed
system.cpu.kern.callpal_wrusp 7 0.00% 96.96% # number of callpals executed
system.cpu.kern.callpal_rdusp 9 0.00% 96.96% # number of callpals executed
system.cpu.kern.callpal_whami 2 0.00% 96.97% # number of callpals executed
-system.cpu.kern.callpal_rti 5212 2.67% 99.64% # number of callpals executed
+system.cpu.kern.callpal_rti 5213 2.67% 99.64% # number of callpals executed
system.cpu.kern.callpal_callsys 531 0.27% 99.91% # number of callpals executed
system.cpu.kern.callpal_imb 181 0.09% 100.00% # number of callpals executed
system.cpu.kern.inst.arm 0 # number of arm instructions executed
-system.cpu.kern.inst.hwrei 214344 # number of hwrei instructions executed
-system.cpu.kern.inst.quiesce 6112 # number of quiesce instructions executed
-system.cpu.kern.ipl_count 185408 # number of times we switched to this ipl
-system.cpu.kern.ipl_count_0 75624 40.79% 40.79% # number of times we switched to this ipl
-system.cpu.kern.ipl_count_21 143 0.08% 40.87% # number of times we switched to this ipl
-system.cpu.kern.ipl_count_22 1956 1.05% 41.92% # number of times we switched to this ipl
-system.cpu.kern.ipl_count_31 107685 58.08% 100.00% # number of times we switched to this ipl
-system.cpu.kern.ipl_good 150613 # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_good_0 74257 49.30% 49.30% # number of times we switched to this ipl from a different ipl
+system.cpu.kern.inst.hwrei 214368 # number of hwrei instructions executed
+system.cpu.kern.inst.quiesce 6180 # number of quiesce instructions executed
+system.cpu.kern.ipl_count 185431 # number of times we switched to this ipl
+system.cpu.kern.ipl_count_0 75630 40.79% 40.79% # number of times we switched to this ipl
+system.cpu.kern.ipl_count_21 143 0.08% 40.86% # number of times we switched to this ipl
+system.cpu.kern.ipl_count_22 1957 1.06% 41.92% # number of times we switched to this ipl
+system.cpu.kern.ipl_count_31 107701 58.08% 100.00% # number of times we switched to this ipl
+system.cpu.kern.ipl_good 150626 # number of times we switched to this ipl from a different ipl
+system.cpu.kern.ipl_good_0 74263 49.30% 49.30% # number of times we switched to this ipl from a different ipl
system.cpu.kern.ipl_good_21 143 0.09% 49.40% # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_good_22 1956 1.30% 50.70% # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_good_31 74257 49.30% 100.00% # number of times we switched to this ipl from a different ipl
-system.cpu.kern.ipl_ticks 3874842234 # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_0 3747190106 96.71% 96.71% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_21 122728 0.00% 96.71% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_22 915408 0.02% 96.73% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_ticks_31 126613992 3.27% 100.00% # number of cycles we spent at this ipl
-system.cpu.kern.ipl_used 0.812333 # fraction of swpipl calls that actually changed the ipl
-system.cpu.kern.ipl_used_0 0.981924 # fraction of swpipl calls that actually changed the ipl
+system.cpu.kern.ipl_good_22 1957 1.30% 50.70% # number of times we switched to this ipl from a different ipl
+system.cpu.kern.ipl_good_31 74263 49.30% 100.00% # number of times we switched to this ipl from a different ipl
+system.cpu.kern.ipl_ticks 3875099178 # number of cycles we spent at this ipl
+system.cpu.kern.ipl_ticks_0 3747191842 96.70% 96.70% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_ticks_21 122728 0.00% 96.70% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_ticks_22 915876 0.02% 96.73% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_ticks_31 126868732 3.27% 100.00% # number of cycles we spent at this ipl
+system.cpu.kern.ipl_used 0.812302 # fraction of swpipl calls that actually changed the ipl
+system.cpu.kern.ipl_used_0 0.981925 # fraction of swpipl calls that actually changed the ipl
system.cpu.kern.ipl_used_21 1 # fraction of swpipl calls that actually changed the ipl
system.cpu.kern.ipl_used_22 1 # fraction of swpipl calls that actually changed the ipl
-system.cpu.kern.ipl_used_31 0.689576 # fraction of swpipl calls that actually changed the ipl
-system.cpu.kern.mode_good_kernel 1923
-system.cpu.kern.mode_good_user 1762
+system.cpu.kern.ipl_used_31 0.689529 # fraction of swpipl calls that actually changed the ipl
+system.cpu.kern.mode_good_kernel 1926
+system.cpu.kern.mode_good_user 1765
system.cpu.kern.mode_good_idle 161
-system.cpu.kern.mode_switch_kernel 5967 # number of protection mode switches
-system.cpu.kern.mode_switch_user 1762 # number of protection mode switches
+system.cpu.kern.mode_switch_kernel 5968 # number of protection mode switches
+system.cpu.kern.mode_switch_user 1765 # number of protection mode switches
system.cpu.kern.mode_switch_idle 2072 # number of protection mode switches
-system.cpu.kern.mode_switch_good 0.392409 # fraction of useful protection mode switches
-system.cpu.kern.mode_switch_good_kernel 0.322272 # fraction of useful protection mode switches
+system.cpu.kern.mode_switch_good 0.392861 # fraction of useful protection mode switches
+system.cpu.kern.mode_switch_good_kernel 0.322721 # fraction of useful protection mode switches
system.cpu.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
system.cpu.kern.mode_switch_good_idle 0.077703 # fraction of useful protection mode switches
-system.cpu.kern.mode_ticks_kernel 118227580 3.05% 3.05% # number of ticks spent at the given mode
-system.cpu.kern.mode_ticks_user 18744852 0.48% 3.53% # number of ticks spent at the given mode
-system.cpu.kern.mode_ticks_idle 3737869794 96.47% 100.00% # number of ticks spent at the given mode
+system.cpu.kern.mode_ticks_kernel 118484404 3.06% 3.06% # number of ticks spent at the given mode
+system.cpu.kern.mode_ticks_user 18744972 0.48% 3.54% # number of ticks spent at the given mode
+system.cpu.kern.mode_ticks_idle 3737869794 96.46% 100.00% # number of ticks spent at the given mode
system.cpu.kern.swap_context 4162 # number of times the context was actually changed
system.cpu.kern.syscall 329 # number of syscalls executed
system.cpu.kern.syscall_2 8 2.43% 2.43% # number of syscalls executed
@@ -110,10 +110,10 @@ system.cpu.kern.syscall_98 2 0.61% 97.57% # nu
system.cpu.kern.syscall_132 4 1.22% 98.78% # number of syscalls executed
system.cpu.kern.syscall_144 2 0.61% 99.39% # number of syscalls executed
system.cpu.kern.syscall_147 2 0.61% 100.00% # number of syscalls executed
-system.cpu.not_idle_fraction 0.081055 # Percentage of non-idle cycles
-system.cpu.numCycles 3874844018 # number of cpu cycles simulated
-system.cpu.num_insts 61868161 # Number of instructions executed
-system.cpu.num_refs 16814275 # Number of memory references
+system.cpu.not_idle_fraction 0.081081 # Percentage of non-idle cycles
+system.cpu.numCycles 3875100962 # number of cpu cycles simulated
+system.cpu.num_insts 61893104 # Number of instructions executed
+system.cpu.num_refs 16819569 # Number of memory references
system.disk0.dma_read_bytes 1024 # Number of bytes transfered via DMA reads (not PRD).
system.disk0.dma_read_full_pages 0 # Number of full page size DMA reads (not PRD).
system.disk0.dma_read_txs 1 # Number of DMA read transactions (not PRD).
@@ -129,9 +129,9 @@ system.disk2.dma_write_txs 1 # Nu
system.tsunami.ethernet.coalescedRxDesc <err: div-0> # average number of RxDesc's coalesced into each post
system.tsunami.ethernet.coalescedRxIdle <err: div-0> # average number of RxIdle's coalesced into each post
system.tsunami.ethernet.coalescedRxOk <err: div-0> # average number of RxOk's coalesced into each post
-system.tsunami.ethernet.coalescedRxOrn no value # average number of RxOrn's coalesced into each post
+system.tsunami.ethernet.coalescedRxOrn <err: div-0> # average number of RxOrn's coalesced into each post
system.tsunami.ethernet.coalescedSwi <err: div-0> # average number of Swi's coalesced into each post
-system.tsunami.ethernet.coalescedTotal <err: div-0> # average number of interrupts coalesced into each post
+system.tsunami.ethernet.coalescedTotal no value # average number of interrupts coalesced into each post
system.tsunami.ethernet.coalescedTxDesc <err: div-0> # average number of TxDesc's coalesced into each post
system.tsunami.ethernet.coalescedTxIdle <err: div-0> # average number of TxIdle's coalesced into each post
system.tsunami.ethernet.coalescedTxOk <err: div-0> # average number of TxOk's coalesced into each post
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stderr b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stderr
index a8bcb04d9..69304a604 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stderr
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stderr
@@ -1,6 +1,6 @@
Warning: rounding error > tolerance
0.002000 rounded to 0
- 0: system.tsunami.io.rtc: Real-time clock set to Sun Jan 1 00:00:00 2006
+ 0: system.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
Listening for console connection on port 3456
0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
warn: Entering event queue @ 0. Starting simulation...
diff --git a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stdout b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stdout
index 9ae43c290..206c366c1 100644
--- a/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stdout
+++ b/tests/quick/10.linux-boot/ref/alpha/linux/tsunami-simple-timing/stdout
@@ -5,8 +5,8 @@ The Regents of The University of Michigan
All Rights Reserved
-M5 compiled Nov 5 2006 19:41:29
-M5 started Sun Nov 5 20:04:39 2006
-M5 executing on zizzer.eecs.umich.edu
-command line: build/ALPHA_FS/m5.opt -d build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-timing tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-timing
-Exiting @ tick 3874844018 because m5_exit instruction encountered
+M5 compiled Jan 25 2007 15:05:30
+M5 started Thu Jan 25 15:07:20 2007
+M5 executing on zeep
+command line: /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/m5.opt -d /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/tests/opt/quick/10.linux-boot/alpha/linux/tsunami-simple-timing tests/run.py quick/10.linux-boot/alpha/linux/tsunami-simple-timing
+Exiting @ tick 3875100962 because m5_exit instruction encountered
diff --git a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.ini b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.ini
index 791395981..67632ca08 100644
--- a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.ini
+++ b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.ini
@@ -18,7 +18,7 @@ kernel=/dist/m5/system/binaries/vmlinux
mem_mode=atomic
pal=/dist/m5/system/binaries/ts_osfpal
physmem=drivesys.physmem
-readfile=/z/hsul/work/m5/newmem/configs/boot/netperf-server.rcS
+readfile=/y/binkertn/research/m5/rtc/configs/boot/netperf-server.rcS
symbolfile=
system_rev=1024
system_type=34
@@ -134,8 +134,13 @@ pio_latency=1
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=true
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.membus.default
[drivesys.physmem]
@@ -143,6 +148,7 @@ type=PhysicalMemory
file=
latency=1
range=0:134217727
+zero=false
port=drivesys.membus.port[1]
[drivesys.sim_console]
@@ -275,8 +281,13 @@ pio_latency=1000
pio_size=393216
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[9]
[drivesys.tsunami.fake_ata0]
@@ -286,8 +297,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[20]
[drivesys.tsunami.fake_ata1]
@@ -297,8 +313,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[21]
[drivesys.tsunami.fake_pnp_addr]
@@ -308,8 +329,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[10]
[drivesys.tsunami.fake_pnp_read0]
@@ -319,8 +345,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[12]
[drivesys.tsunami.fake_pnp_read1]
@@ -330,8 +361,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[13]
[drivesys.tsunami.fake_pnp_read2]
@@ -341,8 +377,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[14]
[drivesys.tsunami.fake_pnp_read3]
@@ -352,8 +393,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[15]
[drivesys.tsunami.fake_pnp_read4]
@@ -363,8 +409,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[16]
[drivesys.tsunami.fake_pnp_read5]
@@ -374,8 +425,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[17]
[drivesys.tsunami.fake_pnp_read6]
@@ -385,8 +441,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[18]
[drivesys.tsunami.fake_pnp_read7]
@@ -396,8 +457,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[19]
[drivesys.tsunami.fake_pnp_write]
@@ -407,19 +473,29 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[11]
[drivesys.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[8]
[drivesys.tsunami.fake_sm_chip]
@@ -429,8 +505,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[3]
[drivesys.tsunami.fake_uart1]
@@ -440,8 +521,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[4]
[drivesys.tsunami.fake_uart2]
@@ -451,8 +537,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[5]
[drivesys.tsunami.fake_uart3]
@@ -462,8 +553,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[6]
[drivesys.tsunami.fake_uart4]
@@ -473,8 +569,13 @@ pio_latency=1000
pio_size=8
platform=drivesys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=drivesys
+update_data=false
+warn_access=
pio=drivesys.iobus.port[7]
[drivesys.tsunami.fb]
@@ -544,8 +645,9 @@ pio_addr=8804615847936
pio_latency=1000
platform=drivesys.tsunami
system=drivesys
-time=1136073600
+time=2009 1 1 0 0 0 3 1
tsunami=drivesys.tsunami
+year_is_bcd=false
pio=drivesys.iobus.port[23]
[drivesys.tsunami.pchip]
@@ -637,7 +739,7 @@ kernel=/dist/m5/system/binaries/vmlinux
mem_mode=atomic
pal=/dist/m5/system/binaries/ts_osfpal
physmem=testsys.physmem
-readfile=/z/hsul/work/m5/newmem/configs/boot/netperf-stream-client.rcS
+readfile=/y/binkertn/research/m5/rtc/configs/boot/netperf-stream-client.rcS
symbolfile=
system_rev=1024
system_type=34
@@ -753,8 +855,13 @@ pio_latency=1
pio_size=8
platform=testsys.tsunami
ret_bad_addr=true
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.membus.default
[testsys.physmem]
@@ -762,6 +869,7 @@ type=PhysicalMemory
file=
latency=1
range=0:134217727
+zero=false
port=testsys.membus.port[1]
[testsys.sim_console]
@@ -894,8 +1002,13 @@ pio_latency=1000
pio_size=393216
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[9]
[testsys.tsunami.fake_ata0]
@@ -905,8 +1018,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[20]
[testsys.tsunami.fake_ata1]
@@ -916,8 +1034,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[21]
[testsys.tsunami.fake_pnp_addr]
@@ -927,8 +1050,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[10]
[testsys.tsunami.fake_pnp_read0]
@@ -938,8 +1066,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[12]
[testsys.tsunami.fake_pnp_read1]
@@ -949,8 +1082,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[13]
[testsys.tsunami.fake_pnp_read2]
@@ -960,8 +1098,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[14]
[testsys.tsunami.fake_pnp_read3]
@@ -971,8 +1114,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[15]
[testsys.tsunami.fake_pnp_read4]
@@ -982,8 +1130,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[16]
[testsys.tsunami.fake_pnp_read5]
@@ -993,8 +1146,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[17]
[testsys.tsunami.fake_pnp_read6]
@@ -1004,8 +1162,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[18]
[testsys.tsunami.fake_pnp_read7]
@@ -1015,8 +1178,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[19]
[testsys.tsunami.fake_pnp_write]
@@ -1026,19 +1194,29 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[11]
[testsys.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[8]
[testsys.tsunami.fake_sm_chip]
@@ -1048,8 +1226,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[3]
[testsys.tsunami.fake_uart1]
@@ -1059,8 +1242,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[4]
[testsys.tsunami.fake_uart2]
@@ -1070,8 +1258,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[5]
[testsys.tsunami.fake_uart3]
@@ -1081,8 +1274,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[6]
[testsys.tsunami.fake_uart4]
@@ -1092,8 +1290,13 @@ pio_latency=1000
pio_size=8
platform=testsys.tsunami
ret_bad_addr=false
-ret_data=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
+ret_data8=255
system=testsys
+update_data=false
+warn_access=
pio=testsys.iobus.port[7]
[testsys.tsunami.fb]
@@ -1163,8 +1366,9 @@ pio_addr=8804615847936
pio_latency=1000
platform=testsys.tsunami
system=testsys
-time=1136073600
+time=2009 1 1 0 0 0 3 1
tsunami=testsys.tsunami
+year_is_bcd=false
pio=testsys.iobus.port[23]
[testsys.tsunami.pchip]
diff --git a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.out b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.out
index 21b542b9b..7ef28f570 100644
--- a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.out
+++ b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/config.out
@@ -10,6 +10,7 @@ type=PhysicalMemory
file=
range=[0,134217727]
latency=1
+zero=false
[testsys]
type=LinuxAlphaSystem
@@ -20,7 +21,7 @@ kernel=/dist/m5/system/binaries/vmlinux
console=/dist/m5/system/binaries/console
pal=/dist/m5/system/binaries/ts_osfpal
boot_osflags=root=/dev/hda1 console=ttyS0
-readfile=/z/hsul/work/m5/newmem/configs/boot/netperf-stream-client.rcS
+readfile=/y/binkertn/research/m5/rtc/configs/boot/netperf-stream-client.rcS
symbolfile=
init_param=0
system_type=34
@@ -140,6 +141,7 @@ type=PhysicalMemory
file=
range=[0,134217727]
latency=1
+zero=false
[drivesys]
type=LinuxAlphaSystem
@@ -150,7 +152,7 @@ kernel=/dist/m5/system/binaries/vmlinux
console=/dist/m5/system/binaries/console
pal=/dist/m5/system/binaries/ts_osfpal
boot_osflags=root=/dev/hda1 console=ttyS0
-readfile=/z/hsul/work/m5/newmem/configs/boot/netperf-server.rcS
+readfile=/y/binkertn/research/m5/rtc/configs/boot/netperf-server.rcS
symbolfile=
init_param=0
system_type=34
@@ -292,7 +294,12 @@ pio_addr=0
pio_latency=1
pio_size=8
ret_bad_addr=true
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -355,7 +362,12 @@ pio_addr=8804615848696
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -365,7 +377,12 @@ pio_addr=8804615848936
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -375,7 +392,12 @@ pio_addr=8804615848680
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -385,17 +407,27 @@ pio_addr=8804615848944
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
[testsys.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -414,7 +446,8 @@ pio_latency=1000
frequency=976562500
platform=testsys.tsunami
system=testsys
-time=1136073600
+time=2009 1 1 0 0 0 3 1
+year_is_bcd=false
tsunami=testsys.tsunami
[]
@@ -453,7 +486,12 @@ pio_addr=8804615848304
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -463,7 +501,12 @@ pio_addr=8804615848432
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -481,7 +524,12 @@ pio_addr=8804615848643
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -491,7 +539,12 @@ pio_addr=8804615848579
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -501,7 +554,12 @@ pio_addr=8804615848515
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -511,7 +569,12 @@ pio_addr=8804615848451
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -521,7 +584,12 @@ pio_addr=8804615848899
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -531,7 +599,12 @@ pio_addr=8804615848835
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -541,7 +614,12 @@ pio_addr=8804615848771
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -551,7 +629,12 @@ pio_addr=8804615848707
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -561,7 +644,12 @@ pio_addr=8804615850617
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -579,7 +667,12 @@ pio_addr=8796093677568
pio_latency=1000
pio_size=393216
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -597,7 +690,12 @@ pio_addr=8804615848816
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -607,7 +705,12 @@ pio_addr=8804615848569
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=testsys.tsunami
system=testsys
@@ -678,7 +781,12 @@ pio_addr=0
pio_latency=1
pio_size=8
ret_bad_addr=true
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -741,7 +849,12 @@ pio_addr=8804615848696
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -751,7 +864,12 @@ pio_addr=8804615848936
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -761,7 +879,12 @@ pio_addr=8804615848680
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -771,17 +894,27 @@ pio_addr=8804615848944
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
[drivesys.tsunami.fake_ppc]
type=IsaFake
-pio_addr=8804615848892
+pio_addr=8804615848891
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -800,7 +933,8 @@ pio_latency=1000
frequency=976562500
platform=drivesys.tsunami
system=drivesys
-time=1136073600
+time=2009 1 1 0 0 0 3 1
+year_is_bcd=false
tsunami=drivesys.tsunami
[]
@@ -839,7 +973,12 @@ pio_addr=8804615848304
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -849,7 +988,12 @@ pio_addr=8804615848432
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -867,7 +1011,12 @@ pio_addr=8804615848643
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -877,7 +1026,12 @@ pio_addr=8804615848579
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -887,7 +1041,12 @@ pio_addr=8804615848515
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -897,7 +1056,12 @@ pio_addr=8804615848451
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -907,7 +1071,12 @@ pio_addr=8804615848899
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -917,7 +1086,12 @@ pio_addr=8804615848835
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -927,7 +1101,12 @@ pio_addr=8804615848771
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -937,7 +1116,12 @@ pio_addr=8804615848707
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -947,7 +1131,12 @@ pio_addr=8804615850617
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -965,7 +1154,12 @@ pio_addr=8796093677568
pio_latency=1000
pio_size=393216
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -983,7 +1177,12 @@ pio_addr=8804615848816
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
@@ -993,7 +1192,12 @@ pio_addr=8804615848569
pio_latency=1000
pio_size=8
ret_bad_addr=false
-ret_data=255
+update_data=false
+warn_access=
+ret_data8=255
+ret_data16=65535
+ret_data32=4294967295
+ret_data64=18446744073709551615
platform=drivesys.tsunami
system=drivesys
diff --git a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/m5stats.txt b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/m5stats.txt
index dc4ea4a17..585dfef42 100644
--- a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/m5stats.txt
+++ b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/m5stats.txt
@@ -39,8 +39,8 @@ drivesys.cpu.kern.ipl_good_0 1189 45.85% 45.85% # nu
drivesys.cpu.kern.ipl_good_21 10 0.39% 46.24% # number of times we switched to this ipl from a different ipl
drivesys.cpu.kern.ipl_good_22 205 7.91% 54.15% # number of times we switched to this ipl from a different ipl
drivesys.cpu.kern.ipl_good_31 1189 45.85% 100.00% # number of times we switched to this ipl from a different ipl
-drivesys.cpu.kern.ipl_ticks 199572064367 # number of cycles we spent at this ipl
-drivesys.cpu.kern.ipl_ticks_0 199571744404 100.00% 100.00% # number of cycles we spent at this ipl
+drivesys.cpu.kern.ipl_ticks 199572064521 # number of cycles we spent at this ipl
+drivesys.cpu.kern.ipl_ticks_0 199571744558 100.00% 100.00% # number of cycles we spent at this ipl
drivesys.cpu.kern.ipl_ticks_21 1620 0.00% 100.00% # number of cycles we spent at this ipl
drivesys.cpu.kern.ipl_ticks_22 17630 0.00% 100.00% # number of cycles we spent at this ipl
drivesys.cpu.kern.ipl_ticks_31 300713 0.00% 100.00% # number of cycles we spent at this ipl
@@ -61,7 +61,7 @@ drivesys.cpu.kern.mode_switch_good_user 1 # fr
drivesys.cpu.kern.mode_switch_good_idle 0.013761 # fraction of useful protection mode switches
drivesys.cpu.kern.mode_ticks_kernel 263475 0.24% 0.24% # number of ticks spent at the given mode
drivesys.cpu.kern.mode_ticks_user 1278343 1.18% 1.43% # number of ticks spent at the given mode
-drivesys.cpu.kern.mode_ticks_idle 106485234 98.57% 100.00% # number of ticks spent at the given mode
+drivesys.cpu.kern.mode_ticks_idle 106485080 98.57% 100.00% # number of ticks spent at the given mode
drivesys.cpu.kern.swap_context 70 # number of times the context was actually changed
drivesys.cpu.kern.syscall 22 # number of syscalls executed
drivesys.cpu.kern.syscall_2 1 4.55% 4.55% # number of syscalls executed
@@ -77,8 +77,8 @@ drivesys.cpu.kern.syscall_106 1 4.55% 86.36% # nu
drivesys.cpu.kern.syscall_118 2 9.09% 95.45% # number of syscalls executed
drivesys.cpu.kern.syscall_150 1 4.55% 100.00% # number of syscalls executed
drivesys.cpu.not_idle_fraction 0.000000 # Percentage of non-idle cycles
-drivesys.cpu.numCycles 1959293 # number of cpu cycles simulated
-drivesys.cpu.num_insts 1959077 # Number of instructions executed
+drivesys.cpu.numCycles 1959205 # number of cpu cycles simulated
+drivesys.cpu.num_insts 1958989 # Number of instructions executed
drivesys.cpu.num_refs 626286 # Number of memory references
drivesys.disk0.dma_read_bytes 0 # Number of bytes transfered via DMA reads (not PRD).
drivesys.disk0.dma_read_full_pages 0 # Number of full page size DMA reads (not PRD).
@@ -140,12 +140,12 @@ drivesys.tsunami.ethernet.txPPS 25 # Pa
drivesys.tsunami.ethernet.txPackets 5 # Number of Packets Transmitted
drivesys.tsunami.ethernet.txTcpChecksums 2 # Number of tx TCP Checksums done by device
drivesys.tsunami.ethernet.txUdpChecksums 0 # Number of tx UDP Checksums done by device
-host_inst_rate 38710250 # Simulator instruction rate (inst/s)
-host_mem_usage 411152 # Number of bytes of host memory used
-host_seconds 7.14 # Real time elapsed on the host
-host_tick_rate 28030590990 # Simulator tick rate (ticks/s)
+host_inst_rate 65873683 # Simulator instruction rate (inst/s)
+host_mem_usage 463096 # Number of bytes of host memory used
+host_seconds 4.19 # Real time elapsed on the host
+host_tick_rate 47718011872 # Simulator tick rate (ticks/s)
sim_freq 1000000000000 # Frequency of simulated ticks
-sim_insts 276189231 # Number of instructions simulated
+sim_insts 276082930 # Number of instructions simulated
sim_seconds 0.200001 # Number of seconds simulated
sim_ticks 200000789468 # Number of ticks simulated
testsys.cpu.dtb.accesses 335402 # DTB accesses
@@ -188,8 +188,8 @@ testsys.cpu.kern.ipl_good_0 5055 48.15% 48.15% # nu
testsys.cpu.kern.ipl_good_21 183 1.74% 49.90% # number of times we switched to this ipl from a different ipl
testsys.cpu.kern.ipl_good_22 205 1.95% 51.85% # number of times we switched to this ipl from a different ipl
testsys.cpu.kern.ipl_good_31 5055 48.15% 100.00% # number of times we switched to this ipl from a different ipl
-testsys.cpu.kern.ipl_ticks 199569923603 # number of cycles we spent at this ipl
-testsys.cpu.kern.ipl_ticks_0 199569308033 100.00% 100.00% # number of cycles we spent at this ipl
+testsys.cpu.kern.ipl_ticks 199569923816 # number of cycles we spent at this ipl
+testsys.cpu.kern.ipl_ticks_0 199569308246 100.00% 100.00% # number of cycles we spent at this ipl
testsys.cpu.kern.ipl_ticks_21 30857 0.00% 100.00% # number of cycles we spent at this ipl
testsys.cpu.kern.ipl_ticks_22 17630 0.00% 100.00% # number of cycles we spent at this ipl
testsys.cpu.kern.ipl_ticks_31 567083 0.00% 100.00% # number of cycles we spent at this ipl
@@ -208,9 +208,9 @@ testsys.cpu.kern.mode_switch_good 0.614085 # fr
testsys.cpu.kern.mode_switch_good_kernel 0.594545 # fraction of useful protection mode switches
testsys.cpu.kern.mode_switch_good_user 1 # fraction of useful protection mode switches
testsys.cpu.kern.mode_switch_good_idle 0.013123 # fraction of useful protection mode switches
-testsys.cpu.kern.mode_ticks_kernel 1821232 2.16% 2.16% # number of ticks spent at the given mode
+testsys.cpu.kern.mode_ticks_kernel 1821166 2.16% 2.16% # number of ticks spent at the given mode
testsys.cpu.kern.mode_ticks_user 1065606 1.26% 3.42% # number of ticks spent at the given mode
-testsys.cpu.kern.mode_ticks_idle 81403567 96.58% 100.00% # number of ticks spent at the given mode
+testsys.cpu.kern.mode_ticks_idle 81403516 96.58% 100.00% # number of ticks spent at the given mode
testsys.cpu.kern.swap_context 440 # number of times the context was actually changed
testsys.cpu.kern.syscall 83 # number of syscalls executed
testsys.cpu.kern.syscall_2 3 3.61% 3.61% # number of syscalls executed
@@ -235,8 +235,8 @@ testsys.cpu.kern.syscall_104 1 1.20% 93.98% # nu
testsys.cpu.kern.syscall_105 3 3.61% 97.59% # number of syscalls executed
testsys.cpu.kern.syscall_118 2 2.41% 100.00% # number of syscalls executed
testsys.cpu.not_idle_fraction 0.000001 # Percentage of non-idle cycles
-testsys.cpu.numCycles 3566237 # number of cpu cycles simulated
-testsys.cpu.num_insts 3564671 # Number of instructions executed
+testsys.cpu.numCycles 3566149 # number of cpu cycles simulated
+testsys.cpu.num_insts 3564583 # Number of instructions executed
testsys.cpu.num_refs 1173698 # Number of memory references
testsys.disk0.dma_read_bytes 0 # Number of bytes transfered via DMA reads (not PRD).
testsys.disk0.dma_read_full_pages 0 # Number of full page size DMA reads (not PRD).
@@ -357,10 +357,10 @@ drivesys.tsunami.ethernet.coalescedRxIdle <err: div-0> # a
drivesys.tsunami.ethernet.coalescedRxOk <err: div-0> # average number of RxOk's coalesced into each post
drivesys.tsunami.ethernet.coalescedRxOrn <err: div-0> # average number of RxOrn's coalesced into each post
drivesys.tsunami.ethernet.coalescedSwi <err: div-0> # average number of Swi's coalesced into each post
-drivesys.tsunami.ethernet.coalescedTotal <err: div-0> # average number of interrupts coalesced into each post
-drivesys.tsunami.ethernet.coalescedTxDesc <err: div-0> # average number of TxDesc's coalesced into each post
-drivesys.tsunami.ethernet.coalescedTxIdle <err: div-0> # average number of TxIdle's coalesced into each post
-drivesys.tsunami.ethernet.coalescedTxOk <err: div-0> # average number of TxOk's coalesced into each post
+drivesys.tsunami.ethernet.coalescedTotal no value # average number of interrupts coalesced into each post
+drivesys.tsunami.ethernet.coalescedTxDesc no value # average number of TxDesc's coalesced into each post
+drivesys.tsunami.ethernet.coalescedTxIdle no value # average number of TxIdle's coalesced into each post
+drivesys.tsunami.ethernet.coalescedTxOk no value # average number of TxOk's coalesced into each post
drivesys.tsunami.ethernet.descDMAReads 0 # Number of descriptors the device read w/ DMA
drivesys.tsunami.ethernet.descDMAWrites 0 # Number of descriptors the device wrote w/ DMA
drivesys.tsunami.ethernet.descDmaReadBytes 0 # number of descriptor bytes read w/ DMA
@@ -383,12 +383,12 @@ drivesys.tsunami.ethernet.totalSwi 0 # to
drivesys.tsunami.ethernet.totalTxDesc 0 # total number of TxDesc written to ISR
drivesys.tsunami.ethernet.totalTxIdle 0 # total number of TxIdle written to ISR
drivesys.tsunami.ethernet.totalTxOk 0 # total number of TxOk written to ISR
-host_inst_rate 75502796884 # Simulator instruction rate (inst/s)
-host_mem_usage 411152 # Number of bytes of host memory used
+host_inst_rate 145844125726 # Simulator instruction rate (inst/s)
+host_mem_usage 463096 # Number of bytes of host memory used
host_seconds 0.00 # Real time elapsed on the host
-host_tick_rate 201377914 # Simulator tick rate (ticks/s)
+host_tick_rate 385283333 # Simulator tick rate (ticks/s)
sim_freq 1000000000000 # Frequency of simulated ticks
-sim_insts 276189231 # Number of instructions simulated
+sim_insts 276082930 # Number of instructions simulated
sim_seconds 0.000001 # Number of seconds simulated
sim_ticks 785978 # Number of ticks simulated
testsys.cpu.dtb.accesses 0 # DTB accesses
@@ -417,10 +417,10 @@ testsys.cpu.kern.mode_good_idle 0
testsys.cpu.kern.mode_switch_kernel 0 # number of protection mode switches
testsys.cpu.kern.mode_switch_user 0 # number of protection mode switches
testsys.cpu.kern.mode_switch_idle 0 # number of protection mode switches
-testsys.cpu.kern.mode_switch_good no value # fraction of useful protection mode switches
-testsys.cpu.kern.mode_switch_good_kernel no value # fraction of useful protection mode switches
-testsys.cpu.kern.mode_switch_good_user no value # fraction of useful protection mode switches
-testsys.cpu.kern.mode_switch_good_idle no value # fraction of useful protection mode switches
+testsys.cpu.kern.mode_switch_good <err: div-0> # fraction of useful protection mode switches
+testsys.cpu.kern.mode_switch_good_kernel <err: div-0> # fraction of useful protection mode switches
+testsys.cpu.kern.mode_switch_good_user <err: div-0> # fraction of useful protection mode switches
+testsys.cpu.kern.mode_switch_good_idle <err: div-0> # fraction of useful protection mode switches
testsys.cpu.kern.mode_ticks_kernel 0 # number of ticks spent at the given mode
testsys.cpu.kern.mode_ticks_user 0 # number of ticks spent at the given mode
testsys.cpu.kern.mode_ticks_idle 0 # number of ticks spent at the given mode
@@ -446,10 +446,10 @@ testsys.tsunami.ethernet.coalescedRxIdle <err: div-0> # av
testsys.tsunami.ethernet.coalescedRxOk <err: div-0> # average number of RxOk's coalesced into each post
testsys.tsunami.ethernet.coalescedRxOrn <err: div-0> # average number of RxOrn's coalesced into each post
testsys.tsunami.ethernet.coalescedSwi <err: div-0> # average number of Swi's coalesced into each post
-testsys.tsunami.ethernet.coalescedTotal <err: div-0> # average number of interrupts coalesced into each post
-testsys.tsunami.ethernet.coalescedTxDesc <err: div-0> # average number of TxDesc's coalesced into each post
-testsys.tsunami.ethernet.coalescedTxIdle <err: div-0> # average number of TxIdle's coalesced into each post
-testsys.tsunami.ethernet.coalescedTxOk <err: div-0> # average number of TxOk's coalesced into each post
+testsys.tsunami.ethernet.coalescedTotal no value # average number of interrupts coalesced into each post
+testsys.tsunami.ethernet.coalescedTxDesc no value # average number of TxDesc's coalesced into each post
+testsys.tsunami.ethernet.coalescedTxIdle no value # average number of TxIdle's coalesced into each post
+testsys.tsunami.ethernet.coalescedTxOk no value # average number of TxOk's coalesced into each post
testsys.tsunami.ethernet.descDMAReads 0 # Number of descriptors the device read w/ DMA
testsys.tsunami.ethernet.descDMAWrites 0 # Number of descriptors the device wrote w/ DMA
testsys.tsunami.ethernet.descDmaReadBytes 0 # number of descriptor bytes read w/ DMA
diff --git a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stderr b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stderr
index 3aa8423b9..0be24123b 100644
--- a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stderr
+++ b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stderr
@@ -1,6 +1,6 @@
- 0: testsys.tsunami.io.rtc: Real-time clock set to Sun Jan 1 00:00:00 2006
+ 0: testsys.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
Listening for console connection on port 3456
- 0: drivesys.tsunami.io.rtc: Real-time clock set to Sun Jan 1 00:00:00 2006
+ 0: drivesys.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
Listening for console connection on port 3457
0: testsys.remote_gdb.listener: listening for remote gdb #0 on port 7000
0: drivesys.remote_gdb.listener: listening for remote gdb #1 on port 7001
diff --git a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stdout b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stdout
index 183b4bb4e..e529ca1ae 100644
--- a/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stdout
+++ b/tests/quick/80.netperf-stream/ref/alpha/linux/twosys-tsunami-simple-atomic/stdout
@@ -5,10 +5,10 @@ The Regents of The University of Michigan
All Rights Reserved
-M5 compiled Nov 29 2006 16:48:25
-M5 started Sat Dec 2 11:01:31 2006
-M5 executing on zed.eecs.umich.edu
-command line: build/ALPHA_FS/m5.opt -d build/ALPHA_FS/tests/opt/quick/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic tests/run.py quick/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic
-Resetting stats at cycle 4093398828306!
-Resetting stats at cycle 4293399617774!
-Exiting @ tick 4293400403752 because checkpoint
+M5 compiled Jan 25 2007 15:05:30
+M5 started Thu Jan 25 15:12:40 2007
+M5 executing on zeep
+command line: /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/m5.opt -d /n/zeep/y/binkertn/build/rtc/build/ALPHA_FS/tests/opt/quick/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic tests/run.py quick/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic
+Resetting stats at cycle 4093398828093!
+Resetting stats at cycle 4293399617561!
+Exiting @ tick 4293400403539 because checkpoint