summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-04-19X86: Make the interrupt entering microcode record the value to use, not ↵Gabe Black
actually use it.
2009-04-19X86: LEA calculates an address before segmentation.Gabe Black
2009-04-19X86: Implement the save machine status word instruction (SMSW).Gabe Black
2009-04-19X86: Implement the load machine status word instruction (LMSW).Gabe Black
2009-04-19X86: Update the stats for the fix for CPUID.Gabe Black
2009-04-19X86: Only use %eax to select a function and look like we support sse2.Gabe Black
2009-04-19X86: Fix the mov to segment selector in real mode instruction microcode.Gabe Black
2009-04-19X86: The startup IPI delivery mode is not reserved.Gabe Black
2009-04-19X86: Implement the STARTUP IPI.Gabe Black
2009-04-19X86: Implement the INIT IPI.Gabe Black
2009-04-19X86: Fix the halt microop.Gabe Black
2009-04-19X86: Start implementing the interrupt command register in the local APIC.Gabe Black
2009-04-19X86: Make code that sends an interrupt from the IO APIC available for IPIs.Gabe Black
2009-04-19X86: Automatically make the IO APIC in an N CPU system have id N+1.Gabe Black
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-18o3-mips-regress: add hello word regression.Korey Sewell
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-15Update stats after elimination of Unallocated state.Steve Reinhardt
Somehow ending threads with halt() instead of deallocate() reduces the squash count on o3 by 1 (and a few other similarly trivial changes).
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-15configs: Allow M5_CPU2000 env var to set CPU2K binary path.Steve Reinhardt
It would be nice to have a more comprehensive mechanism but this is a big improvement over manually editing the script.
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-08tests: update tests for TLB unificationNathan 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-08style: fix style hook for some newer versions of mercurial.Nathan Binkert
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-17includes: add ext to the includes path.Nathan Binkert
move dnet to the correct place so that we use this --HG-- rename : ext/dnet/dnet/addr.h => ext/dnet/addr.h rename : ext/dnet/dnet/arp.h => ext/dnet/arp.h rename : ext/dnet/dnet/blob.h => ext/dnet/blob.h rename : ext/dnet/dnet/eth.h => ext/dnet/eth.h rename : ext/dnet/dnet/fw.h => ext/dnet/fw.h rename : ext/dnet/dnet/icmp.h => ext/dnet/icmp.h rename : ext/dnet/dnet/intf.h => ext/dnet/intf.h rename : ext/dnet/dnet/ip.h => ext/dnet/ip.h rename : ext/dnet/dnet/ip6.h => ext/dnet/ip6.h rename : ext/dnet/dnet/os.h => ext/dnet/os.h rename : ext/dnet/dnet/rand.h => ext/dnet/rand.h rename : ext/dnet/dnet/route.h => ext/dnet/route.h rename : ext/dnet/dnet/tcp.h => ext/dnet/tcp.h rename : ext/dnet/dnet/udp.h => ext/dnet/udp.h
2009-03-17ply: put the absolute path to ply in the environment, not a relative oneNathan Binkert
2009-03-16stats: fix compiler errorNathan Binkert
2009-03-16Very minor regression stats updates due top previous changeset.Steve Reinhardt
Setting dirty bit on swaps added a handful of writebacks in a few of the longer-running SPARC_SE benchmarks.
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-11tests: use env.Execute instead of Execute to pick up env vars.Steve Reinhardt
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-07Minor tweak to regression exit status message.Steve Reinhardt