Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-05-14 | SPARC: Implement the version of movcc that uses the fp condition codes. | Gabe Black | |
2010-02-12 | O3PCU: Split loads and stores that cross cache line boundaries. | Timothy M. Jones | |
When each load or store is sent to the LSQ, we check whether it will cross a cache line boundary and, if so, split it in two. This creates two TLB translations and two memory requests. Care has to be taken if the first packet of a split load is sent but the second blocks the cache. Similarly, for a store, if the first packet cannot be sent, we must store the second one somewhere to retry later. This modifies the LSQSenderState class to record both packets in a split load or store. Finally, a new const variable, HasUnalignedMemAcc, is added to each ISA to indicate whether unaligned memory accesses are allowed. This is used throughout the changed code so that compiler can optimise away code dealing with split requests for ISAs that don't need them. | |||
2009-10-30 | Syscalls: Make system calls access arguments like a stack, not an array. | Gabe Black | |
When accessing arguments for a syscall, the position of an argument depends on the policies of the ISA, how much space preceding arguments took up, and the "alignment" of the index for this particular argument into the number of possible storate locations. This change adjusts getSyscallArg to take its index parameter by reference instead of value and to adjust it to point to the possible location of the next argument on the stack, basically just after the current one. This way, the rules for the new argument can be applied locally without knowing about other arguments since those have already been taken into account implicitly. All system calls have also been changed to reflect the new interface. In a number of cases this made the implementation clearer since it encourages arguments to be collected in one place in order and then used as necessary later, as opposed to scattering them throughout the function or using them in place in long expressions. It also discourages using getSyscallArg over and over to retrieve the same value when a temporary would do the job. | |||
2009-09-15 | Syscalls: Implement sysinfo() syscall. | Vince Weaver | |
2009-09-15 | SPARC: Make resTemp in udivcc wide enough to hold all the bits we need. | Vince Weaver | |
2009-08-01 | Clean up some inconsistencies with Request flags. | Steve Reinhardt | |
2009-07-25 | SPARC: Fix a minor compile bug in native trace on gcc > 4.1. | Gabe Black | |
2009-07-19 | CPU: Separate out native trace into ISA (in)dependent code and SimObjects. | Gabe Black | |
--HG-- rename : src/cpu/nativetrace.cc => src/arch/sparc/nativetrace.cc rename : src/cpu/nativetrace.hh => src/arch/sparc/nativetrace.hh rename : src/cpu/NativeTrace.py => src/arch/x86/X86NativeTrace.py | |||
2009-07-10 | SPARC: Set up a lookup table for integer register flattening. | Gabe Black | |
Using a look up table changed the run time of the SPARC_FS solaris boot regression from: real 14m45.951s user 13m57.528s sys 0m3.452s to: real 12m19.777s user 12m2.685s sys 0m2.420s | |||
2009-07-09 | SPARC: Fold the MiscRegFile all the way into the ISA object. | Gabe Black | |
2009-07-08 | Get rid of the unused get(Data|Inst)Asid and (inst|data)Asid functions. | Gabe Black | |
2009-07-08 | Registers: Add a registers.hh file as an ISA switched header. | Gabe Black | |
This file is for register indices, Num* constants, and register types. copyRegs and copyMiscRegs were moved to utility.hh and utility.cc. --HG-- rename : src/arch/alpha/regfile.hh => src/arch/alpha/registers.hh rename : src/arch/arm/regfile.hh => src/arch/arm/registers.hh rename : src/arch/mips/regfile.hh => src/arch/mips/registers.hh rename : src/arch/sparc/regfile.hh => src/arch/sparc/registers.hh rename : src/arch/x86/regfile.hh => src/arch/x86/registers.hh | |||
2009-07-08 | Registers: Eliminate the ISA defined RegFile class. | Gabe Black | |
2009-07-08 | Registers: Move the PCs out of the ISAs and into the CPUs. | Gabe Black | |
2009-07-08 | SPARC: Phase out SPARC's intregfile.hh. | Gabe Black | |
2009-07-08 | Registers: Eliminate the ISA defined integer register file. | Gabe Black | |
2009-07-08 | Registers: Eliminate the ISA defined floating point register file. | Gabe Black | |
2009-07-08 | Registers: Get rid of the float register width parameter. | Gabe Black | |
2009-07-08 | Registers: Add an ISA object which replaces the MiscRegFile. | Gabe Black | |
This object encapsulates (or will eventually) the identity and characteristics of the ISA in the CPU. | |||
2009-07-05 | SPARC: Fix the parenthesis in inUserMode. | Gabe Black | |
2009-05-17 | includes: sort includes again | Nathan Binkert | |
2009-05-17 | includes: use base/types.hh not inttypes.h or stdint.h | Nathan Binkert | |
2009-05-17 | types: Move stuff for global types into src/base/types.hh | Nathan Binkert | |
--HG-- rename : src/sim/host.hh => src/base/types.hh | |||
2009-04-24 | SPARC: Tighten up the clone system call and SPARCs copyRegs. | Gabe Black | |
2009-04-21 | syscall: Resolve conflicts between m5threads and Gabe's recent SE changes. | Steve Reinhardt | |
2009-04-21 | Commit m5threads package. | Daniel Sanchez | |
This patch adds limited multithreading support in syscall-emulation mode, by using the clone system call. The clone system call works for Alpha, SPARC and x86, and multithreaded applications run correctly in Alpha and SPARC. | |||
2009-04-19 | SE mode: Make keeping track of the number of syscalls less hacky. | Gabe Black | |
2009-04-15 | Get 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-08 | tlb: More fixing of unified TLB | Nathan Binkert | |
2009-04-08 | tlb: Don't separate the TLB classes into an instruction TLB and a data TLB | Gabe Black | |
2009-02-28 | Fix Num_Syscall_Descs check bug in non-x86 ISAs. | Steve Reinhardt | |
(See cset d35d2b28df38 for x86 fix.) | |||
2009-02-27 | Processes: Make getting and setting system call arguments part of a process ↵ | Gabe Black | |
object. | |||
2009-02-25 | ISA: Get rid of the get*RegName functions. | Gabe Black | |
2009-02-25 | SPARC: Get rid of the state keeping track of register frames. | Gabe Black | |
2009-02-25 | ISA: Set up common trace flags for tracing registers. | Gabe Black | |
2009-02-25 | ISA: Get rid of FlattenIntIndex function. | Gabe Black | |
2009-02-25 | SPARC: Get rid of flattenIndex in the int register file. | Gabe Black | |
2009-02-25 | ISA: Use the "Stack" traceflag for DPRINTFs about the initial stack frame. | Gabe Black | |
2009-02-25 | SPARC: Get rid of the setGlobals function. | Gabe Black | |
2009-02-25 | SPARC: Get rid of the setCWP function. | Gabe Black | |
2009-02-25 | SPARC: Add a traceflag for register windows. | Gabe Black | |
2009-02-25 | CPU: Implement translateTiming which defers to translateAtomic, and convert ↵ | Gabe Black | |
the timing simple CPU to use it. | |||
2009-02-25 | SPARC: Adjust a few instructions to not write registers in initiateAcc. | Gabe Black | |
2009-02-25 | ISA: Replace the translate functions in the TLBs with translateAtomic. | Gabe Black | |
2009-02-16 | sycalls: implement mremap() and add DATA flag for getrlimit(). mremap has ↵ | Lisa Hsu | |
been tested on Alpha, compiles for the rest but not tested. I don't see why it wouldn't work though. | |||
2009-01-30 | Errors: Use the correct panic/warn/fatal/info message in some places. | Ali Saidi | |
2009-01-25 | CPU: Add a setCPU function to the interrupt objects. | Gabe Black | |
2009-01-19 | tracing: Add help strings for some of the trace flags | Nathan Binkert | |
2009-01-13 | SCons: centralize the Dir() workaround for newer versions of scons. | Nathan Binkert | |
Scons bug id: 2006 M5 Bug id: 308 | |||
2008-12-16 | SPARC: Truncate syscall args and return values appropriately. | Gabe Black | |