summaryrefslogtreecommitdiff
path: root/src/arch
AgeCommit message (Collapse)Author
2009-06-24ARM: Fix signed multiply long and add some unimplemented loads.Jack Whitman
2009-06-24ARM: Link register is trashed by non-executed branch and link operations.Jack Whitman
2009-06-23ARM: Added unimplemented load/store multiple instructions.Jack Whitman
2009-06-21ARM: Simplify some utility functions.Gabe Black
2009-06-21ARM: Move util functions out of the isa desc.Gabe Black
2009-06-21ARM: Simplify the ISA desc by pulling some classes out of it.Gabe Black
2009-06-21ARM: Remove the currently unecessary FPAOp class.Gabe Black
2009-06-21ARM: Make inst bitfields accessible outside of the isa desc.Gabe Black
2009-06-21ARM: Don't downconvert ExtMachInsts to MachInsts.Gabe Black
2009-06-21ARM: Get rid of a few more unused operands.Gabe Black
2009-06-21ARM: Get rid of unnecessary Re operand.Gabe Black
2009-06-21ARM: Clear out some inherited hangers on in util.isa and utility.hh.Gabe Black
2009-06-21ARM: Get rid of unnecessary fp_enable_checks.Gabe Black
2009-06-21ARM: Adjust simplify rotate_imm slightly.Gabe Black
2009-06-21ARM: Make the isa parser aware that CPSR is being used.Gabe Black
2009-06-21ARM: Pull some static code out of the isa desc and create miscregs.hh.Gabe Black
2009-06-21ARM: Get rid of unused postacc_code.Gabe Black
2009-06-09ARM: Hook in the mmap2 system call. Make ArmLinuxProcess handle 5,6 syscall ↵Gabe Black
params.
2009-06-09ARM: Add a memory_barrier function to the "comm page".Gabe Black
This function doesn't actually provide a memory barrier (I don't think they're implemented) and instead just returns.
2009-06-09ARM: Add a cmpxchg implementation to the "comm page".Gabe Black
This implementation does what it's supposed to (I think), but it's not atomic and doesn't have memory barriers like the kernel's version.
2009-06-09ARM: Implement TLS. This is not tested.Gabe Black
2009-06-09ARM: Make ArmLinuxProcess understand "ARM private" system calls.Gabe Black
2009-06-09ARM: Update the kernel version M5 reports to 2.6.16.19Gabe Black
2009-06-04types: clean up types, especially signed vs unsignedNathan Binkert
2009-05-28X86: Keep track of more descriptor state to accomodate KVM.Gabe Black
2009-05-26types: add a type for thread IDs and try to use it everywhereNathan Binkert
2009-05-26X86: Really set up the GDT and various hidden/visible segment registers.Gabe Black
2009-05-17includes: sort includes againNathan Binkert
2009-05-17includes: use base/types.hh not inttypes.h or stdint.hNathan Binkert
2009-05-17types: Move stuff for global types into src/base/types.hhNathan Binkert
--HG-- rename : src/sim/host.hh => src/base/types.hh
2009-05-13mips-merge: merge hello world regress for inorder cpuKorey Sewell
w/latest changes
2009-05-12gcc: work around a bogus gcc errorNathan Binkert
2009-05-13inorder-mips: Remove eaComp & memAcc; use 'visible' eaCompKorey Sewell
Inorder expects eaComp to be visible through StaticInst object. This mirrors a similar change to ALPHA... Needs to be done for SPARC and whatever other ISAs want to use InOrderCPU
2009-05-13arch-mips: add regWidth constant to float regfileKorey Sewell
2009-05-12alpha-isa: add mt.hh so it can compile with inorderKorey Sewell
2009-05-12inorder-tlb-cunit: merge the TLB as implicit to any memory accessKorey Sewell
TLBUnit no longer used and we also get rid of memAccSize and memAccFlags functions added to ISA and StaticInst since TLB is not a separate resource to acquire. Instead, TLB access is done before any read/write to memory and the result is checked before it's sent out to memory. * * *
2009-05-12inorder-float: Fix storage of FP resultsKorey Sewell
inorder was incorrectly storing FP values and confusing the integer/fp storage view of floating point operations. A big issue was knowing trying to infer when were doing single or double precision access because this lets you know the size of value to store (32-64 bits). This isnt exactly straightforward since alpha uses all 64-bit regs while mips/sparc uses a dual-reg view. by getting this value from the actual floating point register file, the model can figure out what it needs to store
2009-05-12inorder-mem: skeleton support for prefetch/writehintsKorey Sewell
2009-05-12inorder-unified-tlb: use unified TLB instead of old TLB modelKorey Sewell
2009-05-12inorder/alpha-isa: create eaComp object visible to StaticInst through ISAKorey Sewell
Remove subinstructions eaComp/memAcc since unused in CPU Models. Instead, create eaComp that is visible from StaticInst object. Gives InOrder model capability of generating address without actually initiating access * * *
2009-05-12inorder-bpred: edits to handle non-delay-slot ISAsKorey Sewell
Changes so that InOrder can work for a non-delay-slot ISA like Alpha. Typically, changes have to do with handling misspeculated branches at different points in pipeline
2009-05-12inorder-alpha-port: initial inorder support of ALPHAKorey Sewell
Edit AlphaISA to support the inorder model. Mostly alternate constructor functions and also a few skeleton multithreaded support functions * * * Remove namespace from header file. Causes compiler issues that are hard to find * * * Separate the TLB from the CPU and allow it to live in the TLBUnit resource. Give CPU accessor functions for access and also bind at construction time * * * Expose memory access size and flags through instruction object (temporarily memAccSize and memFlags to get TLB stuff working.)
2009-05-12isa-parser: made a few changes, but not author-worthyKorey Sewell
2009-04-26X86: Precompute the default and alternate address and operand size and the ↵Gabe Black
stack size.
2009-04-26X86: Split out the internal memory space from the regular translate() and ↵Gabe Black
precompute mode.
2009-04-26X86: Centralize updates to the handy M5 reg.Gabe Black
2009-04-26X86: Tell the function that sends int messages who to send to instead of ↵Gabe Black
figuring it out itself.
2009-04-26X86: Make the local APICs register themselves with the IO APIC.Gabe Black
This is a hack so that the IO APIC can figure out information about the local APICs. The local APICs still have no way to find out about each other. Ideally, when the local APICs update state that's relevant to somebody else, they'd send an update to everyone. Without being able to do a broadcast, that would still require knowing who else there is to notify. Other broadcasts are implemented using assumptions that may not always be true.
2009-04-26X86: Record the initial APIC ID which identifies an APIC in M5.Gabe Black
The ID as exposed to software can be changed. Tracking those changes in M5 would be cumbersome, especially since there's no guarantee the IDs will remain unique.
2009-04-24SPARC: Tighten up the clone system call and SPARCs copyRegs.Gabe Black