gem5.git
15 years agoISAs: Get rid of the IControl operand type.
Gabe Black [Fri, 10 Jul 2009 08:21:04 +0000 (01:21 -0700)]
ISAs: Get rid of the IControl operand type.
A separate operand type is not necessary to use two bitfields to generate the
index.

15 years agoSPARC: Set up a lookup table for integer register flattening.
Gabe Black [Fri, 10 Jul 2009 08:01:47 +0000 (01:01 -0700)]
SPARC: Set up a lookup table for integer register flattening.
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

15 years agoX86: Fold the MiscRegFile all the way into the ISA object.
Gabe Black [Fri, 10 Jul 2009 03:29:02 +0000 (20:29 -0700)]
X86: Fold the MiscRegFile all the way into the ISA object.

15 years agoSPARC: Fold the MiscRegFile all the way into the ISA object.
Gabe Black [Fri, 10 Jul 2009 03:28:50 +0000 (20:28 -0700)]
SPARC: Fold the MiscRegFile all the way into the ISA object.

15 years agoMIPS: Fold the MiscRegFile all the way into the ISA object.
Gabe Black [Fri, 10 Jul 2009 03:28:39 +0000 (20:28 -0700)]
MIPS: Fold the MiscRegFile all the way into the ISA object.

15 years agoARM: Fold the MiscRegFile all the way into the ISA object.
Gabe Black [Fri, 10 Jul 2009 03:28:27 +0000 (20:28 -0700)]
ARM: Fold the MiscRegFile all the way into the ISA object.

15 years agoAlpha: Missed a file in an earlier changeset.
Gabe Black [Thu, 9 Jul 2009 07:20:41 +0000 (00:20 -0700)]
Alpha: Missed a file in an earlier changeset.

15 years agoGet rid of the unused get(Data|Inst)Asid and (inst|data)Asid functions.
Gabe Black [Thu, 9 Jul 2009 06:02:22 +0000 (23:02 -0700)]
Get rid of the unused get(Data|Inst)Asid and (inst|data)Asid functions.

15 years agoAlpha: Pull the MiscRegFile fully into the ISA object.
Gabe Black [Thu, 9 Jul 2009 06:02:22 +0000 (23:02 -0700)]
Alpha: Pull the MiscRegFile fully into the ISA object.

15 years agoRegisters: Add a registers.hh file as an ISA switched header.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Registers: Add a registers.hh file as an ISA switched header.
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

15 years agoRegisters: Collapse ARM and MIPS regfile directories.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Registers: Collapse ARM and MIPS regfile directories.

--HG--
rename : src/arch/arm/regfile/misc_regfile.hh => src/arch/arm/misc_regfile.hh
rename : src/arch/arm/regfile/regfile.cc => src/arch/arm/regfile.cc
rename : src/arch/mips/regfile/misc_regfile.cc => src/arch/mips/misc_regfile.cc
rename : src/arch/mips/regfile/misc_regfile.hh => src/arch/mips/misc_regfile.hh

15 years agoAlpha: Move reg_redir into its own files, and move some constants into regfile.hh.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Alpha: Move reg_redir into its own files, and move some constants into regfile.hh.

15 years agoRegisters: Eliminate the ISA defined RegFile class.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Registers: Eliminate the ISA defined RegFile class.

15 years agoAlpha: Get rid of function prototypes with no implementations.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Alpha: Get rid of function prototypes with no implementations.

15 years agoRegisters: Move the PCs out of the ISAs and into the CPUs.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Registers: Move the PCs out of the ISAs and into the CPUs.

15 years agoARM, Simple CPU: Fix an index and add assert checks.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
ARM, Simple CPU: Fix an index and add assert checks.

15 years agoMIPS: Get rid of an orphaned MIPS .cc file.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
MIPS: Get rid of an orphaned MIPS .cc file.

