gem5.git
14 years agoslicc: Pure python implementation of slicc.
Nathan Binkert [Wed, 23 Sep 2009 01:12:39 +0000 (18:12 -0700)]
slicc: Pure python implementation of slicc.
This is simply a translation of the C++ slicc into python with very minimal
reorganization of the code.  The output can be verified as nearly identical
by doing a "diff -wBur".

Slicc can easily be run manually by using util/slicc

14 years agoparams: small cleanup to param description internals
Nathan Binkert [Tue, 22 Sep 2009 22:24:16 +0000 (15:24 -0700)]
params: small cleanup to param description internals

14 years agoscons: add slicc and ply to sys.path and PYTHONPATH so everyone has access
Nathan Binkert [Tue, 22 Sep 2009 22:24:16 +0000 (15:24 -0700)]
scons: add slicc and ply to sys.path and PYTHONPATH so everyone has access

14 years agopython: Move more code into m5.util allow SCons to use that code.
Nathan Binkert [Tue, 22 Sep 2009 22:24:16 +0000 (15:24 -0700)]
python: Move more code into m5.util allow SCons to use that code.
Get rid of misc.py and just stick misc things in __init__.py
Move utility functions out of SCons files and into m5.util
Move utility type stuff from m5/__init__.py to m5/util/__init__.py
Remove buildEnv from m5 and allow access only from m5.defines
Rename AddToPath to addToPath while we're moving it to m5.util
Rename read_command to readCommand while we're moving it
Rename compare_versions to compareVersions while we're moving it.

--HG--
rename : src/python/m5/convert.py => src/python/m5/util/convert.py
rename : src/python/m5/smartdict.py => src/python/m5/util/smartdict.py

14 years agomultiattrdict: make multilevel nesting work properly
Nathan Binkert [Tue, 22 Sep 2009 22:24:16 +0000 (15:24 -0700)]
multiattrdict: make multilevel nesting work properly

14 years agoattrdict: add pickle support to attrdict
Nathan Binkert [Tue, 22 Sep 2009 22:24:16 +0000 (15:24 -0700)]
attrdict: add pickle support to attrdict

14 years agocode_formatter: use __builtin__ which is correct, not __builtins__
Nathan Binkert [Tue, 22 Sep 2009 22:24:16 +0000 (15:24 -0700)]
code_formatter: use __builtin__ which is correct, not __builtins__

14 years agomips: fix command line arguments
Korey Sewell [Thu, 17 Sep 2009 19:59:43 +0000 (15:59 -0400)]
mips: fix command line arguments
arguments were not being saved correctly into M5 memory

14 years agoinorder-mdu: multiplier latency fix
Korey Sewell [Thu, 17 Sep 2009 19:45:27 +0000 (15:45 -0400)]
inorder-mdu: multiplier latency fix
mdu was workign incorrectly for 4+ latency due to incorrectly assuming
multiply was finished the next stage

14 years agoX86: Fix the expected size of the immediate offset in MOV_MI.
Gabe Black [Thu, 17 Sep 2009 09:56:06 +0000 (02:56 -0700)]
X86: Fix the expected size of the immediate offset in MOV_MI.

14 years agoX86: Sign extend the immediate of wripi like the register version.
Gabe Black [Thu, 17 Sep 2009 02:29:51 +0000 (19:29 -0700)]
X86: Sign extend the immediate of wripi like the register version.

14 years agoX86: Make the imm8 member of immediate microops really 8 bits consistently.
Gabe Black [Thu, 17 Sep 2009 02:28:57 +0000 (19:28 -0700)]
X86: Make the imm8 member of immediate microops really 8 bits consistently.

14 years agoX86: Fix checking the NT bit during an IRET.
Gabe Black [Thu, 17 Sep 2009 02:28:30 +0000 (19:28 -0700)]
X86: Fix checking the NT bit during an IRET.

