summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2009-04-19CPU: If the simple CPU is already idle, just return from suspendContext, ↵Gabe Black
don't assert.
2009-04-19X86: Condense the startupCPU code.Gabe Black
2009-04-19X86: Set the local APIC ID to something meaningful.Gabe Black
2009-04-19X86: Don't pretend to be an AMD CPU any more. We're not good enough at it.Gabe Black
2009-04-18mips-tlb-fix: check for alignment faults.\nMIPS was never updated to use ↵Korey Sewell
TLBS correcty in SE mode. The error was forwarding translations directly to pageTable. The TLB should check for alignment faults at bare minimum here but in the long run we should be using TLBs in SE mode for MIPS.
2009-04-18mips-syscall: mark with correct flag. \nMIPS was using wrong serialization ↵Korey Sewell
flag on syscall instructions allowing O3 to handle SE mode syscalls incorrectly and speculate on instructions after a syscall
2009-04-18o3-delay-slot-bpred: fix decode stage handling of uncdtl. branches.\n decode ↵Korey Sewell
stage was not setting the predicted PC correctly or passing that information back to fetch correctly
2009-04-18mips-shadowsets: fix calcuations. \n Remove Shadowsets from Int & Arch. Reg ↵Korey Sewell
Calculations
2009-04-17o3, inorder: fix FS bug due to initializing ThreadState to Halted.Steve Reinhardt
For some reason o3 FS init() only called initCPU if the thread state was Suspended, which was no longer the case. There's no apparent reason to check, so I whacked the test completely rather than changing the check to Halted. The inorder init() was also updated to be symmetric, though the previous code was just a fancy no-op.
2009-04-15o3: handle fetch with no active threads correctly.Steve Reinhardt
This situation can arise now on the first fetch cycle after the last active thread is halted. It seems easy enough to deal with when it happens rather than trying to avoid it.
2009-04-15o3: fix {read,set}ArchFloatReg* functions.Steve Reinhardt
Register indices were not being calculated properly.
2009-04-15ThreadState: initialize status to Halted in constructor.Steve Reinhardt
This provides a common initial status for all threads independent of CPU model (unlike the prior situation where CPUs initialized threads to inconsistent states). This mostly matters for SE mode; in FS mode, ISA-specific startupCPU() methods generally handle boot-time initialization of thread contexts (since the right thing to do is ISA-dependent).
2009-04-15Get rid of the Unallocated thread context state.Steve Reinhardt
Basically merge it in with Halted. Also had to get rid of a few other functions that called ThreadContext::deallocate(), including: - InOrderCPU's setThreadRescheduleCondition. - ThreadContext::exit(). This function was there to avoid terminating simulation when one thread out of a multi-thread workload exits, but we need to find a better (non-cpu-centric) way.
2009-04-13X86: Fix minor bug in the page table walker from TLB shuffling.Gabe Black
2009-04-08stats: disallow duplicate statistic names.Nathan Binkert
2009-04-08alpha: get rid of all turbolaser remnantsNathan Binkert
2009-04-08tlb: More fixing of unified TLBNathan Binkert
2009-04-08tlb: Don't separate the TLB classes into an instruction TLB and a data TLBGabe Black
2009-04-06Merge ARM into the head. ARM will compile but may not actually work.Gabe Black
2009-04-05arm: add ARM support to M5Stephen Hines
2009-03-25CPA: Fix a typo that managed to sneak in.Ali Saidi
2009-03-16stats: fix compiler errorNathan Binkert
2009-03-11cache: set dirty bit on swaps (oops!)Steve Reinhardt
2009-03-11cpu: fix minor endian issue with trace outputSteve Reinhardt
(no functional change)
2009-03-10prefetch: don't panic on requests w/o contextID (e.g., writebacks).Steve Reinhardt
2009-03-07build: fix compiler warnings in g++ 3.4Nathan Binkert
2009-03-07Fix up regression execution to better handle tests that end abnormally.Steve Reinhardt
E.g., mark aborts due to assertion failures as failed tests, but those that get killed by the user as needing to be rerun, etc.
2009-03-07stats: fix duplicate statistics names.Nathan Binkert
This generally requires providing a more meaningful name() function for a class.
2009-03-07stats: cleanup text output stuff and fix mysql outputNathan Binkert
2009-03-07build: fix errors for compilers other than g++ 4.3Nathan Binkert
2009-03-05stats: create an enable phase, and a prepare phase.Nathan Binkert
Enable more or less takes the place of check, but also allows stats to do some other configuration. Prepare moves all of the code that readies a stat for dumping into a separate function in preparation for supporting serialization of certain pieces of statistics data. While we're at it, clean up the visitor code and some of the python code.
2009-03-05stats: clean up how templates are used on the data side.Nathan Binkert
This basically works by taking advantage of the curiously recurring template pattern in an intelligent way so as to reduce the number of lines of code and hopefully make things a little bit clearer.
2009-03-05stats: Fix all stats usages to deal with template fixesNathan Binkert
2009-03-05stats: remove the template wart left over from the ancient binning stuffNathan Binkert
2009-03-05stats: stick the distribution's fancy parameter into the parameters structure.Nathan Binkert
2009-03-05stats: Add a wrapper class for the information side of things.Nathan Binkert
This provides an easy way to provide the callbacks into the data side of things from the info side of things. Rename Wrap to DataWrap so it is more easily distinguishable from InfoWrap
2009-03-05stats: better naming of template parameters for the wrapper stuffNathan Binkert
Parent and Child are bad names. Derived and Base are better.
2009-03-05stats: get rid of meaningless uses of virtualNathan Binkert
2009-03-05stats: miscellaneous cleanupNathan Binkert
2009-03-05serialize: Allow floats and doubles to be serializedNathan Binkert
2009-03-05Get rid of 'using namespace' declarations in headers.Steve Reinhardt
2009-03-04InOrderCPU: Clean up Constructors to initialize variables correctly (i.e. in ↵Korey Sewell
a way for the compiler to play *nice*)
2009-03-04Give each resource in InOrder it's own TraceFlag instead of just standard ↵Korey Sewell
'Resource' flag
2009-03-04Remove unused functions/comments cluttering up the code.Korey Sewell
2009-03-04make handling of interstage buffers (i.e. StageQueues) more consistent: ↵Korey Sewell
(1)number from 0-n, not 1-n+1, (2) always check nextStageValid before a stageNum+1 and prevStageValid for a stageNum-1 reference (3) add skidSize() to get StageQueue size for all threads
2009-03-04 InOrder didnt have all it's params set to a default value, which is now ↵Korey Sewell
required for M5 objects; Also, a # of values need to be reset to 0 (or the appropriate value) before we assume they are OK for use.
2009-03-04Give TimeBuffer an ID that can be set. Necessary because InOrder uses ↵Korey Sewell
generic stages so w/o an ID there is no way to differentiate buffers when debugging
2009-03-04use numCycles instead of simTicks to determine CPI stat in InOrderKorey Sewell
2009-03-04O3: Make numThreads error message more helpful.Steve Reinhardt
2009-02-28Fix Num_Syscall_Descs check bug in non-x86 ISAs.Steve Reinhardt
(See cset d35d2b28df38 for x86 fix.)