gem5.git
17 years agoMake CPU models use new LoadLockedReq/StoreCondReq commands.
Steve Reinhardt [Sun, 1 Jul 2007 03:35:42 +0000 (20:35 -0700)]
Make CPU models use new LoadLockedReq/StoreCondReq commands.

--HG--
extra : convert_revision : ab78d9d1d88c3698edfd653d71c8882e1272b781

17 years agoDon't propagate snoops across bridges. Wouldn't work anyway.
Steve Reinhardt [Sun, 1 Jul 2007 01:03:17 +0000 (18:03 -0700)]
Don't propagate snoops across bridges.  Wouldn't work anyway.

--HG--
extra : convert_revision : af29fc7d0c134f5e89dd2e814c819151350fcb38

17 years agoGet rid of remaining traces of obsolete CoherenceProtocol object.
Steve Reinhardt [Sun, 1 Jul 2007 00:59:45 +0000 (17:59 -0700)]
Get rid of remaining traces of obsolete CoherenceProtocol object.

--HG--
extra : convert_revision : c5555b00bef1b304a84886188ad2c0dcb4d7c5b9

17 years agoCan only call makeAtomicResponse() once...
Steve Reinhardt [Sun, 1 Jul 2007 00:56:30 +0000 (17:56 -0700)]
Can only call makeAtomicResponse() once...

--HG--
extra : convert_revision : c49aade46aa64f979da35eb653b544ee5bd82f01

17 years agoGet rid of obsolete fixPacket() functions.
Steve Reinhardt [Sun, 1 Jul 2007 00:51:29 +0000 (17:51 -0700)]
Get rid of obsolete fixPacket() functions.
Handled by Packet::checkFunctional() now.

--HG--
extra : convert_revision : 63642254e2789c80a369ac269f317ec054ffe3c0

17 years agoEvent descriptions should not end in "event"
Steve Reinhardt [Sun, 1 Jul 2007 00:45:58 +0000 (17:45 -0700)]
Event descriptions should not end in "event"
(they function as adjectives not nouns)

--HG--
extra : convert_revision : 6506474ff3356ae8c80ed276c3608d8a4680bfdb

17 years agoFactor out a little more common code.
Steve Reinhardt [Sat, 30 Jun 2007 20:56:25 +0000 (13:56 -0700)]
Factor out a little more common code.

--HG--
extra : convert_revision : 626255a91679d534030c91bcdb4fc1bed36ceb9b

17 years agoFix up a few statistics problems.
Steve Reinhardt [Sat, 30 Jun 2007 20:34:16 +0000 (13:34 -0700)]
Fix up a few statistics problems.
Stats pretty much line up with old code, except:
- bug in old code included L1 latency in L2 miss time, making it too high
- UniCoherence did cache-to-cache transfers even from non-owner caches,
so occasionally the icache would get a block from the dcache not the L2
- L2 can now receive ReadExReq from L1 since L1s have coherence

--HG--
extra : convert_revision : 5052c1a1767b5a662f30a88f16012165a73b791c

17 years agoGet rid of Packet result field. Error responses are
Steve Reinhardt [Sat, 30 Jun 2007 17:16:18 +0000 (10:16 -0700)]
Get rid of Packet result field.  Error responses are
now encoded in cmd field.