15 years agoAlpha: Phase out Alpha's intregfile.hh and intregfile.cc.
Gabe Black [Thu, 9 Jul 2009 06:02:21 +0000 (23:02 -0700)]
Alpha: Phase out Alpha's intregfile.hh and intregfile.cc.

15 years agoSPARC: Phase out SPARC's intregfile.hh.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
SPARC: Phase out SPARC's intregfile.hh.

15 years agoX86: Phase out x86's intregfile.hh.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
X86: Phase out x86's intregfile.hh.

15 years agoMIPS: Phase out MIPS's int_regfile.hh.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
MIPS: Phase out MIPS's int_regfile.hh.

15 years agoARM: Flush out the ARM's int_regfile.hh.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
ARM: Flush out the ARM's int_regfile.hh.

15 years agoRegisters: Eliminate the ISA defined integer register file.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
Registers: Eliminate the ISA defined integer register file.

15 years agoRegisters: Eliminate the ISA defined floating point register file.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
Registers: Eliminate the ISA defined floating point register file.

15 years agoRegisters: Get rid of the float register width parameter.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
Registers: Get rid of the float register width parameter.

15 years agoRegisters: Add an ISA object which replaces the MiscRegFile.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
Registers: Add an ISA object which replaces the MiscRegFile.
This object encapsulates (or will eventually) the identity and characteristics
of the ISA in the CPU.

15 years agoARM: Use custom read/write code to alias R15 with the PC.
Gabe Black [Thu, 9 Jul 2009 06:02:20 +0000 (23:02 -0700)]
ARM: Use custom read/write code to alias R15 with the PC.

15 years agoISA parser: Allow alternative read/write code for operands.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ISA parser: Allow alternative read/write code for operands.

15 years agoARM: Move the remaining microops out of the decoder and into the ISA desc.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Move the remaining microops out of the decoder and into the ISA desc.

15 years agoARM: Move the memory microops out of the decoder and into the ISA desc.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Move the memory microops out of the decoder and into the ISA desc.

15 years agoARM: Move the integer microops out of the decoder and into the ISA desc.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Move the integer microops out of the decoder and into the ISA desc.

15 years agoARM: Improve memory instruction disassembly.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Improve memory instruction disassembly.

15 years agoARM: Tune up predicated instruction decoding.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Tune up predicated instruction decoding.

15 years agoARM: Get rid of the MemAcc and EAComp static insts.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Get rid of the MemAcc and EAComp static insts.

15 years agoARM: Get rid of end_addr in the ArmMacroStore constructor.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Get rid of end_addr in the ArmMacroStore constructor.

15 years agoARM: Add an AddrMode2 format for memory instructions that use address mode 2.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Add an AddrMode2 format for memory instructions that use address mode 2.

15 years agoARM: Don't always update CPSR.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Don't always update CPSR.

15 years agoARM: Add an AddrMode3 format for memory instructions that use address mode 3.
Gabe Black [Thu, 9 Jul 2009 06:02:19 +0000 (23:02 -0700)]
ARM: Add an AddrMode3 format for memory instructions that use address mode 3.

15 years agoARM: Add load/store double instructions.
Gabe Black [Thu, 9 Jul 2009 06:02:10 +0000 (23:02 -0700)]
ARM: Add load/store double instructions.

15 years agoARM: Add operands for the load/store double instructions.
Gabe Black [Thu, 9 Jul 2009 06:02:01 +0000 (23:02 -0700)]
ARM: Add operands for the load/store double instructions.

15 years agoX86: Fix a bug in IRET_PROT's microcode. The immediate form of sra was intended.
Gabe Black [Thu, 9 Jul 2009 06:01:54 +0000 (23:01 -0700)]
X86: Fix a bug in IRET_PROT's microcode. The immediate form of sra was intended.