14 years agoX86: Fix setting the busy bit in the task descriptor in LTR.
Gabe Black [Thu, 17 Sep 2009 02:28:01 +0000 (19:28 -0700)]
X86: Fix setting the busy bit in the task descriptor in LTR.

14 years agoinorder-smt: remove hardcoded values
Soumyaroop Roy [Wed, 16 Sep 2009 13:47:38 +0000 (09:47 -0400)]
inorder-smt: remove hardcoded values
allows for the 2T hello world example to work in inorder model

14 years agoinorder-configs: update se.py
Korey Sewell [Wed, 16 Sep 2009 13:46:26 +0000 (09:46 -0400)]
inorder-configs: update se.py
fix bug with  'numThreads=len(workloads)' which was counting characters of command-line not counting threads as intended.
Update numThreads for inorder/o3 cases and default to 1 for all other cases.

14 years agoconfigs: add maxinsts option on command line
Korey Sewell [Wed, 16 Sep 2009 13:45:30 +0000 (09:45 -0400)]
configs: add maxinsts option on command line
-option to allow threads to run to a max_inst_any_thread which is more useful/quicker in a lot of
cases then always having to figure out what tick to run your simulation to.

14 years agoSyscalls: Implement sysinfo() syscall.
Vince Weaver [Wed, 16 Sep 2009 05:36:47 +0000 (22:36 -0700)]
Syscalls: Implement sysinfo() syscall.

14 years agoSPARC: Make resTemp in udivcc wide enough to hold all the bits we need.
Vince Weaver [Tue, 15 Sep 2009 12:48:20 +0000 (05:48 -0700)]
SPARC: Make resTemp in udivcc wide enough to hold all the bits we need.

14 years ago[mq]: x86syscalls.patch
Vince Weaver [Tue, 15 Sep 2009 12:30:08 +0000 (05:30 -0700)]
[mq]: x86syscalls.patch

14 years agoinorder-alpha-fs: edit inorder model to compile FS mode
Korey Sewell [Tue, 15 Sep 2009 05:44:48 +0000 (01:44 -0400)]
inorder-alpha-fs: edit inorder model to compile FS mode

14 years agoAdd an I/O cache to FS config even if there's just an "L2" cache.
Steve Reinhardt [Tue, 15 Sep 2009 04:19:40 +0000 (21:19 -0700)]
Add an I/O cache to FS config even if there's just an "L2" cache.

14 years agoAdded new MESI files
Polina Dudnik [Fri, 11 Sep 2009 21:19:31 +0000 (16:19 -0500)]
Added new MESI files

14 years agoConfig adjustments for MESI
Polina Dudnik [Fri, 11 Sep 2009 16:07:22 +0000 (11:07 -0500)]
Config adjustments for MESI

14 years agoSomayeh's MESI protocol with Polina's bug fixes
Polina Dudnik [Fri, 11 Sep 2009 16:04:55 +0000 (11:04 -0500)]
Somayeh's MESI protocol with Polina's bug fixes

14 years agoMI data corruption bug fix
Polina Dudnik [Fri, 11 Sep 2009 15:59:35 +0000 (10:59 -0500)]
MI data corruption bug fix

14 years agoObject print bug fix
Polina Dudnik [Fri, 11 Sep 2009 15:59:08 +0000 (10:59 -0500)]
Object print bug fix

14 years agoMOESI data corruption bug fix
Polina Dudnik [Fri, 11 Sep 2009 15:58:37 +0000 (10:58 -0500)]
MOESI data corruption bug fix

15 years agoSCons fix to always make MemTest object
Polina Dudnik [Tue, 1 Sep 2009 15:38:25 +0000 (10:38 -0500)]
SCons fix to always make MemTest object

15 years ago[mq]: MOESI_patch
Polina Dudnik [Mon, 31 Aug 2009 21:38:22 +0000 (16:38 -0500)]
[mq]: MOESI_patch

15 years agoReset the atomics flags if RMW_Read is not followed by a RMW_Read or RMW_Write
Polina Dudnik [Fri, 28 Aug 2009 20:09:41 +0000 (15:09 -0500)]
Reset the atomics flags if RMW_Read is not followed by a RMW_Read or RMW_Write