--HG--
extra : convert_revision : d67819b7e3ee4b9a5bf08541104de0a89485e90b

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Fri, 29 Jun 2007 20:03:36 +0000 (13:03 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

--HG--
extra : convert_revision : 1e94283da8007fce8e1a0f2849ce5d5a8dbbaffd

17 years agofix store instructions, pass fast/quick Atomic/TimingSimpleCPU regressions...
Korey Sewell [Fri, 29 Jun 2007 19:13:50 +0000 (15:13 -0400)]
fix store instructions, pass fast/quick Atomic/TimingSimpleCPU regressions...

src/arch/mips/isa/decoder.isa:
    commment out deret instruction for now...
src/arch/mips/isa/formats/fp.isa:
    edit fp format
src/arch/mips/isa/formats/mem.isa:
    fix for basic store instructions

--HG--
extra : convert_revision : 30cb5a474e78ac9292b6ab37d433db947a177731

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Thu, 28 Jun 2007 15:28:58 +0000 (08:28 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

--HG--
extra : convert_revision : b1c954c187e3b3172a194396ba63808253121195

17 years agoo3cpu build for mips
Korey Sewell [Thu, 28 Jun 2007 09:30:46 +0000 (05:30 -0400)]
o3cpu build for mips

--HG--
extra : convert_revision : 2c0be7a8c0a54ba5b1b2b69468f788d20abc8452

17 years agoGet rid of coherence protocol object.
Steve Reinhardt [Thu, 28 Jun 2007 03:54:13 +0000 (20:54 -0700)]
Get rid of coherence protocol object.

--HG--
extra : convert_revision : 4ff144342dca23af9a12a2169ca318a002654b42

17 years agoRevamp replacement-of-upgrade handling.
Steve Reinhardt [Wed, 27 Jun 2007 06:30:30 +0000 (23:30 -0700)]
Revamp replacement-of-upgrade handling.

--HG--
extra : convert_revision : 9bc09d8ae6d50e6dfbb4ab21514612f9aa102a2e

17 years agoHandle deferred snoops better.
Steve Reinhardt [Wed, 27 Jun 2007 05:23:10 +0000 (22:23 -0700)]
Handle deferred snoops better.

--HG--
extra : convert_revision : 703da6128832eb0d5cfed7724e5105f4b3fe4f90

17 years agocache_impl.hh:
Steve Reinhardt [Tue, 26 Jun 2007 22:01:22 +0000 (18:01 -0400)]
cache_impl.hh:
Change target overflow from assertion to warning.

src/mem/cache/cache_impl.hh:
    Change target overflow from assertion to warning.

--HG--
extra : convert_revision : ceca990ed916bbf96dedd4836c40df522803f173

17 years agoHandle replacement of block with pending upgrade.
Steve Reinhardt [Tue, 26 Jun 2007 21:53:15 +0000 (14:53 -0700)]
Handle replacement of block with pending upgrade.

src/mem/cache/tags/lru.cc:
    Add some replacement DPRINTFs

--HG--
extra : convert_revision : 7993ec24d6af7e7774d04ce36f20e3f43f887fd9

17 years agoCouple minor bug fixes...
Steve Reinhardt [Tue, 26 Jun 2007 05:23:29 +0000 (22:23 -0700)]
Couple minor bug fixes...

src/mem/cache/cache_impl.hh:
    Handle grants with no packet.
src/mem/cache/miss/mshr.cc:
    Fix MSHR snoop hit handling.

--HG--
extra : convert_revision : f365283afddaa07cb9e050b2981ad6a898c14451

17 years agoGet rid of requestCauses. Use timestamped queue to make
Steve Reinhardt [Mon, 25 Jun 2007 13:47:05 +0000 (06:47 -0700)]
Get rid of requestCauses.  Use timestamped queue to make
sure we don't re-request bus prematurely.  Use callback to
avoid calling sendRetry() recursively within recvTiming.

--HG--
extra : convert_revision : a907a2781b4b00aa8eb1ea7147afc81d6b424140

17 years agoBetter handling of deferred targets.
Steve Reinhardt [Mon, 25 Jun 2007 00:32:31 +0000 (17:32 -0700)]
Better handling of deferred targets.

--HG--
extra : convert_revision : 0fbc28c32c1eeb3dd672df14c1d53bd516f81d0f

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Sat, 23 Jun 2007 20:26:30 +0000 (13:26 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

src/base/traceflags.py:
    Hand merge.

--HG--
extra : convert_revision : 9e7539eeab4220ed7a7237457a8f336f79216924

17 years agoMinor fix plus new assertion to catch similar bugs.
Steve Reinhardt [Sat, 23 Jun 2007 20:24:33 +0000 (13:24 -0700)]
Minor fix plus new assertion to catch similar bugs.

src/cpu/memtest/memtest.cc:
    Need to set packet source field so that response from cache
    doesn't run into assertion failure when copying source to dest.
src/mem/packet.hh:
    Copy source field when copying packets.
    Assert that source is valid before copying it to dest
    when turning packets around.

--HG--
extra : convert_revision : 09e3cfda424aa89fe170e21e955b295746832bf8

17 years agoFINISH off merge of mips mt/dsp isa extensions by adding the ControlBitfieldOPerand...
Korey Sewell [Sat, 23 Jun 2007 01:09:35 +0000 (21:09 -0400)]
FINISH off merge of mips mt/dsp isa extensions by adding the ControlBitfieldOPerand to ISA Parser. Now, while things do build, we have to fix broken functionality...

src/arch/isa_parser.py:
    add back deleted writeback in Control Operand

--HG--
extra : convert_revision : dba11af220a1281fa53f79d87e4f8752bdfc56db

17 years agoadd Control Bitfield class
Korey Sewell [Sat, 23 Jun 2007 00:09:46 +0000 (20:09 -0400)]
add Control Bitfield class

--HG--
extra : convert_revision : 31e7243c8820cb9f6744c53c417460dee9adaf44

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Fri, 22 Jun 2007 23:13:53 +0000 (16:13 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

--HG--
extra : convert_revision : aa50af3094f5d459f75b514179b6e3ec5e0bf1df

17 years agomips import pt. 1
Korey Sewell [Fri, 22 Jun 2007 23:03:42 +0000 (19:03 -0400)]
mips import pt. 1

src/arch/mips/SConscript:
    "mips import pt.1".

--HG--
extra : convert_revision : 2e393341938bebf32fb638a209262d074fad4cc1

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Fri, 22 Jun 2007 21:44:33 +0000 (17:44 -0400)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  zizzer.eecs.umich.edu:/.automount/wexford/x/gblack/newmem-o3-micro

--HG--
extra : convert_revision : 3fa3fa4544ff8c9d2135e1befe6c8f4757006a2a

17 years agoUpdate of reference outputs. SPARC_SE o3 gzip didn't have reference outputs, mcf...
Gabe Black [Fri, 22 Jun 2007 19:06:10 +0000 (15:06 -0400)]
Update of reference outputs. SPARC_SE o3 gzip didn't have reference outputs, mcf has a reduced input size, and most of the other changes are for a change in how branch mispredicts work which makes things more accurate.

--HG--
extra : convert_revision : 33ad6a220945b344d2fc5c6abef8e67467e0c0ec

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Fri, 22 Jun 2007 16:24:33 +0000 (09:24 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

--HG--
extra : convert_revision : 1da75335907fee2d1745ec13e515819dfe2aad89

17 years agoFixes to hitLatency, blocking, buffer allocation.
Steve Reinhardt [Fri, 22 Jun 2007 16:24:07 +0000 (09:24 -0700)]
Fixes to hitLatency, blocking, buffer allocation.
Single-cpu timing mode seems to work now.

--HG--
extra : convert_revision : 720f6172df18a1c941e5bd0e8fdfbd686c13c7ad

17 years agoMake symbols for regular registers.
Gabe Black [Thu, 21 Jun 2007 20:35:27 +0000 (20:35 +0000)]
Make symbols for regular registers.

--HG--
extra : convert_revision : 28a6df1efe4298877dc2b20179caeb25dfdc4622

17 years agoGet rid of an unnecessary include file.
Gabe Black [Thu, 21 Jun 2007 20:35:26 +0000 (20:35 +0000)]
Get rid of an unnecessary include file.

--HG--
extra : convert_revision : d8d139180917f54006a5a79df4a0f206ddd39fed

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Thu, 21 Jun 2007 20:35:25 +0000 (20:35 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-o3-micro

src/cpu/o3/fetch_impl.hh:
    hand merge

--HG--
extra : convert_revision : 3f71f3ac2035eec8b6f7bceb6906edb4dd09c045

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Thu, 21 Jun 2007 20:35:23 +0000 (20:35 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86

--HG--
extra : convert_revision : ba4d93f354749d02278b16e78b4ecd4b2311416b

17 years agoupdate stats for fixed nextCycle()
Ali Saidi [Thu, 21 Jun 2007 20:35:22 +0000 (16:35 -0400)]
update stats for fixed nextCycle()

--HG--
extra : convert_revision : 3626c4d2d67ed190d846f6edae06c43444a14feb

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Thu, 21 Jun 2007 19:03:22 +0000 (12:03 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

--HG--
extra : convert_revision : 9002940097a166c8442ae1adf41b974227968920

17 years agoGetting closer...
Steve Reinhardt [Thu, 21 Jun 2007 18:59:17 +0000 (11:59 -0700)]
Getting closer...

configs/example/memtest.py:
    Add progress interval option.
src/base/traceflags.py:
    Add MemTest flag.
src/cpu/memtest/memtest.cc:
    Clean up tracing.
src/cpu/memtest/memtest.hh:
    Get rid of unused code.

--HG--
extra : convert_revision : 92bd8241a6c90bfb6d908e5a5132cbdb500cbb87

17 years agoUse FastAlloc for Packet, Request, CoherenceState, and SenderState so we don't spend...
Ali Saidi [Thu, 21 Jun 2007 17:50:35 +0000 (13:50 -0400)]
Use FastAlloc for Packet, Request, CoherenceState, and SenderState so we don't spend so much time calling malloc()

--HG--
extra : convert_revision : a946564eee46ed7d2aed41c32d488ca7f036c32f

17 years agoUse the new symbols to clean up the assembler.
Gabe Black [Thu, 21 Jun 2007 15:30:05 +0000 (15:30 +0000)]
Use the new symbols to clean up the assembler.

--HG--
extra : convert_revision : 005464e875ede1e37dfe0e0482c29fd793ca52be

17 years agoNeeded for last change set to work :P
Gabe Black [Thu, 21 Jun 2007 15:29:02 +0000 (15:29 +0000)]
Needed for last change set to work :P

--HG--
extra : convert_revision : 9e57e582dd1ef2805d5adffcc0ccfd99596d9f54

17 years agoDefine symbols for the x86 specialization of the microassembler.
Gabe Black [Thu, 21 Jun 2007 15:28:08 +0000 (15:28 +0000)]
Define symbols for the x86 specialization of the microassembler.

--HG--
extra : convert_revision : 1fd66ba519d211fec18641b6df94b7640c56080c

17 years agoFix a comment.
Gabe Black [Thu, 21 Jun 2007 15:26:38 +0000 (15:26 +0000)]
Fix a comment.

--HG--
extra : convert_revision : 17e67cf6ea17fe6f971ef608547983fbb94adec9

17 years agoFix a problem where part of a microops parameters might be interpretted as an "ID...
Gabe Black [Thu, 21 Jun 2007 15:26:01 +0000 (15:26 +0000)]
Fix a problem where part of a microops parameters might be interpretted as an "ID", and also added support for symbols.

--HG--
extra : convert_revision : 60d1ef677a6a59a9d897086893843ec1ec368148

17 years agoAdd in code that lays the ground work for setting flags.
Gabe Black [Thu, 21 Jun 2007 13:48:44 +0000 (13:48 +0000)]
Add in code that lays the ground work for setting flags.

--HG--
extra : convert_revision : e4fcb64d45804700a0ef34e8acf5615b66e2a527

17 years agolong is too long
Gabe Black [Thu, 21 Jun 2007 02:48:25 +0000 (19:48 -0700)]
long is too long

--HG--
extra : convert_revision : 7342cd4a1700a247f30d6f85fc6c2685341ba20e

17 years agoFix compiler errors.
Gabe Black [Thu, 21 Jun 2007 02:46:45 +0000 (19:46 -0700)]
Fix compiler errors.

--HG--
extra : convert_revision : 2b10076a24cb36cb748e299011ae691f09c158cd

17 years agoImplement rip relative addressing and put in some missing loads and stores.
Gabe Black [Wed, 20 Jun 2007 19:08:04 +0000 (19:08 +0000)]
Implement rip relative addressing and put in some missing loads and stores.

--HG--
extra : convert_revision : 99053414cef40f13c5226871a72909b2622d8c26

17 years agoFix a newly introduced bug where the predecoder wasn't picking up all the displacement.
Gabe Black [Wed, 20 Jun 2007 19:06:08 +0000 (19:06 +0000)]
Fix a newly introduced bug where the predecoder wasn't picking up all the displacement.

--HG--
extra : convert_revision : 9202c11ee187458adcd85ba616b7f7f4bdd4eec1

17 years agoX86 probably doesn't need a window save area.
Gabe Black [Wed, 20 Jun 2007 19:05:06 +0000 (19:05 +0000)]
X86 probably doesn't need a window save area.

--HG--
extra : convert_revision : c4a76262d4396f5f5b96b1c9e751014c2abbd78a

17 years agoFix a typo in one of the operand type tags.
Gabe Black [Wed, 20 Jun 2007 19:04:41 +0000 (19:04 +0000)]
Fix a typo in one of the operand type tags.

--HG--
extra : convert_revision : bea87214ba4b40d75a350b803154836ec6d0ae9e

17 years agoComment out some unnecessary debug output.
Gabe Black [Wed, 20 Jun 2007 19:04:40 +0000 (19:04 +0000)]
Comment out some unnecessary debug output.

--HG--
extra : convert_revision : 9df17841d970a7995d8ed1d51ee66e2c5457e5e3

17 years agoForgot to check these in...
Gabe Black [Wed, 20 Jun 2007 19:04:39 +0000 (19:04 +0000)]
Forgot to check these in...

--HG--
extra : convert_revision : f489fda15740bae0a73bfb012f3bab5790b5c2b5

17 years agoComment out some unnecessary debug statements.
Gabe Black [Wed, 20 Jun 2007 19:04:38 +0000 (19:04 +0000)]
Comment out some unnecessary debug statements.

--HG--
extra : convert_revision : aabaaf099f070832bf42cedf2472170e0738ee1c

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Wed, 20 Jun 2007 19:04:37 +0000 (19:04 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86

--HG--
extra : convert_revision : f2fac2b1a09e709021cd8382a9fbe805df2177ef

17 years agoMinor error.
Vincentius Robby [Wed, 20 Jun 2007 19:04:36 +0000 (15:04 -0400)]
Minor error.

--HG--
extra : convert_revision : 514032e21c8861f20fcbcae7204e132088cc7dbc

17 years agoRemoved "adding instead of dividing" trick.
Vincentius Robby [Wed, 20 Jun 2007 18:54:17 +0000 (14:54 -0400)]
Removed "adding instead of dividing" trick.
Caused slowdown in performance instead of speeding up.

src/cpu/base.cc:
    Removed "adding instead of dividing" trick.
src/mem/bus.cc:
    Fixed spelling in comments.
    Removed "adding instead of dividing" trick.

--HG--
extra : convert_revision : 65a736f4f09a64e737dc7aeee53b117976330488

17 years agoDon't do checker stuff if the checker is not defined
Nathan Binkert [Wed, 20 Jun 2007 15:15:06 +0000 (08:15 -0700)]
Don't do checker stuff if the checker is not defined

--HG--
extra : convert_revision : 1c920b050c21e592a386410e4e9f45354f8e4441

17 years agoMake sure all parameters have default values if they're
Nathan Binkert [Wed, 20 Jun 2007 15:14:11 +0000 (08:14 -0700)]
Make sure all parameters have default values if they're
supposed to and make sure parameters have the right type.
Also make sure that any object that should be an intermediate
type has the right options set.

--HG--
extra : convert_revision : d56910628d9a067699827adbc0a26ab629d11e93

17 years agoDon't go over 80 chars per line
Nathan Binkert [Wed, 20 Jun 2007 15:12:10 +0000 (08:12 -0700)]
Don't go over 80 chars per line

--HG--
extra : convert_revision : ec73c3c8788757990a6fab8c600f3b353d0d4206

17 years agoMake memory instructions work better, add more macroop implementations, add an lea...
Gabe Black [Wed, 20 Jun 2007 15:02:50 +0000 (15:02 +0000)]
Make memory instructions work better, add more macroop implementations, add an lea microop, move EmulEnv into it's own .cc and .hh.

--HG--
extra : convert_revision : 1212b8463eab1c1dcba7182c487d1e9184cf9bea

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Wed, 20 Jun 2007 01:54:40 +0000 (18:54 -0700)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  doughnut.hpl.hp.com:/home/gblack/newmem-o3-micro

src/cpu/base_dyn_inst_impl.hh:
src/cpu/o3/fetch_impl.hh:
    Hand merge

--HG--
extra : convert_revision : 0c0692033ac30133672d8dfe1f1a27e9d9e95a3d

17 years agoMore faithfulness to what instructions should work in what modes, and added the MOVSX...
Gabe Black [Tue, 19 Jun 2007 22:40:10 +0000 (22:40 +0000)]
More faithfulness to what instructions should work in what modes, and added the MOVSXD instruction.

--HG--
extra : convert_revision : 38b9bf6cd4bdec6355b1158967c7d3562715cacd

17 years agoMissed an "offset" to get rid of.
Gabe Black [Tue, 19 Jun 2007 19:01:02 +0000 (19:01 +0000)]
Missed an "offset" to get rid of.

--HG--
extra : convert_revision : 7542f130b269a6a09e6ed51ae4689d1faa45a155

17 years agoMake branches work by repopulating the predecoder every time through. This is probabl...
Gabe Black [Tue, 19 Jun 2007 18:17:34 +0000 (18:17 +0000)]
Make branches work by repopulating the predecoder every time through. This is probably fine as far as the predecoder goes, but the simple cpu might want to not refetch something it already has. That reintroduces the self modifying code problem though.

--HG--
extra : convert_revision : 802197e65f8dc1ad657c6b346091e03cb563b0c0

17 years agoMake instructions that are illegal in 64 bit mode not do the wrong thing in 64 bit...
Gabe Black [Tue, 19 Jun 2007 17:56:06 +0000 (17:56 +0000)]
Make instructions that are illegal in 64 bit mode not do the wrong thing in 64 bit mode. Also add in more versions of PUSH and POP, and a version of near CALL.

--HG--
extra : convert_revision : 7d8266cdfa54ac25610466b3533d3e9e5433297b

17 years agoMake an error message a little more descriptive.
Gabe Black [Tue, 19 Jun 2007 17:53:10 +0000 (17:53 +0000)]
Make an error message a little more descriptive.

--HG--
extra : convert_revision : dbde025b1dcec0083e7276a9938bd21e7ab2887f

17 years agoRenovate the "fault" microop implementation.
Gabe Black [Tue, 19 Jun 2007 14:50:35 +0000 (14:50 +0000)]
Renovate the "fault" microop implementation.

--HG--
extra : convert_revision : dc9d67dd5413f00f16d37cb2d0f8b0d10971e14a

17 years agoGet rid of the commented out versions of macroops which have been reimplemented....
Gabe Black [Tue, 19 Jun 2007 14:26:42 +0000 (14:26 +0000)]
Get rid of the commented out versions of macroops which have been reimplemented. The comments are basically functioning like a todo list.

--HG--
extra : convert_revision : cb07e3813f6cf882b4a5c77c498ffbca26adf586

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Tue, 19 Jun 2007 14:18:46 +0000 (14:18 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86

--HG--
extra : convert_revision : 2dfc24b0720b3b378858a289e4bb6f4ee7132b3d

17 years agoGet rid of the immediate and displacement components of the EmulEnv struct and use...
Gabe Black [Tue, 19 Jun 2007 14:18:25 +0000 (14:18 +0000)]
Get rid of the immediate and displacement components of the EmulEnv struct and use them directly out of the instruction. The extra copies are conceptually realistic but are just innefficient as implemented. Also don't use the zeroeth microcode register for general storage since it's now the zero register, and implement a load and a store microops.

--HG--
extra : convert_revision : 0686296ca8b72940d961ecc6051063bfda1e932d

17 years agoAdd a stack size bitfield and expose the mode component of the ExtMachInst.
Gabe Black [Tue, 19 Jun 2007 14:15:21 +0000 (14:15 +0000)]
Add a stack size bitfield and expose the mode component of the ExtMachInst.

--HG--
extra : convert_revision : aad0ec51745fb94335898b0565bb11c1b399bbee

17 years agoAdd a function to print out segment names.
Gabe Black [Tue, 19 Jun 2007 14:14:17 +0000 (14:14 +0000)]
Add a function to print out segment names.

--HG--
extra : convert_revision : 8cbe3ca0d05165f7da5d6fa38c899ecc9e782511

17 years agofix bug in timing cpu. getTime() is the time the requset was created, not the time...
Ali Saidi [Mon, 18 Jun 2007 22:11:07 +0000 (18:11 -0400)]
fix bug in timing cpu. getTime() is the time the requset was created, not the time it was repsonded to. In timing mode the
time it was responded to is curTick. Doesn't change the results, but it does make implementation of nextCycle() more difficult

--HG--
extra : convert_revision : 67ed6261a5451d17d96d5df45992590acc353afc

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Mon, 18 Jun 2007 14:16:08 +0000 (14:16 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86

--HG--
extra : convert_revision : fd64f2de0051afdc51e833a7cbf7fa120b230cc3

17 years agoGet rid of unnecessary output.
Gabe Black [Mon, 18 Jun 2007 14:15:47 +0000 (14:15 +0000)]
Get rid of unnecessary output.

--HG--
extra : convert_revision : 0df9a12788b8ce3225c113c095d5f13e49a7c544

17 years agoAdd in incomplete pick and merge functions which read and write pieces of registers...
Gabe Black [Mon, 18 Jun 2007 14:15:00 +0000 (14:15 +0000)]
Add in incomplete pick and merge functions which read and write pieces of registers, and fill out microcode disassembly.

--HG--
extra : convert_revision : 56332b3999a9079b1bd305ee2826abdf593367e1

17 years agoMerge vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt [Mon, 18 Jun 2007 00:30:24 +0000 (17:30 -0700)]
Merge vm1.(none):/home/stever/bk/newmem-head
into  vm1.(none):/home/stever/bk/newmem-cache2

configs/example/memtest.py:
    Hand merge redundant changes.

--HG--
extra : convert_revision : a2e36be254bf052024f37bcb23b5209f367d37e1

17 years agoMore major reorg of cache. Seems to work for atomic mode now,
Steve Reinhardt [Mon, 18 Jun 2007 00:27:53 +0000 (17:27 -0700)]
More major reorg of cache.  Seems to work for atomic mode now,
timing mode still broken.

configs/example/memtest.py:
    Revamp options.
src/cpu/memtest/memtest.cc:
    No need for memory initialization.
    No need to make atomic response... memory system should do that now.
src/cpu/memtest/memtest.hh:
    MemTest really doesn't want to snoop.
src/mem/bridge.cc:
    checkFunctional() cleanup.
src/mem/bus.cc:
src/mem/bus.hh:
src/mem/cache/base_cache.cc:
src/mem/cache/base_cache.hh:
src/mem/cache/cache.cc:
src/mem/cache/cache.hh:
src/mem/cache/cache_blk.hh:
src/mem/cache/cache_builder.cc:
src/mem/cache/cache_impl.hh:
src/mem/cache/coherence/coherence_protocol.cc:
src/mem/cache/coherence/coherence_protocol.hh:
src/mem/cache/coherence/simple_coherence.hh:
src/mem/cache/miss/SConscript:
src/mem/cache/miss/mshr.cc:
src/mem/cache/miss/mshr.hh:
src/mem/cache/miss/mshr_queue.cc:
src/mem/cache/miss/mshr_queue.hh:
src/mem/cache/prefetch/base_prefetcher.cc:
src/mem/cache/tags/fa_lru.cc:
src/mem/cache/tags/fa_lru.hh:
src/mem/cache/tags/iic.cc:
src/mem/cache/tags/iic.hh:
src/mem/cache/tags/lru.cc:
src/mem/cache/tags/lru.hh:
src/mem/cache/tags/split.cc:
src/mem/cache/tags/split.hh:
src/mem/cache/tags/split_lifo.cc:
src/mem/cache/tags/split_lifo.hh:
src/mem/cache/tags/split_lru.cc:
src/mem/cache/tags/split_lru.hh:
src/mem/packet.cc:
src/mem/packet.hh:
src/mem/physical.cc:
src/mem/physical.hh:
src/mem/tport.cc:
    More major reorg.  Seems to work for atomic mode now,
    timing mode still broken.

--HG--
extra : convert_revision : 7e70dfc4a752393b911880ff028271433855ae87

17 years agosince the o3 cpu perlbmk regression doesn't work, just delete it. Perhaps the regress...
Ali Saidi [Sun, 17 Jun 2007 18:01:01 +0000 (14:01 -0400)]
since the o3 cpu perlbmk regression doesn't work, just delete it. Perhaps the regression will terminate now

--HG--
extra : convert_revision : 509e42c2abc4bce1f56dc0b6a69e5c27ab95f448

17 years agomemtest.cc:
Steve Reinhardt [Sat, 16 Jun 2007 21:05:05 +0000 (14:05 -0700)]
memtest.cc:
No need to initialize memory contents; should come up as 0.

src/cpu/memtest/memtest.cc:
    No need to initialize memory contents; should come up as 0.

--HG--
extra : convert_revision : 1713676956f3d33b4686fee2650bd17027bcc495

17 years agoAdd in some microregs.
Gabe Black [Thu, 14 Jun 2007 20:52:25 +0000 (20:52 +0000)]
Add in some microregs.

--HG--
extra : convert_revision : e8a894c2f7901329bd390a4cfd92209d0e29cf80

17 years agoSign extend byte immediates as well. There might need to be a fancier system in place...
Gabe Black [Thu, 14 Jun 2007 20:52:24 +0000 (20:52 +0000)]
Sign extend byte immediates as well. There might need to be a fancier system in place to handle this in the future.

--HG--
extra : convert_revision : 2c5bd719c770d9a93a57bd29782842f82384863d

17 years agoFix limm.
Gabe Black [Thu, 14 Jun 2007 20:52:23 +0000 (20:52 +0000)]
Fix limm.

--HG--
extra : convert_revision : ab76b11c2bb2f3abc0e7a84f7167d92d16ed074e

17 years agoImplement a handful more instructions and differentiate macroops based on the operand...
Gabe Black [Thu, 14 Jun 2007 20:52:22 +0000 (20:52 +0000)]
Implement a handful more instructions and differentiate macroops based on the operand types they expect.

--HG--
extra : convert_revision : f9c8e694a8c0eb33b988657dca03ab495b65bee8

17 years agoMove the high byte register indices to the right place.
Gabe Black [Thu, 14 Jun 2007 20:52:21 +0000 (20:52 +0000)]
Move the high byte register indices to the right place.

--HG--
extra : convert_revision : 3f04036d598b6572bab6ec06d162b97564a6529c

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Thu, 14 Jun 2007 20:52:20 +0000 (20:52 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86

--HG--
extra : convert_revision : ba718de4d676f6d0bd80c29de46be1f6a2f73feb

17 years agoModified instruction decode method.
Vincentius Robby [Thu, 14 Jun 2007 20:52:19 +0000 (16:52 -0400)]
Modified instruction decode method.
Make code compatible with new decode method.

src/arch/alpha/remote_gdb.cc:
src/cpu/base_dyn_inst_impl.hh:
src/cpu/exetrace.cc:
src/cpu/simple/base.cc:
    Make code compatible with new decode method.
src/cpu/static_inst.cc:
src/cpu/static_inst.hh:
    Modified instruction decode method.

--HG--
extra : convert_revision : a9a6d3a16fff59bc95d0606ea344bd57e71b8d0a

17 years agoFix an assert to allow rounding mode 0.
Gabe Black [Thu, 14 Jun 2007 13:53:27 +0000 (13:53 +0000)]
Fix an assert to allow rounding mode 0.

--HG--
extra : convert_revision : 119cc87ccf939d3a0048d87d18e125deca378bb7

17 years agoMake POP special case its dataSize to default to 64 bits in 64 bit mode.
Gabe Black [Thu, 14 Jun 2007 13:52:08 +0000 (13:52 +0000)]
Make POP special case its dataSize to default to 64 bits in 64 bit mode.

--HG--
extra : convert_revision : 5c6251d962d9997676ffc795bb92eeb588caed39

17 years agoPut the mode in the ExtMachInst.
Gabe Black [Thu, 14 Jun 2007 13:50:58 +0000 (13:50 +0000)]
Put the mode in the ExtMachInst.

--HG--
extra : convert_revision : 7fc6567ab3d35c06901e6c8a0435f7cab819e17e

17 years agoGet rid of an unnecessary debug statement.
Gabe Black [Thu, 14 Jun 2007 13:49:23 +0000 (13:49 +0000)]
Get rid of an unnecessary debug statement.

--HG--
extra : convert_revision : 0b306dd96f5358474ad6a8bf4a949c12bcd139cd

17 years agoGet rid of some debug output and let macroops set headers in their constructor. The...
Gabe Black [Thu, 14 Jun 2007 13:47:52 +0000 (13:47 +0000)]
Get rid of some debug output and let macroops set headers in their constructor. The intention is to allow them to modify the emulation environment struct before it's used to construct its microops.

--HG--
extra : convert_revision : b04fc9ead8e3322fc3af3f14d75e2206ddfbe561

17 years agoFix up param regular expression to not duplicated the escaping \ and to pair up ...
Gabe Black [Thu, 14 Jun 2007 13:45:37 +0000 (13:45 +0000)]
Fix up param regular expression to not duplicated the escaping \ and to pair up \s correctly.

--HG--
extra : convert_revision : b4b790fb8cfd2a9e28568cf978eca70b1c65806b

17 years agoA fix for SPARC_FS compilation.
Gabe Black [Thu, 14 Jun 2007 13:27:08 +0000 (13:27 +0000)]
A fix for SPARC_FS compilation.

--HG--
extra : convert_revision : 8af0dd9c16e7db8ed92f7a71c396841d5ae7e072

17 years agoSeperate the pc-pc and the pc of the incoming bytes, and get rid of the "moreBytes...
Gabe Black [Wed, 13 Jun 2007 20:09:03 +0000 (20:09 +0000)]
Seperate the pc-pc and the pc of the incoming bytes, and get rid of the "moreBytes" which just takes a MachInst.

src/arch/x86/predecoder.cc:
    Seperate the pc-pc and the pc of the incoming bytes, and get rid of the "moreBytes" which just takes a MachInst. Also make the "opSize" field describe the number of bytes and not the log of the number of bytes.

--HG--
extra : convert_revision : 3a5ec7053ec69c5cba738a475d8b7fd9e6e6ccc0

17 years agoFix the operand type tag parser to recognize multi character register names.
Gabe Black [Wed, 13 Jun 2007 18:08:06 +0000 (18:08 +0000)]
Fix the operand type tag parser to recognize multi character register names.

--HG--
extra : convert_revision : e025620e29f2515d51240e96c4a05a4f74bdf72e

17 years agoPartially implement "POP"
Gabe Black [Wed, 13 Jun 2007 18:06:34 +0000 (18:06 +0000)]
Partially implement "POP"

--HG--
extra : convert_revision : ba454579a6a82ce4924102a633e5758fb2a30b2d

17 years agoMove load/store microops into their own file. They still don't do anything, though.
Gabe Black [Wed, 13 Jun 2007 18:05:08 +0000 (18:05 +0000)]
Move load/store microops into their own file. They still don't do anything, though.

--HG--
extra : convert_revision : 251763c614b9056c3ca7a85ef92c416552da893f

17 years agoFix the immediate version of register operations, and get their name to show up corre...
Gabe Black [Wed, 13 Jun 2007 18:01:23 +0000 (18:01 +0000)]
Fix the immediate version of register operations, and get their name to show up correctly.

--HG--
extra : convert_revision : 9fc36b99c9027e35f22983d5d1e22c940fa093de