15 years agoslicc: fixed MI_example bug. The directory wasn't deallocating the TBE, leading...
Derek Hower [Wed, 8 Jul 2009 13:40:32 +0000 (08:40 -0500)]
slicc: fixed MI_example bug.  The directory wasn't deallocating the TBE, leading to a leak. Also increased the default max TBE size to 256 to allow memtest to pass the regression.

15 years agoruby: set the default values of the debug object so that nothing is printed
Derek Hower [Wed, 8 Jul 2009 05:34:40 +0000 (00:34 -0500)]
ruby: set the default values of the debug object so that nothing is printed

15 years agoslicc: Fixed MI_example bug. The directory was not writing data to DRAM after a...
Derek Hower [Wed, 8 Jul 2009 05:31:33 +0000 (00:31 -0500)]
slicc: Fixed MI_example bug.  The directory was not writing data to DRAM after a PUTX.

15 years agoremoved stray debug print
Derek Hower [Wed, 8 Jul 2009 04:01:35 +0000 (23:01 -0500)]
removed stray debug print

15 years agoAdd ability to skip tests by adding 'skip' file to test dir,
Steve Reinhardt [Tue, 7 Jul 2009 05:45:58 +0000 (22:45 -0700)]
Add ability to skip tests by adding 'skip' file to test dir,
and skip simple-timing-mp-ruby test for now (until we fix ruby atomics).

15 years agoautomerge
Nathan Binkert [Mon, 6 Jul 2009 22:54:18 +0000 (15:54 -0700)]
automerge

15 years agotests: stats outputs now include CDFs, update tests that use those so they're easier...
Nathan Binkert [Mon, 6 Jul 2009 22:49:48 +0000 (15:49 -0700)]
tests: stats outputs now include CDFs, update tests that use those so they're easier to diff

15 years agotests: update regression tests for changes in stats output and changes in ruby.
Nathan Binkert [Mon, 6 Jul 2009 22:49:48 +0000 (15:49 -0700)]
tests: update regression tests for changes in stats output and changes in ruby.

15 years agoruby: Fix RubyMemory to work with the newer ruby.
Nathan Binkert [Mon, 6 Jul 2009 22:49:47 +0000 (15:49 -0700)]
ruby: Fix RubyMemory to work with the newer ruby.

15 years agoruby: apply some fixes that were overwritten by the recent ruby import.
Nathan Binkert [Mon, 6 Jul 2009 22:49:47 +0000 (15:49 -0700)]
ruby: apply some fixes that were overwritten by the recent ruby import.

15 years agoslicc: update parser.py for changes in slicc language.
Nathan Binkert [Mon, 6 Jul 2009 22:49:47 +0000 (15:49 -0700)]
slicc: update parser.py for changes in slicc language.

15 years agoscons: update SCons files for changes in ruby.
Nathan Binkert [Mon, 6 Jul 2009 22:49:47 +0000 (15:49 -0700)]
scons: update SCons files for changes in ruby.

15 years agoruby: Import the latest ruby changes from gems.
Nathan Binkert [Mon, 6 Jul 2009 22:49:47 +0000 (15:49 -0700)]
ruby: Import the latest ruby changes from gems.
This was done with an automated process, so there could be things that were
done in this tree in the past that didn't make it.  One known regression
is that atomic memory operations do not seem to work properly anymore.

15 years agoruby: replace strings that were missed in original ruby import.
Nathan Binkert [Mon, 6 Jul 2009 22:49:47 +0000 (15:49 -0700)]
ruby: replace strings that were missed in original ruby import.

15 years agoSPARC: Fix the parenthesis in inUserMode.
Gabe Black [Sun, 5 Jul 2009 23:07:09 +0000 (16:07 -0700)]
SPARC: Fix the parenthesis in inUserMode.

15 years agoinorder: Fix up some reference stats.
Gabe Black [Sun, 5 Jul 2009 04:46:23 +0000 (21:46 -0700)]
inorder: Fix up some reference stats.

15 years agoARM: Fix how address mode bits are handled.
Jack Whitham [Fri, 3 Jul 2009 06:23:06 +0000 (23:23 -0700)]
ARM: Fix how address mode bits are handled.