15 years agoimported patch mi_patch
Polina Dudnik [Fri, 28 Aug 2009 20:04:55 +0000 (15:04 -0500)]
imported patch mi_patch

15 years agoMerge with head.
Gabe Black [Sun, 23 Aug 2009 21:19:14 +0000 (14:19 -0700)]
Merge with head.

15 years agoX86: Preserve the NO_ACCESS flag when giving CDA a specialized interface.
Gabe Black [Sun, 23 Aug 2009 21:16:58 +0000 (14:16 -0700)]
X86: Preserve the NO_ACCESS flag when giving CDA a specialized interface.

15 years agoAtomic CPU: Respect the NO_ACCESS request flag.
Gabe Black [Sun, 23 Aug 2009 21:15:15 +0000 (14:15 -0700)]
Atomic CPU: Respect the NO_ACCESS request flag.

15 years agoX86: fix some simple compile issues
Nathan Binkert [Fri, 21 Aug 2009 16:10:25 +0000 (09:10 -0700)]
X86: fix some simple compile issues
static should not be used for constants that are not inside a class definition.

15 years agoRTC: Make calls to writeData update the RTCs internal representation of time.
Gabe Black [Fri, 21 Aug 2009 06:09:03 +0000 (23:09 -0700)]
RTC: Make calls to writeData update the RTCs internal representation of time.

15 years agoX86: Make the real time clock actually keep track of time.
Gabe Black [Thu, 20 Aug 2009 07:42:43 +0000 (00:42 -0700)]
X86: Make the real time clock actually keep track of time.

15 years agoX86: Fix the decoding for and fill out FST and FSTP.
Gabe Black [Thu, 20 Aug 2009 07:42:14 +0000 (00:42 -0700)]
X86: Fix the decoding for and fill out FST and FSTP.

15 years agoX86: Add microassembler symbols for floating point stack register operands.
Gabe Black [Thu, 20 Aug 2009 07:41:27 +0000 (00:41 -0700)]
X86: Add microassembler symbols for floating point stack register operands.

15 years agoX86: Don't insist on binary encoding for the RTC since we implement BCD.
Gabe Black [Thu, 20 Aug 2009 07:40:14 +0000 (00:40 -0700)]
X86: Don't insist on binary encoding for the RTC since we implement BCD.

15 years agoX86: Decode the immediate byte opcode extension for 3dNow! instructions.
Gabe Black [Tue, 18 Aug 2009 07:52:47 +0000 (00:52 -0700)]
X86: Decode the immediate byte opcode extension for 3dNow! instructions.

15 years agoX86: Decode three byte opcodes.
Gabe Black [Tue, 18 Aug 2009 07:52:45 +0000 (00:52 -0700)]
X86: Decode three byte opcodes.

15 years agoMerge with head.
Gabe Black [Tue, 18 Aug 2009 05:39:10 +0000 (22:39 -0700)]
Merge with head.

15 years agoX86: Update stats for new SSE instructions.
Gabe Black [Tue, 18 Aug 2009 05:27:30 +0000 (22:27 -0700)]
X86: Update stats for new SSE instructions.

15 years agoX86: Move the simulated date in X86_FS forward to 2012.
Gabe Black [Tue, 18 Aug 2009 03:25:15 +0000 (20:25 -0700)]
X86: Move the simulated date in X86_FS forward to 2012.

15 years agoX86: Double check the two byte portion of the decoder and fix bugs/clean up.
Gabe Black [Tue, 18 Aug 2009 03:25:15 +0000 (20:25 -0700)]
X86: Double check the two byte portion of the decoder and fix bugs/clean up.

15 years agoX86: Implement MOVNTI.
Gabe Black [Tue, 18 Aug 2009 03:25:15 +0000 (20:25 -0700)]
X86: Implement MOVNTI.

