Nathan Binkert [Thu, 2 Jul 2009 23:48:22 +0000 (16:48 -0700)]
attrdict: correct delattr
Nathan Binkert [Thu, 2 Jul 2009 23:48:21 +0000 (16:48 -0700)]
stats: fix usage of jobfile
Gabe Black [Thu, 2 Jul 2009 05:17:06 +0000 (22:17 -0700)]
ARM: Make DataOps select from a set of ways to set the c and v flags.
Gabe Black [Thu, 2 Jul 2009 05:16:51 +0000 (22:16 -0700)]
ARM: Get rid of some bitfields that aren't used. A few may need to be readded.
Gabe Black [Thu, 2 Jul 2009 05:16:36 +0000 (22:16 -0700)]
ARM: Add a findLsbSet function and use it to implement clz.
Gabe Black [Thu, 2 Jul 2009 05:16:19 +0000 (22:16 -0700)]
ARM: Add defaults for DataOp flag code.
Gabe Black [Thu, 2 Jul 2009 05:16:05 +0000 (22:16 -0700)]
ARM: Get rid of the val2 variable.
Gabe Black [Thu, 2 Jul 2009 05:15:39 +0000 (22:15 -0700)]
ARM: Centralize the declaration of resTemp.
Gabe Black [Thu, 2 Jul 2009 05:12:10 +0000 (22:12 -0700)]
ARM: Add a DataImmOp format similar to DataOp.
Gabe Black [Thu, 2 Jul 2009 05:11:54 +0000 (22:11 -0700)]
ARM: Decode some media instructions. These are untested.
Gabe Black [Thu, 2 Jul 2009 05:11:39 +0000 (22:11 -0700)]
ARM: Use the new DataOp format to simplify the decoder.
Gabe Black [Thu, 2 Jul 2009 05:11:27 +0000 (22:11 -0700)]
ARM: Add in some new artificial fields that make decoding a little easier.
Gabe Black [Thu, 2 Jul 2009 05:11:12 +0000 (22:11 -0700)]
ARM: Recognize the IntRegs trace flag.
Gabe Black [Thu, 2 Jul 2009 05:10:58 +0000 (22:10 -0700)]
ARM: Add a DataOp format so data op definitions can be aggregated.
Gabe Black [Sat, 27 Jun 2009 07:30:23 +0000 (00:30 -0700)]
ARM: Show more information when disassembling data processing intstructions.
This will need more work, but it should be a lot closer.
Gabe Black [Sat, 27 Jun 2009 07:29:30 +0000 (00:29 -0700)]
ARM: Show branch targets relative to the nearest symbol.
Gabe Black [Sat, 27 Jun 2009 07:29:12 +0000 (00:29 -0700)]
ARM: Write a function for printing mnemonics and predicates.
Gabe Black [Sat, 27 Jun 2009 05:01:34 +0000 (22:01 -0700)]
ARM: Fill out the printReg function.
Jack Whitman [Thu, 25 Jun 2009 04:22:52 +0000 (21:22 -0700)]
ARM: Fix signed multiply long and add some unimplemented loads.
Jack Whitman [Thu, 25 Jun 2009 04:22:46 +0000 (21:22 -0700)]
ARM: Link register is trashed by non-executed branch and link operations.
Jack Whitman [Wed, 24 Jun 2009 06:23:25 +0000 (23:23 -0700)]
ARM: Added unimplemented load/store multiple instructions.
Gabe Black [Tue, 23 Jun 2009 07:14:24 +0000 (00:14 -0700)]
makerelease: Don't hide x86 any more.
Gabe Black [Tue, 23 Jun 2009 07:07:39 +0000 (00:07 -0700)]
Regressions: Build ARM_SE regressions by default.
Gabe Black [Mon, 22 Jun 2009 05:51:13 +0000 (22:51 -0700)]
ARM: Simplify some utility functions.
Gabe Black [Mon, 22 Jun 2009 05:50:33 +0000 (22:50 -0700)]
ARM: Move util functions out of the isa desc.
Gabe Black [Mon, 22 Jun 2009 00:21:25 +0000 (17:21 -0700)]
ARM: Simplify the ISA desc by pulling some classes out of it.
Gabe Black [Mon, 22 Jun 2009 00:14:51 +0000 (17:14 -0700)]
ARM: Remove the currently unecessary FPAOp class.
Gabe Black [Sun, 21 Jun 2009 23:41:21 +0000 (16:41 -0700)]
ARM: Make inst bitfields accessible outside of the isa desc.
Gabe Black [Sun, 21 Jun 2009 23:41:07 +0000 (16:41 -0700)]
ARM: Don't downconvert ExtMachInsts to MachInsts.
Gabe Black [Sun, 21 Jun 2009 23:40:33 +0000 (16:40 -0700)]
BitUnion: Add more constiness.
Gabe Black [Sun, 21 Jun 2009 16:48:51 +0000 (09:48 -0700)]
ARM: Get rid of a few more unused operands.
Gabe Black [Sun, 21 Jun 2009 16:48:44 +0000 (09:48 -0700)]
ARM: Get rid of unnecessary Re operand.
Gabe Black [Sun, 21 Jun 2009 16:43:55 +0000 (09:43 -0700)]
ARM: Clear out some inherited hangers on in util.isa and utility.hh.
Gabe Black [Sun, 21 Jun 2009 16:41:04 +0000 (09:41 -0700)]
ARM: Get rid of unnecessary fp_enable_checks.
Gabe Black [Sun, 21 Jun 2009 16:38:54 +0000 (09:38 -0700)]
ARM: Adjust simplify rotate_imm slightly.
Gabe Black [Sun, 21 Jun 2009 16:37:41 +0000 (09:37 -0700)]
ARM: Make the isa parser aware that CPSR is being used.
Gabe Black [Sun, 21 Jun 2009 16:21:07 +0000 (09:21 -0700)]
ARM: Pull some static code out of the isa desc and create miscregs.hh.
Gabe Black [Sun, 21 Jun 2009 16:16:55 +0000 (09:16 -0700)]
ARM: Get rid of unused postacc_code.
Nathan Binkert [Sat, 13 Jun 2009 04:19:16 +0000 (21:19 -0700)]
scons: Make shared library builds work again
Compile gzstream as position independent code
use the PIC version of date for shared libs...oops
Nathan Binkert [Wed, 10 Jun 2009 07:41:56 +0000 (00:41 -0700)]
copyright: I missed some copyrights during ruby integration
Gabe Black [Wed, 10 Jun 2009 06:55:53 +0000 (23:55 -0700)]
ARM: Add a hello world regression.
Gabe Black [Wed, 10 Jun 2009 06:42:43 +0000 (23:42 -0700)]
ARM: Add a hello world binary.
Gabe Black [Wed, 10 Jun 2009 06:41:45 +0000 (23:41 -0700)]
ARM: Hook in the mmap2 system call. Make ArmLinuxProcess handle 5,6 syscall params.
Gabe Black [Wed, 10 Jun 2009 06:41:35 +0000 (23:41 -0700)]
ARM: Add a memory_barrier function to the "comm page".
This function doesn't actually provide a memory barrier (I don't think they're
implemented) and instead just returns.
Gabe Black [Wed, 10 Jun 2009 06:41:03 +0000 (23:41 -0700)]
ARM: Add a cmpxchg implementation to the "comm page".
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.
Gabe Black [Wed, 10 Jun 2009 06:39:07 +0000 (23:39 -0700)]
ARM: Implement TLS. This is not tested.
Gabe Black [Wed, 10 Jun 2009 06:38:50 +0000 (23:38 -0700)]
ARM: Make ArmLinuxProcess understand "ARM private" system calls.
Gabe Black [Wed, 10 Jun 2009 06:37:41 +0000 (23:37 -0700)]
ARM: Update the kernel version M5 reports to 2.6.16.19
Nathan Binkert [Sat, 6 Jun 2009 00:01:19 +0000 (17:01 -0700)]
cleanup: Make use of types properly and make the loop a little more clear.
Nathan Binkert [Fri, 5 Jun 2009 22:20:09 +0000 (15:20 -0700)]
scons: Make it so that the processing of trace flags does not depend on order
Nathan Binkert [Fri, 5 Jun 2009 18:40:02 +0000 (11:40 -0700)]
types: need typename keyword to get the type.
Nathan Binkert [Fri, 5 Jun 2009 06:21:12 +0000 (23:21 -0700)]
types: clean up types, especially signed vs unsigned
Nathan Binkert [Fri, 5 Jun 2009 04:50:20 +0000 (21:50 -0700)]
move: put predictor includes and cc files into the same place
--HG--
rename : src/cpu/2bit_local_pred.cc => src/cpu/pred/2bit_local.cc
rename : src/cpu/o3/2bit_local_pred.hh => src/cpu/pred/2bit_local.hh
rename : src/cpu/btb.cc => src/cpu/pred/btb.cc
rename : src/cpu/o3/btb.hh => src/cpu/pred/btb.hh
rename : src/cpu/ras.cc => src/cpu/pred/ras.cc
rename : src/cpu/o3/ras.hh => src/cpu/pred/ras.hh
rename : src/cpu/tournament_pred.cc => src/cpu/pred/tournament.cc
rename : src/cpu/o3/tournament_pred.hh => src/cpu/pred/tournament.hh
Nathan Binkert [Fri, 5 Jun 2009 04:41:46 +0000 (21:41 -0700)]
style: cleanup style
Nathan Binkert [Mon, 1 Jun 2009 23:38:57 +0000 (16:38 -0700)]
swig: %include Event before PythonEvent so python gets the subclass correct.
Before this change, some versions of swig would cause PythonEvent to be
derived from object instead of Event
Nathan Binkert [Fri, 29 May 2009 22:30:16 +0000 (15:30 -0700)]
request: add accessor and constructor for setting time other than curTick
Gabe Black [Fri, 29 May 2009 06:27:56 +0000 (23:27 -0700)]
X86: Keep track of more descriptor state to accomodate KVM.
Nathan Binkert [Tue, 26 May 2009 16:23:13 +0000 (09:23 -0700)]
types: add a type for thread IDs and try to use it everywhere
Gabe Black [Tue, 26 May 2009 09:23:08 +0000 (02:23 -0700)]
X86: Really set up the GDT and various hidden/visible segment registers.
Steve Reinhardt [Sat, 23 May 2009 04:24:09 +0000 (21:24 -0700)]
util: mkblankimage.sh should be executable
Korey Sewell [Thu, 21 May 2009 15:04:24 +0000 (11:04 -0400)]
build_opts: update ALPHA_FS cpu models
Steve Reinhardt [Thu, 21 May 2009 04:52:32 +0000 (21:52 -0700)]
igbe: Fix descriptor cache bug.
Nathan Binkert [Sun, 17 May 2009 21:34:52 +0000 (14:34 -0700)]
includes: sort includes again
Nathan Binkert [Sun, 17 May 2009 21:34:51 +0000 (14:34 -0700)]
includes: use base/types.hh not inttypes.h or stdint.h
Nathan Binkert [Sun, 17 May 2009 21:34:50 +0000 (14:34 -0700)]
types: Move stuff for global types into src/base/types.hh
--HG--
rename : src/sim/host.hh => src/base/types.hh
Nathan Binkert [Wed, 13 May 2009 14:18:03 +0000 (07:18 -0700)]
stats: tidy up the Distribution type a little bit
Nathan Binkert [Wed, 13 May 2009 14:18:02 +0000 (07:18 -0700)]
stats: fancy is a bad name
Nathan Binkert [Wed, 13 May 2009 14:18:01 +0000 (07:18 -0700)]
stats: clean up the code for printing stats
Korey Sewell [Wed, 13 May 2009 06:02:05 +0000 (02:02 -0400)]
mips-merge: merge hello world regress for inorder cpu
w/latest changes
Korey Sewell [Wed, 13 May 2009 05:55:04 +0000 (01:55 -0400)]
inorder-regress: add hello MIPS_SE
Nathan Binkert [Wed, 13 May 2009 05:33:05 +0000 (22:33 -0700)]
ruby: deal with printf warnings and convert some to cprintf
Nathan Binkert [Wed, 13 May 2009 05:33:05 +0000 (22:33 -0700)]
ruby: remove random uint typedef and use unsigned
Nathan Binkert [Wed, 13 May 2009 05:33:05 +0000 (22:33 -0700)]
ruby: Make ruby's Map use hashmap.hh to simplify things.
Nathan Binkert [Wed, 13 May 2009 05:33:05 +0000 (22:33 -0700)]
gcc: work around a bogus gcc error
Nathan Binkert [Wed, 13 May 2009 05:33:05 +0000 (22:33 -0700)]
slicc: work around improper initialization of a global in slicc.
Nathan Binkert [Wed, 13 May 2009 05:33:04 +0000 (22:33 -0700)]
slicc: clean up the slicc environment so things build properly on mac.
Korey Sewell [Wed, 13 May 2009 05:26:47 +0000 (01:26 -0400)]
mips_se: add cpu_models to build options
Korey Sewell [Wed, 13 May 2009 05:26:46 +0000 (01:26 -0400)]
inorder-mips: Remove eaComp & memAcc; use 'visible' eaComp
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
Korey Sewell [Wed, 13 May 2009 05:26:38 +0000 (01:26 -0400)]
arch-mips: add regWidth constant to float regfile
Korey Sewell [Wed, 13 May 2009 00:55:21 +0000 (20:55 -0400)]
cpus: add InOrderCPU to default build
regressions need this so they build the model
Korey Sewell [Wed, 13 May 2009 00:30:40 +0000 (20:30 -0400)]
inorder-regress: missing regress config file
regressions need to access this file to setup the InOrderCPU object
Korey Sewell [Wed, 13 May 2009 00:18:34 +0000 (20:18 -0400)]
alpha-isa: add mt.hh so it can compile with inorder
Korey Sewell [Tue, 12 May 2009 19:01:17 +0000 (15:01 -0400)]
inorder-regress: add vortex ALPHA_SE
Korey Sewell [Tue, 12 May 2009 19:01:16 +0000 (15:01 -0400)]
inorder-regress: add twolf ALPHA-SE
Korey Sewell [Tue, 12 May 2009 19:01:16 +0000 (15:01 -0400)]
inorder-regress: add hello world
Korey Sewell [Tue, 12 May 2009 19:01:16 +0000 (15:01 -0400)]
inorder-resources: delete events
make sure unrecognized events in the resource pool are deleted and also delete resource events in destructor
Korey Sewell [Tue, 12 May 2009 19:01:16 +0000 (15:01 -0400)]
inorder-tlb-cunit: merge the TLB as implicit to any memory access
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.
* * *
Korey Sewell [Tue, 12 May 2009 19:01:16 +0000 (15:01 -0400)]
inorder-tlb: squash insts in TLB correctly
TLB had a bug where if it was stalled and waiting , it would not squash all instructions older than squashed instruction correctly
* * *
Korey Sewell [Tue, 12 May 2009 19:01:16 +0000 (15:01 -0400)]
inorder-faults: ignore unalign translation faults for prefetches
Korey Sewell [Tue, 12 May 2009 19:01:15 +0000 (15:01 -0400)]
inorder-stc: update interface to handle store conditionals
Korey Sewell [Tue, 12 May 2009 19:01:15 +0000 (15:01 -0400)]
inorder-float: Fix storage of FP results
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
Korey Sewell [Tue, 12 May 2009 19:01:15 +0000 (15:01 -0400)]
inorder-fetch: update model to use predecoder
Korey Sewell [Tue, 12 May 2009 19:01:15 +0000 (15:01 -0400)]
inorder-mem: clean up allocation/deletion of requests/packets
* * *
Korey Sewell [Tue, 12 May 2009 19:01:15 +0000 (15:01 -0400)]
inorder-mem: skeleton support for prefetch/writehints
Korey Sewell [Tue, 12 May 2009 19:01:14 +0000 (15:01 -0400)]
inorder-o3: allow both to compile together
allow InOrder and O3CPU to be compiled at the same time: need to make branch prediction filed shared by both models
Korey Sewell [Tue, 12 May 2009 19:01:14 +0000 (15:01 -0400)]
inorder-unified-tlb: use unified TLB instead of old TLB model
Korey Sewell [Tue, 12 May 2009 19:01:14 +0000 (15:01 -0400)]
inorder-miscregs: Fix indexing for misc. reg operands and update result-types for better tracing of these types of values
Korey Sewell [Tue, 12 May 2009 19:01:14 +0000 (15:01 -0400)]
inorder/alpha-isa: create eaComp object visible to StaticInst through ISA
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
* * *
Korey Sewell [Tue, 12 May 2009 19:01:14 +0000 (15:01 -0400)]
inorder-bpred: edits to handle non-delay-slot ISAs
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
Korey Sewell [Tue, 12 May 2009 19:01:13 +0000 (15:01 -0400)]
inorder-alpha-port: initial inorder support of ALPHA
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.)