15 years agoARM: Fix the code snippet for mla.
Jack Whitham [Fri, 3 Jul 2009 06:22:58 +0000 (23:22 -0700)]
ARM: Fix the code snippet for mla.

15 years agotypo: correct spelling
Nathan Binkert [Thu, 2 Jul 2009 23:48:22 +0000 (16:48 -0700)]
typo: correct spelling

15 years agoattrdict: correct delattr
Nathan Binkert [Thu, 2 Jul 2009 23:48:22 +0000 (16:48 -0700)]
attrdict: correct delattr

15 years agostats: fix usage of jobfile
Nathan Binkert [Thu, 2 Jul 2009 23:48:21 +0000 (16:48 -0700)]
stats: fix usage of jobfile

15 years agoARM: Make DataOps select from a set of ways to set the c and v flags.
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.

15 years agoARM: Get rid of some bitfields that aren't used. A few may need to be readded.
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.

15 years agoARM: Add a findLsbSet function and use it to implement clz.
Gabe Black [Thu, 2 Jul 2009 05:16:36 +0000 (22:16 -0700)]
ARM: Add a findLsbSet function and use it to implement clz.

15 years agoARM: Add defaults for DataOp flag code.
Gabe Black [Thu, 2 Jul 2009 05:16:19 +0000 (22:16 -0700)]
ARM: Add defaults for DataOp flag code.

15 years agoARM: Get rid of the val2 variable.
Gabe Black [Thu, 2 Jul 2009 05:16:05 +0000 (22:16 -0700)]
ARM: Get rid of the val2 variable.

15 years agoARM: Centralize the declaration of resTemp.
Gabe Black [Thu, 2 Jul 2009 05:15:39 +0000 (22:15 -0700)]
ARM: Centralize the declaration of resTemp.

15 years agoARM: Add a DataImmOp format similar to DataOp.
Gabe Black [Thu, 2 Jul 2009 05:12:10 +0000 (22:12 -0700)]
ARM: Add a DataImmOp format similar to DataOp.

15 years agoARM: Decode some media instructions. These are untested.
Gabe Black [Thu, 2 Jul 2009 05:11:54 +0000 (22:11 -0700)]
ARM: Decode some media instructions. These are untested.

15 years agoARM: Use the new DataOp format to simplify the decoder.
Gabe Black [Thu, 2 Jul 2009 05:11:39 +0000 (22:11 -0700)]
ARM: Use the new DataOp format to simplify the decoder.

15 years agoARM: Add in some new artificial fields that make decoding a little easier.
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.

15 years agoARM: Recognize the IntRegs trace flag.
Gabe Black [Thu, 2 Jul 2009 05:11:12 +0000 (22:11 -0700)]
ARM: Recognize the IntRegs trace flag.

15 years agoARM: Add a DataOp format so data op definitions can be aggregated.
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.

15 years agoARM: Show more information when disassembling data processing intstructions.
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.

15 years agoARM: Show branch targets relative to the nearest symbol.
Gabe Black [Sat, 27 Jun 2009 07:29:30 +0000 (00:29 -0700)]
ARM: Show branch targets relative to the nearest symbol.

15 years agoARM: Write a function for printing mnemonics and predicates.
Gabe Black [Sat, 27 Jun 2009 07:29:12 +0000 (00:29 -0700)]
ARM: Write a function for printing mnemonics and predicates.

15 years agoARM: Fill out the printReg function.
Gabe Black [Sat, 27 Jun 2009 05:01:34 +0000 (22:01 -0700)]
ARM: Fill out the printReg function.

15 years agoARM: Fix signed multiply long and add some unimplemented loads.
Jack Whitman [Thu, 25 Jun 2009 04:22:52 +0000 (21:22 -0700)]
ARM: Fix signed multiply long and add some unimplemented loads.