15 years agoX86: Initialize the MXCSR in SE mode.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Initialize the MXCSR in SE mode.

15 years agoX86: Implement MOVQ2DQ.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement MOVQ2DQ.

15 years agoX86: Implement MOVDQ2Q.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement MOVDQ2Q.

15 years agoX86: Implement the media instructions that convert fp values to ints.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement the media instructions that convert fp values to ints.

15 years agoX86: Implement a microop for converting fp values to ints.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement a microop for converting fp values to ints.

15 years agoX86: Implement the instructions that compare fp values and write a mask as a result.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement the instructions that compare fp values and write a mask as a result.

15 years agoX86: Implement a microop that compares fp values and writes a mask as a result.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement a microop that compares fp values and writes a mask as a result.

15 years agoX86: Implement the instructions that compare fp values and write to rflags.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement the instructions that compare fp values and write to rflags.

15 years agoX86: Implement a microop that compares fp values and writes to rflags.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement a microop that compares fp values and writes to rflags.

15 years agoX86: Implement MOVSS.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement MOVSS.

15 years agoX86: Implement LDMXCSR.
Gabe Black [Tue, 18 Aug 2009 03:25:14 +0000 (20:25 -0700)]
X86: Implement LDMXCSR.

15 years agoX86: Implement STMXCSR.
Gabe Black [Tue, 18 Aug 2009 03:25:13 +0000 (20:25 -0700)]
X86: Implement STMXCSR.

15 years agoX86: Implement the shuffle media instructions.
Gabe Black [Tue, 18 Aug 2009 03:25:13 +0000 (20:25 -0700)]
X86: Implement the shuffle media instructions.

15 years agoX86: Implement a shuffle media microop.
Gabe Black [Tue, 18 Aug 2009 03:25:13 +0000 (20:25 -0700)]
X86: Implement a shuffle media microop.

15 years agoX86: Implement the mask move instructions.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Implement the mask move instructions.

15 years agoX86: Implement a mask move microop.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Implement a mask move microop.

15 years agoX86: Implement the instructions that move sign bits.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Implement the instructions that move sign bits.

15 years agoX86: Implement a microop that moves sign bits.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Implement a microop that moves sign bits.

15 years agoX86: Implement the insert/extract instructions.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Implement the insert/extract instructions.

15 years agoX86: Fix a bug in the decoder where the insert/extract instructions go.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Fix a bug in the decoder where the insert/extract instructions go.

15 years agoX86: Extend mov2int and mov2fp so they can support insert and extract instructions.
Gabe Black [Tue, 18 Aug 2009 03:22:56 +0000 (20:22 -0700)]
X86: Extend mov2int and mov2fp so they can support insert and extract instructions.

15 years agoX86: Implement the media average instructions.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement the media average instructions.

15 years agoX86: Implement a media average microop.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement a media average microop.

15 years agoX86: Implement the multiply and add instructions.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement the multiply and add instructions.

15 years agoX86: Let the integer multiply microop use every other possible source value.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Let the integer multiply microop use every other possible source value.

15 years agoX86: Implement the media shifts that operate on 64 bits or less at a time.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement the media shifts that operate on 64 bits or less at a time.

15 years agoX86: Implement the media shift microops. These don't handle full 128 bit wide shifts.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement the media shift microops. These don't handle full 128 bit wide shifts.

15 years agoX86: Implement the sum of absolute differences instructions.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement the sum of absolute differences instructions.

15 years agoX86: Implement a "sum of absolute differences" microop.
Gabe Black [Tue, 18 Aug 2009 03:15:16 +0000 (20:15 -0700)]
X86: Implement a "sum of absolute differences" microop.

15 years agoX86: Implement the media integer subtract instructions.
Gabe Black [Tue, 18 Aug 2009 03:15:15 +0000 (20:15 -0700)]
X86: Implement the media integer subtract instructions.

15 years agoX86: Implement an integer media subtract microop.
Gabe Black [Tue, 18 Aug 2009 03:15:15 +0000 (20:15 -0700)]
X86: Implement an integer media subtract microop.

15 years agoX86: Implement the integer media multiply instructions.
Gabe Black [Tue, 18 Aug 2009 03:15:15 +0000 (20:15 -0700)]
X86: Implement the integer media multiply instructions.

15 years agoX86: Implement a media integer multiply microop.
Gabe Black [Tue, 18 Aug 2009 03:15:15 +0000 (20:15 -0700)]
X86: Implement a media integer multiply microop.

15 years agoX86: Make larger blocks of instructions use the Inst format by default.
Gabe Black [Tue, 18 Aug 2009 03:04:03 +0000 (20:04 -0700)]
X86: Make larger blocks of instructions use the Inst format by default.

15 years agoX86: Implement the integer media max instructions.
Gabe Black [Tue, 18 Aug 2009 03:04:03 +0000 (20:04 -0700)]
X86: Implement the integer media max instructions.

15 years agoX86: Implement an integer media max microop.
Gabe Black [Tue, 18 Aug 2009 03:04:03 +0000 (20:04 -0700)]
X86: Implement an integer media max microop.

15 years agoX86: Implement the integer media min instructions.
Gabe Black [Tue, 18 Aug 2009 03:04:03 +0000 (20:04 -0700)]
X86: Implement the integer media min instructions.

15 years agoX86: Add a media integer min microop.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Add a media integer min microop.

15 years agoX86: Implement the media integer addition instructions.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Implement the media integer addition instructions.

15 years agoX86: Implement an integer media addition microop with optional saturation.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Implement an integer media addition microop with optional saturation.

15 years agoX86: Implement the instructions that convert between forms of floating point.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Implement the instructions that convert between forms of floating point.

15 years agoX86: Implement a media microop that converts between floating point data types.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Implement a media microop that converts between floating point data types.

15 years agoX86: Implement the instructions that compare fp values and write masks as the result.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Implement the instructions that compare fp values and write masks as the result.

15 years agoX86: Implement a microop that compares fp values and writes a mask as its result.
Gabe Black [Tue, 18 Aug 2009 03:04:02 +0000 (20:04 -0700)]
X86: Implement a microop that compares fp values and writes a mask as its result.

15 years agoX86: Implement the MOVDDUP instruction.
Gabe Black [Tue, 18 Aug 2009 01:50:29 +0000 (18:50 -0700)]
X86: Implement the MOVDDUP instruction.

15 years agoX86: Implement many of the media mov instructions.
Gabe Black [Tue, 18 Aug 2009 01:44:44 +0000 (18:44 -0700)]
X86: Implement many of the media mov instructions.

15 years agoX86: Implement the media instructions that convert integer values to floating point.
Gabe Black [Tue, 18 Aug 2009 01:41:27 +0000 (18:41 -0700)]
X86: Implement the media instructions that convert integer values to floating point.

15 years agoX86: Implement a media microop for converting integer values to floating point.
Gabe Black [Tue, 18 Aug 2009 01:41:25 +0000 (18:41 -0700)]
X86: Implement a media microop for converting integer values to floating point.

15 years agoX86: Implement the floating point media instructions.
Gabe Black [Tue, 18 Aug 2009 01:40:40 +0000 (18:40 -0700)]
X86: Implement the floating point media instructions.

15 years agoX86: Implement a floating point media divide microop.
Gabe Black [Tue, 18 Aug 2009 01:40:38 +0000 (18:40 -0700)]
X86: Implement a floating point media divide microop.

15 years agoX86: Implement the floating point media multiply instructions.
Gabe Black [Tue, 18 Aug 2009 01:38:53 +0000 (18:38 -0700)]
X86: Implement the floating point media multiply instructions.

15 years agoX86: Implement a floating point media multiply microop.
Gabe Black [Tue, 18 Aug 2009 01:38:51 +0000 (18:38 -0700)]
X86: Implement a floating point media multiply microop.