15 years agoARM: Link register is trashed by non-executed branch and link operations.
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.

15 years agoARM: Added unimplemented load/store multiple instructions.
Jack Whitman [Wed, 24 Jun 2009 06:23:25 +0000 (23:23 -0700)]
ARM: Added unimplemented load/store multiple instructions.

15 years agomakerelease: Don't hide x86 any more.
Gabe Black [Tue, 23 Jun 2009 07:14:24 +0000 (00:14 -0700)]
makerelease: Don't hide x86 any more.

15 years agoRegressions: Build ARM_SE regressions by default.
Gabe Black [Tue, 23 Jun 2009 07:07:39 +0000 (00:07 -0700)]
Regressions: Build ARM_SE regressions by default.

15 years agoARM: Simplify some utility functions.
Gabe Black [Mon, 22 Jun 2009 05:51:13 +0000 (22:51 -0700)]
ARM: Simplify some utility functions.

15 years agoARM: Move util functions out of the isa desc.
Gabe Black [Mon, 22 Jun 2009 05:50:33 +0000 (22:50 -0700)]
ARM: Move util functions out of the isa desc.

15 years agoARM: Simplify the ISA desc by pulling some classes out of it.
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.

15 years agoARM: Remove the currently unecessary FPAOp class.
Gabe Black [Mon, 22 Jun 2009 00:14:51 +0000 (17:14 -0700)]
ARM: Remove the currently unecessary FPAOp class.

15 years agoARM: Make inst bitfields accessible outside of the isa desc.
Gabe Black [Sun, 21 Jun 2009 23:41:21 +0000 (16:41 -0700)]
ARM: Make inst bitfields accessible outside of the isa desc.

15 years agoARM: Don't downconvert ExtMachInsts to MachInsts.
Gabe Black [Sun, 21 Jun 2009 23:41:07 +0000 (16:41 -0700)]
ARM: Don't downconvert ExtMachInsts to MachInsts.

15 years agoBitUnion: Add more constiness.
Gabe Black [Sun, 21 Jun 2009 23:40:33 +0000 (16:40 -0700)]
BitUnion: Add more constiness.

15 years agoARM: Get rid of a few more unused operands.
Gabe Black [Sun, 21 Jun 2009 16:48:51 +0000 (09:48 -0700)]
ARM: Get rid of a few more unused operands.

15 years agoARM: Get rid of unnecessary Re operand.
Gabe Black [Sun, 21 Jun 2009 16:48:44 +0000 (09:48 -0700)]
ARM: Get rid of unnecessary Re operand.

15 years agoARM: Clear out some inherited hangers on in util.isa and utility.hh.
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.

15 years agoARM: Get rid of unnecessary fp_enable_checks.
Gabe Black [Sun, 21 Jun 2009 16:41:04 +0000 (09:41 -0700)]
ARM: Get rid of unnecessary fp_enable_checks.

15 years agoARM: Adjust simplify rotate_imm slightly.
Gabe Black [Sun, 21 Jun 2009 16:38:54 +0000 (09:38 -0700)]
ARM: Adjust simplify rotate_imm slightly.

15 years agoARM: Make the isa parser aware that CPSR is being used.
Gabe Black [Sun, 21 Jun 2009 16:37:41 +0000 (09:37 -0700)]
ARM: Make the isa parser aware that CPSR is being used.

15 years agoARM: Pull some static code out of the isa desc and create miscregs.hh.
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.

15 years agoARM: Get rid of unused postacc_code.
Gabe Black [Sun, 21 Jun 2009 16:16:55 +0000 (09:16 -0700)]
ARM: Get rid of unused postacc_code.

15 years agoscons: Make shared library builds work again
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

15 years agocopyright: I missed some copyrights during ruby integration
Nathan Binkert [Wed, 10 Jun 2009 07:41:56 +0000 (00:41 -0700)]
copyright: I missed some copyrights during ruby integration