gem5.git
20 years agoResults of automatic (yet incomplete) merge.
Steve Reinhardt [Mon, 9 Feb 2004 08:30:16 +0000 (00:30 -0800)]
Results of automatic (yet incomplete) merge.

--HG--
extra : convert_revision : 3ad9a929051bfe111a1e10618c8595acbbade542

20 years agoAdd support for memory barriers.
Steve Reinhardt [Mon, 9 Feb 2004 08:22:43 +0000 (00:22 -0800)]
Add support for memory barriers.

arch/alpha/isa_desc:
    Add cache port bindings for mb & wmb.

--HG--
extra : convert_revision : 72f76150fe471d0dc97bd41598cad4d86a035e39

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Sun, 8 Feb 2004 22:27:08 +0000 (17:27 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : b24970f5bbf817d6ef581114178e27f2ab7c3459

20 years agoSeparate template definitions and instantiations into *_impl.hh and *.cc. Eventually...
Erik Hallnor [Sun, 8 Feb 2004 22:26:27 +0000 (17:26 -0500)]
Separate template definitions and instantiations into *_impl.hh and *.cc. Eventually the *.cc fils should be generate by our super-duper python script.

base/compression/null_compression.hh:
    Need some includes.

--HG--
extra : convert_revision : caf52320f6f6ff255e8a93817419ad13ad44224f

20 years agoTotally rework the Range class. Now the range is from [start, end)
Nathan Binkert [Sat, 7 Feb 2004 06:16:50 +0000 (01:16 -0500)]
Totally rework the Range class.  Now the range is from [start, end)
to be consistent with the way that the stl works.  It also makes
lots of other stuff easier.  (Maybe those guys were smart?)
Overload the various comparison operators so that you can test
for overlapping of ranges, etc.

base/range.hh:
    Totally rework the Range class.  Now the range is from [start, end)
    to be consistent with the way that the stl works.  It also makes
    lots of other stuff easier.  (Maybe those guys were smart?)
    Overload the various comparison operators so that you can test
    for overlapping of ranges, etc.

    make parse function private and offer operator= instead
    isValid -> valid
    and for you erik, I add comments
test/Makefile:
    add range.o
test/rangetest.cc:
    better tests

--HG--
extra : convert_revision : dd58720aa3d02f20b03e933f2eaa3320c82bb27a

20 years agoformatting
Nathan Binkert [Sat, 7 Feb 2004 00:47:19 +0000 (19:47 -0500)]
formatting

--HG--
extra : convert_revision : 0cea17bd3a517a1838006d89fac8a923e4576394

20 years agoSmall cleanup
Nathan Binkert [Fri, 6 Feb 2004 23:59:12 +0000 (18:59 -0500)]
Small cleanup

--HG--
extra : convert_revision : 92f6dbd3d2c4336a0f03a9da5c390a7980ca08be

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Fri, 6 Feb 2004 05:13:44 +0000 (00:13 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 158117a2cba91b8cb04f41a418155149bcbba777

20 years agoVarious extraction of common code into separate functions to make life easier.
Erik Hallnor [Fri, 6 Feb 2004 05:13:26 +0000 (00:13 -0500)]
Various extraction of common code into separate functions to make life easier.

--HG--
extra : convert_revision : ae303904e35975e65b4207f543ac93c9816e1f81

20 years agoModify the emulated system calls to support running the SPEC Int
David Oehmke [Thu, 5 Feb 2004 17:16:17 +0000 (12:16 -0500)]
Modify the emulated system calls to support running the SPEC Int
benchmarks for alpha-linux.

arch/alpha/alpha_linux_process.cc:
    Added some more ioctl commands to ignore.
    Set unlink and rename to the new functions.
    Ignore setrlimit, times and rt_sigaction.
    Should eventually provide a function for times.
arch/alpha/alpha_tru64_process.cc:
    Added some more ioctl commands to ignore.
    Set unlink and rename to the new functions.
    Ignore setrlimit.
sim/syscall_emul.cc:
    Added implementations for unlink and rename.
sim/syscall_emul.hh:
    Added unlink and rename functions.
    Added a couple more ioctl requests to ignore.
    Print out the PC of any ioctl commands that fail.

--HG--
extra : convert_revision : 8af21c7fa7d0645d3f9324c9ce70ad33590c3c8e

20 years agoAdd support for "serializing" instructions that flush
Steve Reinhardt [Thu, 5 Feb 2004 05:42:00 +0000 (21:42 -0800)]
Add support for "serializing" instructions that flush
execution pipeline (Alpha trapb & excb).

Add support for write memory barriers (mostly impacts
store buffer).

Add StaticInst flag to indicate memory barriers, though
this is not modeled in the pipeline yet.

arch/alpha/isa_desc:
    Implement trapb, excb, mb, and wmb as insts with
    no execution effect (empty execute() function) but
    with flags that indicate their side effects.

    Also make sure every instruction that needs to go to
    the execute stage has a real opClass value, since we
    are now using No_OpClass to signal insts that can get
    dropped at dispatch.

    StaticInst::branchTarget() is now a const method.
cpu/static_inst.hh:
    Add flags to indicate serializing insts (trapb, excb) and
    memory and write barriers.

    Also declare some StaticInst methods as const methods.
dev/etherlink.hh:
sim/eventq.hh:
sim/serialize.cc:
sim/serialize.hh:
sim/sim_object.hh:
    Make name() return value const.

--HG--
extra : convert_revision : 39520e71469fa20e0a7446b2e06b494eec17a02c

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Wed, 4 Feb 2004 21:55:17 +0000 (16:55 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 2f3653bbd0ab20308dcff5db176dc926402e9ad7

20 years agoChange IIC to use param class. Tweak parameters in CacheTags.
Erik Hallnor [Wed, 4 Feb 2004 21:55:05 +0000 (16:55 -0500)]
Change IIC to use param class. Tweak parameters in CacheTags.

--HG--
extra : convert_revision : 8239a7befe49c81b6b1f239fc478910441f64352

20 years agoMore reformatting of reference parameter declarations.
Steve Reinhardt [Wed, 4 Feb 2004 19:16:30 +0000 (11:16 -0800)]
More reformatting of reference parameter declarations.
The last change only caught the ones with types that
started with capitals.  This pass catches the rest
(mostly STL and uint*_t types).

base/cprintf_formats.hh:
cpu/simple_cpu/simple_cpu.cc:
sim/serialize.cc:
sim/serialize.hh:
    Change "foo_t& foo" to "foo_t &foo".

--HG--
extra : convert_revision : fc7f7425db2aef33e490f952b5ce74c8c36d0d41

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Tue, 3 Feb 2004 17:58:34 +0000 (12:58 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : e94049f2b2dfbd2f1a018ddd6c05a4882d0f4a82

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Tue, 3 Feb 2004 15:51:10 +0000 (10:51 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : 9b8a94cbaacbbb4a53d15c0893ee4d3183f29ce0

20 years agoRemote debugging cleanup and internal debugging support
Nathan Binkert [Tue, 3 Feb 2004 15:50:04 +0000 (10:50 -0500)]
Remote debugging cleanup and internal debugging support

base/kgdb.h:
    Remove flags that aren't used
base/remote_gdb.cc:
    Better debugging:
    - Give each class a name() function so that the trace infrastructure
    knows the correct object name.
    - Make the remote debugger capable of detach.
    - Split out the RGDB trace flag into a bunch of specific flags.
    Remove dead code
    Add a new trap type
base/remote_gdb.hh:
    Add a name() to the various objects for the trace system
base/trace.hh:
    don't need a using directive
    add DPRINTFNR: debug printf, no flag, raw output
kern/tru64/tru64_system.cc:
    use the INT trap type instead of IF

--HG--
extra : convert_revision : 25e610216c6f43d5d328651bba915f71bade059e

20 years agoFix bug: forgot branchTarget() method on indirect branches.
Steve Reinhardt [Tue, 3 Feb 2004 15:19:05 +0000 (07:19 -0800)]
Fix bug: forgot branchTarget() method on indirect branches.

arch/alpha/isa_desc:
    Add missing branchTarget() method for indirect branches.
cpu/static_inst.hh:
    Add comment clarifying when branchTarget() can be used
    on indirect branches.

--HG--
extra : convert_revision : 0dcfb36a9792a338cefceb3d1501825abace7ac5

20 years agoFix handling of uncacheable loads. Make them wait until they're at the tail of
Steve Reinhardt [Tue, 3 Feb 2004 03:09:47 +0000 (19:09 -0800)]
Fix handling of uncacheable loads.  Make them wait until they're at the tail of
the ROB (so we know they're correct-path) before we mark them ready to issue.

--HG--
extra : convert_revision : be1d431bdc939100d79a5fea3e415b3acf9e8d75

20 years agoGet rid of LVQ-port function unit... only used for redundant
Steve Reinhardt [Tue, 3 Feb 2004 02:58:23 +0000 (18:58 -0800)]
Get rid of LVQ-port function unit... only used for redundant
multithreading, which has been gone for a long time.

--HG--
extra : convert_revision : 717d13455483c3adc7b7cbbcc5f7493d51867974

20 years agoClean up some confusing ROBStation fields left over from SS (ea_comp, in_LSQ).
Steve Reinhardt [Tue, 3 Feb 2004 02:53:27 +0000 (18:53 -0800)]
Clean up some confusing ROBStation fields left over from SS (ea_comp, in_LSQ).
Eliminate indirect decoder.cc dependence on rob_station.hh via full_cpu.hh.

--HG--
extra : convert_revision : 9355cddd6cd8bbe100aae1b2d45d2752e76ba3f6

20 years agoinsn->inst
Steve Reinhardt [Tue, 3 Feb 2004 02:14:11 +0000 (18:14 -0800)]
insn->inst

--HG--
extra : convert_revision : fcc556fb7e65855ec3c04ef272177c8e7a38fff9

20 years agoChange "Foo& foo" declarations to "Foo &foo".
Steve Reinhardt [Mon, 2 Feb 2004 23:55:35 +0000 (15:55 -0800)]
Change "Foo& foo" declarations to "Foo &foo".
This primarily to be internally consistent (sometimes we used one,
sometimes the other, even within the same line of code!).
I picked the latter to be symmetric with "Foo *foo".

base/cprintf_formats.hh:
base/range.hh:
base/refcnt.hh:
base/res_list.hh:
base/statistics.hh:
base/str.hh:
cpu/exec_context.hh:
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
sim/serialize.cc:
sim/serialize.hh:
sim/syscall_emul.hh:
    Change "Foo& foo" declarations to "Foo &foo".

--HG--
extra : convert_revision : ca1b0e85a578b539214bda3b8d61ac23792f2e87

20 years agoMore conversions of ref-counted parameters to references:
Steve Reinhardt [Mon, 2 Feb 2004 23:45:22 +0000 (15:45 -0800)]
More conversions of ref-counted parameters to references:
Statistics::NodePtr, StaticInstPtr, ethernet PacketPtr.

base/statistics.hh:
    Change NodePtr parameters to Nodeptr &.
cpu/exetrace.hh:
    Change StaticInstPtr parameters to StaticInstPtr &.
dev/etherbus.cc:
dev/etherbus.hh:
dev/etherdump.cc:
dev/etherdump.hh:
dev/etherint.hh:
dev/etherlink.cc:
dev/etherlink.hh:
dev/ethertap.cc:
dev/ethertap.hh:
    change PacketPtr parameters to PacketPtr &.

--HG--
extra : convert_revision : a778efdca33b0ec5beb76cf47db0e9e4728897ee

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Mon, 2 Feb 2004 19:11:59 +0000 (14:11 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 0cceed934a4f44c27c8293780fc927ef2c00869d

20 years agoChange the way the IIC way list is handled in the primary table.
Erik Hallnor [Mon, 2 Feb 2004 19:10:24 +0000 (14:10 -0500)]
Change the way the IIC way list is handled in the primary table.

--HG--
extra : convert_revision : 476f738d59446bdc43d1bd67950aac310b22a42c

20 years agoChange MemReqPtr parameters to references.
Steve Reinhardt [Mon, 2 Feb 2004 18:47:21 +0000 (10:47 -0800)]
Change MemReqPtr parameters to references.
This avoids incrementing and decrementing the MemReq
reference counters on every call and return.

arch/alpha/alpha_memory.cc:
arch/alpha/alpha_memory.hh:
cpu/exec_context.hh:
cpu/memtest/memtest.cc:
cpu/memtest/memtest.hh:
dev/alpha_console.cc:
dev/alpha_console.hh:
    Change MemReqPtr parameters to references.

--HG--
extra : convert_revision : 3ba18bdd9f996563988402576bfdd3430e1ab1e5

20 years agoMake stats:dump_period work even if dump_cycle isn't set.
Steve Reinhardt [Mon, 2 Feb 2004 15:19:45 +0000 (07:19 -0800)]
Make stats:dump_period work even if dump_cycle isn't set.

--HG--
extra : convert_revision : 9e85c0fa0f6c5393dd8e91034a49975628cf825d

20 years agoFixed the spec2000.ini file and made some cosmetic changes to the
Andrew Schultz [Fri, 30 Jan 2004 22:38:25 +0000 (17:38 -0500)]
Fixed the spec2000.ini file and made some cosmetic changes to the
setup-spec script

util/setup-spec:
    Made some changes so the information contained in the ini file explains
    what the init_param value corresponds to

--HG--
extra : convert_revision : 4082209f920244c262150c224a92ea21a55febd5

20 years agoAdded the spec2000 ini file
Andrew Schultz [Fri, 30 Jan 2004 22:20:03 +0000 (17:20 -0500)]
Added the spec2000 ini file

--HG--
extra : convert_revision : 981a5a536a25b07dd54ed0166b291876b0a498c0

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Fri, 30 Jan 2004 19:20:32 +0000 (14:20 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 3d84d17bc48ad23edf97e53a096821318741d775

20 years agomajor rework/rewrite of the breakdown script
Steve Raasch [Fri, 30 Jan 2004 18:51:09 +0000 (13:51 -0500)]
major rework/rewrite of the breakdown script

--HG--
extra : convert_revision : 2e1d186e0f20b6089300b82a3f6dcb1d0b44c09d

20 years agoUse $(MAKE) instead of 'make' when building libelf (suppresses an error message about...
Steve Reinhardt [Fri, 30 Jan 2004 17:16:34 +0000 (09:16 -0800)]
Use $(MAKE) instead of 'make' when building libelf (suppresses an error message about -j).
Check for, delete, and die on zero-length .d files.

--HG--
extra : convert_revision : 71b7f9e639d96fb7ed30952b142d69c34c725774

20 years agoFix libelf generation so it works on a clean make -j.
Steve Reinhardt [Fri, 30 Jan 2004 16:18:20 +0000 (08:18 -0800)]
Fix libelf generation so it works on a clean make -j.

--HG--
extra : convert_revision : 377633aa2c04695c598ee82a9529d2e40f0ffef7

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Fri, 30 Jan 2004 03:47:54 +0000 (22:47 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : c03206291cfa9abd80b8ee3f2f0135eb23d10242

20 years agowrap debugging stuff with #ifdef DEBUG
Nathan Binkert [Fri, 30 Jan 2004 03:30:14 +0000 (22:30 -0500)]
wrap debugging stuff with #ifdef DEBUG

--HG--
extra : convert_revision : 8205633c1c1b49b04f389aa40f95fbbc03a43fb6

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Fri, 30 Jan 2004 01:15:54 +0000 (20:15 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : a74364b249fc6164ef2752ff1e3d6e414b5ab79d

20 years agodelete the data in the arglist when the list is destroyed,
Nathan Binkert [Thu, 29 Jan 2004 22:44:08 +0000 (17:44 -0500)]
delete the data in the arglist when the list is destroyed,
not while printing out the data.  This allows the data
to be dumped more than once.

base/cprintf.hh:
    need a destructor

--HG--
extra : convert_revision : 235e9fe24488ac4c0ae1b562ef9fa6e0bd1e899c

20 years agowhack debugging statement
Nathan Binkert [Thu, 29 Jan 2004 21:33:03 +0000 (16:33 -0500)]
whack debugging statement

--HG--
extra : convert_revision : f623d35a6e5a234e2b203974012c653b91826dbf

20 years agoFix character input by handling the character and the
Nathan Binkert [Thu, 29 Jan 2004 21:32:03 +0000 (16:32 -0500)]
Fix character input by handling the character and the
special console values separately.

dev/alpha_console.cc:
    use new console specific input function

--HG--
extra : convert_revision : 08997d6115d2aac3a26cac2774b3c3fc0cd76ab0

20 years agoLogical test fix.
Erik Hallnor [Thu, 29 Jan 2004 19:42:30 +0000 (14:42 -0500)]
Logical test fix.

--HG--
extra : convert_revision : 4b009938216748275e8b74f7a768a8ef257fb691

20 years agoAdd operator= to CacheBlk to simplify some functions.
Erik Hallnor [Thu, 29 Jan 2004 19:36:18 +0000 (14:36 -0500)]
Add operator= to CacheBlk to simplify some functions.

--HG--
extra : convert_revision : 949a24f46f647dc2c4d0b60df4684b4f7164a04f

20 years agoremove #include of nonexistent file
Nathan Binkert [Thu, 29 Jan 2004 15:32:01 +0000 (10:32 -0500)]
remove #include of nonexistent file

sim/universe.cc:
    oops.  this doesn't exist

--HG--
extra : convert_revision : 2cfb3680e4ebe3f27f22a79f853d4d6df445e65a

20 years agoprovide an output stream for simulator output. (This takes place of the
Nathan Binkert [Thu, 29 Jan 2004 05:38:18 +0000 (00:38 -0500)]
provide an output stream for simulator output.  (This takes place of the
statStream catchall that we had before)
Also provide an optional output directory that multiple simulator output
files can be written to.
Make most output files use the output directory

base/misc.cc:
    send warnings to the outputStream as well
base/trace.cc:
    dprintf_stream defaults to cerr
dev/console.cc:
    use the output directory for the console output if it exists
dev/etherdump.cc:
    dump to the output directory if it exists
sim/builder.cc:
sim/builder.hh:
    move constructor and destructor to .cc file
    use a function to get the stream that the builder dumps its
    output to, and create a separate file in the output directory
    if able
sim/main.cc:
    statStream -> outputStream
sim/serialize.cc:
    dump checkpoints to the output directory if specified
sim/universe.cc:
    provide an output stream for simulator output.  (This takes place of the
    statStream catchall that we had before)
    Also provide an optional output directory that multiple simulator output
    files can be written to.

--HG--
extra : convert_revision : 03abce20edbbf7ec19c9ddd8d69ec8485c383532

20 years agouse $ENV{PWD} so that the amd paths work ok.
Nathan Binkert [Thu, 29 Jan 2004 05:37:07 +0000 (00:37 -0500)]
use $ENV{PWD} so that the amd paths work ok.
Also, compare real paths to ensure that the links point
to the right place

--HG--
extra : convert_revision : f4127a67f02b714808c6d2181fabf245ed2309c0

20 years agocleanup on aisle 5
Nathan Binkert [Thu, 29 Jan 2004 05:36:22 +0000 (00:36 -0500)]
cleanup on aisle 5

base/statistics.cc:
    dead code

--HG--
extra : convert_revision : 8f3fd638acdf7a704475ea90b607a3225a3c174d

20 years agoRemove references to dep_tree to fix build
Andrew Schultz [Thu, 29 Jan 2004 04:00:30 +0000 (23:00 -0500)]
Remove references to dep_tree to fix build

--HG--
extra : convert_revision : dff311c1a18bd01750c1b5902410c23e0f43b798

20 years agoremoving the last vestages of the dep-tree stuff (hasn't worked for a LONG time)
Steve Raasch [Wed, 28 Jan 2004 23:06:07 +0000 (18:06 -0500)]
removing the last vestages of the dep-tree stuff (hasn't worked for a LONG time)

--HG--
extra : convert_revision : 145d56564ccca3a3c1c3d9115a4b8a5fb52c301d

20 years agoMinor optimization of new LRU stack code.
Steve Reinhardt [Wed, 28 Jan 2004 06:26:59 +0000 (22:26 -0800)]
Minor optimization of new LRU stack code.

--HG--
extra : convert_revision : 953bc2f1ceab1cec9f48d65b94cc075655f6e9ec

20 years agoMerge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
Steve Reinhardt [Wed, 28 Jan 2004 03:33:59 +0000 (19:33 -0800)]
Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5

--HG--
extra : convert_revision : 2005ed2f551f2a80cbf62a41daaa3c4fa5af6fb3

20 years agoa bunch of warning fixes
Nathan Binkert [Tue, 27 Jan 2004 22:56:23 +0000 (17:56 -0500)]
a bunch of warning fixes

arch/alpha/isa_desc:
    don't say warn: Warning:
base/misc.cc:
    avoid printing two newlines in a row
sim/main.cc:
    print out a message just before we enter the event queue

--HG--
extra : convert_revision : 2a824d4b67661903fc739a0fb0759aa91d72382c

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Tue, 27 Jan 2004 21:40:17 +0000 (16:40 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 47f69e4fb2d8727927e40fb6f2abf3dcab654c12

20 years agoRemove SS-like code from lru.hh/cc
Erik Hallnor [Tue, 27 Jan 2004 21:40:04 +0000 (16:40 -0500)]
Remove SS-like code from lru.hh/cc

--HG--
extra : convert_revision : 66baf998671a24e6a630d2f35c2f529418cd4d5b

20 years agoAlways write out a value for pending so that an m5.fast simulator can
Nathan Binkert [Tue, 27 Jan 2004 18:55:50 +0000 (13:55 -0500)]
Always write out a value for pending so that an m5.fast simulator can
generate a checkpoint that an m5.debug simulator can use

--HG--
extra : convert_revision : eec2d94013119236a9c65c9b5fb6c2ccb0480f51

20 years agoAdd trace flag for the sampling CPU
Nathan Binkert [Tue, 27 Jan 2004 17:45:12 +0000 (12:45 -0500)]
Add trace flag for the sampling CPU

--HG--
extra : convert_revision : 928588d46fa069e869416f4f5df8041849625e9f

20 years agoMinor cleanup of sb_issue() in full_cpu/issue.cc.
Steve Reinhardt [Mon, 26 Jan 2004 05:53:32 +0000 (21:53 -0800)]
Minor cleanup of sb_issue() in full_cpu/issue.cc.

--HG--
extra : convert_revision : 4bf69125c37a067a3a06022226a7eb38dcaaf6d1

20 years agoChange the way the hierarchy is separated. Now all virtual functions are in the inter...
Erik Hallnor [Sun, 25 Jan 2004 10:01:00 +0000 (05:01 -0500)]
Change the way the hierarchy is separated. Now all virtual functions are in the interfaces. This allows new bus models to be used without major hassle. And I thought it was time to change it all again anyways.

cpu/simple_cpu/simple_cpu.cc:
    Switch doEvents to doEvents()

--HG--
extra : convert_revision : 14b9517017e76c7b941247004393bf260f397d9a

20 years agoI hate compiling decoder.cc every time I touch something.
Erik Hallnor [Wed, 21 Jan 2004 19:22:55 +0000 (14:22 -0500)]
I hate compiling decoder.cc every time I touch something.

--HG--
extra : convert_revision : b79519452947ea7b110922d5a3dae2f3dfc0b916

20 years agoSet LIBELF_LINUX to 0 to build on zax. Builds
Steve Reinhardt [Tue, 20 Jan 2004 18:53:18 +0000 (13:53 -0500)]
Set LIBELF_LINUX to 0 to build on zax.  Builds
but did not test... however the only thing this
affects in libelf is the header, so I don't expect
any functional problems.

base/loader/elf_object.cc:
    Set LIBELF_LINUX to 0 to build on zax.

--HG--
extra : convert_revision : d024b33deff6fc8ea6f1d465f76dc8d9d63254ab

20 years agoMake each stat take up one full line. This allows us to use grep
Nathan Binkert [Thu, 15 Jan 2004 21:33:58 +0000 (16:33 -0500)]
Make each stat take up one full line.  This allows us to use grep
to find and remove stats from the files so we can put less
burden on the python interpreter.

base/statistics.cc:
    Manually insert newlines into the python code so that we now have one
    stat per line.  (Make it so we can use grep -v to remove stats)
test/stattest.cc:
    update to reflect changes in how python is accessed

--HG--
extra : convert_revision : 554edcf9c795b33d00d3d15554447c8accebebfa

20 years agoMake the python stats script more robust
Nathan Binkert [Thu, 15 Jan 2004 19:29:34 +0000 (14:29 -0500)]
Make the python stats script more robust

--HG--
extra : convert_revision : a7680d5cdeac96345e8f521cfb96fccaa3e7a7f6

20 years agoMake dump cycle relative
Nathan Binkert [Thu, 15 Jan 2004 19:29:09 +0000 (14:29 -0500)]
Make dump cycle relative

--HG--
extra : convert_revision : 3434f60fa08d1543358c1209be8a5cfbe43a53bf

20 years agoUpdate simple-* configs to Erik's new hierarchy parameter thing.
Steve Reinhardt [Thu, 15 Jan 2004 06:50:12 +0000 (22:50 -0800)]
Update simple-* configs to Erik's new hierarchy parameter thing.

--HG--
extra : convert_revision : de591f6ecfc9a0a20caefb4b82084d1b2ef3433b

20 years agoFixes and cleanup to elf loader code.
Steve Reinhardt [Thu, 15 Jan 2004 06:30:16 +0000 (22:30 -0800)]
Fixes and cleanup to elf loader code.

base/loader/elf_object.cc:
    - Use program header instead of section headers for loading.
    The old code doesn't work for Alpha/Linux user binaries.

    - Deal properly with single-segment ELF executables (e.g. kernels)...
    haven't tested this but it looks like it matches the functionality
    of the patch the L4::Pistachio guys sent.

    - Factor load symbol code into one common function.

    - Some formatting to match style conventions.

    - Only include libelf stuff in .cc file, not .hh.
base/loader/elf_object.hh:
    - Use program header instead of section headers for loading.
    The old code doesn't work for Alpha/Linux user binaries.

    - Factor load symbol code into one common function.

    - Only include libelf stuff in .cc file, not .hh.

--HG--
extra : convert_revision : 782062d09d43083b01e65cd645c941f49c27640a

20 years agoMerge codebases for CompressedMemBank and SimpleMemBank into one templatized class
Erik Hallnor [Wed, 14 Jan 2004 21:14:15 +0000 (16:14 -0500)]
Merge codebases for CompressedMemBank and SimpleMemBank into one templatized class

--HG--
extra : convert_revision : 04feb72fc4edbbbe1b37b7f618c9fbcbc8a72358

20 years agoUse the new init phase to initialized the switch event
Nathan Binkert [Wed, 14 Jan 2004 07:06:35 +0000 (02:06 -0500)]
Use the new init phase to initialized the switch event
so that we can make the first switch time relative.

--HG--
extra : convert_revision : c81beba2e1bd8629d6c7b386bb213980434030ec

20 years agoSetup initialization callbacks
Nathan Binkert [Wed, 14 Jan 2004 07:00:20 +0000 (02:00 -0500)]
Setup initialization callbacks

--HG--
extra : convert_revision : ec56a839a0489c5494bfcd9ead0fc3866f1e8ac2

20 years agoupdate for new hierarchy parameters
Erik Hallnor [Tue, 13 Jan 2004 20:23:54 +0000 (15:23 -0500)]
update for new hierarchy parameters

--HG--
extra : convert_revision : a65f77d6ab704609d9c2ae2c85d4f893fa198cf9

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Tue, 13 Jan 2004 07:10:48 +0000 (02:10 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 52437e42f15899db46525ad91b2e43c2a96ace36

20 years agoChange to a new centralized way to specify the memory hierarchy parameters (do_data...
Erik Hallnor [Tue, 13 Jan 2004 07:10:35 +0000 (02:10 -0500)]
Change to a new centralized way to specify the memory hierarchy parameters (do_data and do_events). If you use the defaults (false and true respectively) you don't have to change your INI files.

arch/alpha/isa_traits.hh:
    Add a constant for the maximum address value called MaxAddr.

--HG--
extra : convert_revision : 1371e8b713cc6ed134093e9c208db35dc9741ac7

20 years ago- quick support for using a regular expression to select
Nathan Binkert [Mon, 12 Jan 2004 23:39:39 +0000 (18:39 -0500)]
- quick support for using a regular expression to select
which stats to print
- print out the subname

--HG--
extra : convert_revision : 2960bd33654e55fe0f6279b09dce42b1216188c8

20 years agoCommit the correct version of the code
Nathan Binkert [Mon, 12 Jan 2004 20:45:51 +0000 (15:45 -0500)]
Commit the correct version of the code

--HG--
extra : convert_revision : 74555b2676fe20d4a742a272b6c97e3a8a237d68

20 years agomake the python stuff executable
Nathan Binkert [Mon, 12 Jan 2004 18:38:37 +0000 (13:38 -0500)]
make the python stuff executable

--HG--
extra : convert_revision : 04c9ff03880f55483466e56109536b74d9163ccd

20 years agoCheck in python script that reads the python stats output.
Nathan Binkert [Mon, 12 Jan 2004 18:31:59 +0000 (13:31 -0500)]
Check in python script that reads the python stats output.
Still needs a lot of work, but it's at least as good as the
normal output, and has some features that normal ouput is missing
such as bin totalling with correct formulas and totalling of
2d vectors and such.  It will also filter out specific stats
for printing.  (basically grep, but no mistakes.)

--HG--
extra : convert_revision : 05d0f0489483a32145cf6508122cfbc7ea57e204

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Mon, 12 Jan 2004 02:22:33 +0000 (21:22 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : bff2fb78e205f327ce8d04f3ae1b2352857ab824

20 years agoMinor cleanup to bk ignore and makefile libelf rule.
Steve Reinhardt [Sun, 11 Jan 2004 23:26:48 +0000 (15:26 -0800)]
Minor cleanup to bk ignore and makefile libelf rule.

--HG--
extra : convert_revision : 77dd858344a74dea15bb36bcb0de04f3af9260f3

20 years agoModify handling of serialize:dir parameter to make it more useful.
Steve Reinhardt [Sun, 11 Jan 2004 23:24:18 +0000 (15:24 -0800)]
Modify handling of serialize:dir parameter to make it more useful.

Move global checkpoint-related functions and vars into Checkpoint class (as statics).

arch/alpha/pseudo_inst.cc:
dev/disk_image.cc:
    Move global checkpoint-related functions and vars
    into Checkpoint class (as statics).
sim/serialize.cc:
    Move global checkpoint-related functions and vars
    into Checkpoint class (as statics).

    Checkpoint constructor now takes checkpoint directory name instead
    of file name.

    Make serialize:dir parameter actually set checkpoint directory name
    instead of directory in which checkpoint directory is created.  If
    the value contains a '%', the curTick value is sprintf'd into the
    format to create the directory name.  The default is backwards compatible
    with the old fixed name ("m5.%012d").
sim/serialize.hh:
    Move global checkpoint-related functions and vars
    into Checkpoint class (as statics).

    Checkpoint constructor now takes checkpoint directory name instead
    of file name.

--HG--
extra : convert_revision : d0aa87b62911f405a4f5811271b9e6351fdd9fe4

20 years agoFix cprintf bug, plus minor cleanup & better error messages.
Steve Reinhardt [Sun, 11 Jan 2004 23:09:27 +0000 (15:09 -0800)]
Fix cprintf bug, plus minor cleanup & better error messages.

base/cprintf.cc:
    Fix bug where a call with a format string with no specifiers
    but one or more arguments would crash.  Old code tried to print
    extra args using last available format, but in this case there
    was no format, hence the problem.  Now we just print "<extra arg>"
    for each extra arg.

    Also reorganized code a bit to make scope of fmt variable
    match the scope in which you can be confident it's meaningful.
base/cprintf.hh:
    Print specific error message instead of calling format_invalid().
base/cprintf_formats.hh:
    Clear Format object in constructor.
    Use specific error messages instead of format_invalid() function.

--HG--
extra : convert_revision : 87d5e902174e3eb2583131d056742af166540db0

20 years agothe build directory is now correctly created
Ali Saidi [Fri, 9 Jan 2004 03:42:21 +0000 (22:42 -0500)]
the build directory is now correctly created

--HG--
extra : convert_revision : 4a7b91821e2de64e400417f8ac503af7e596571d

20 years agoFixed another small libelf problem, everything should work now, on any
Ali Saidi [Thu, 8 Jan 2004 21:35:47 +0000 (16:35 -0500)]
Fixed another small libelf problem, everything should work now, on any
machine.

base/loader/elf_object.hh:
    put #defines for libelf that normally arn't defined so that -Wundef
    doesn't cause problems.

--HG--
extra : convert_revision : fa2de6aa94c7ddbaa59990db4473402b0df7d93a

20 years agoshould now build... fixed relative path problem
Ali Saidi [Thu, 8 Jan 2004 19:13:31 +0000 (14:13 -0500)]
should now build... fixed relative path problem

--HG--
extra : convert_revision : 78c9445993a84b68be1b0a477555246f1ea6ce0c

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Thu, 8 Jan 2004 17:25:49 +0000 (12:25 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : b7411b25ae9e3a546996aec59e1a67cbe728da85

20 years agoChanged elf_object.* to use libelf for reading elf files. The makefile
Ali Saidi [Thu, 8 Jan 2004 00:46:45 +0000 (19:46 -0500)]
Changed elf_object.* to use libelf for reading elf files. The makefile
and setup filed had to be modified to build libelf. The ext repository
MUST exist in the directory below m5!

base/loader/elf_object.cc:
base/loader/elf_object.hh:
    now uses libelf to read elf binaries

--HG--
extra : convert_revision : b70511f5379edf35d639f3bb64b786cb0bd180af

21 years agoImprove python output support
Nathan Binkert [Sun, 28 Dec 2003 17:48:13 +0000 (12:48 -0500)]
Improve python output support
fix some bugs

base/statistics.cc:
    -  Move the python dump stream stuff into the statistics package
    because it needs more control over the file when there
    are multiple dumps
    -  add a subname to the output
    -  make all of the stats a list instead of variable arguments to
    get around the 255 argument limit
    -  the description needs to be triple quoted
    -  avoid errors for formulas that don't have any root element
    set up.
base/statistics.hh:
    -  get rid of mode_python and just separate python dumping from
    regular stats dumping
    -  fix a huge bug that made a Formula use a VectorData instead
    of a FormulaData

--HG--
extra : convert_revision : 7303cff3ccdcc3d306ab17375219fc7fecac7e5e

21 years agoAdd a uni-directional bus bridge
Erik Hallnor [Sun, 28 Dec 2003 05:41:47 +0000 (00:41 -0500)]
Add a uni-directional bus bridge

--HG--
extra : convert_revision : 37d30638eb0d988fc1089c7945f535e2979ca8e4

21 years agoAdd python output support to the statistics package!
Nathan Binkert [Wed, 24 Dec 2003 08:25:36 +0000 (03:25 -0500)]
Add python output support to the statistics package!

base/statistics.cc:
base/statistics.hh:
    -  add python output support to the statistics package
    -  each statistic type has a python() member function that takes
    a Python object to which the stat will output it's python
    representation
    -  add getStatData hack so that the StatData pointer can be looked
    up by the proxies with their opaque pointer to the stat they're
    proxying for.  This is necessary because the proxy really proxies
    for the bin and not the stat.  Be nice to figure out how to get
    rid of it.  The hack is used so that the str() function of a
    proxy can properly name itself.
    -  To print formula stats, every stat has a str() function that
    converts that stat to a string that python can execute to get
    a value.
test/Makefile:
    add python stuff
test/stattest.cc:
    add more tests and test python support

--HG--
extra : convert_revision : 513814ab0a125606897f2c57dccdf22879032ef9

21 years agoinitial basic hooks into the stats package to output python code
Nathan Binkert [Wed, 24 Dec 2003 07:35:33 +0000 (02:35 -0500)]
initial basic hooks into the stats package to output python code
python dumping takes a name for the output data

base/statistics.cc:
base/statistics.hh:
    initial basic hooks into the stats package to output python code

--HG--
extra : convert_revision : 37f52dc03df50aa90346dc9ca341f961e7e855e8

21 years agoRandom cleanup
Nathan Binkert [Wed, 24 Dec 2003 07:25:26 +0000 (02:25 -0500)]
Random cleanup

base/statistics.hh:
    -  use a typedef to get at bin_t
    -  clean up template declaration
    -  public access to typedefs

--HG--
extra : convert_revision : 0650c5a1cba51c7af04790498af0d354884be0ee

21 years agoformatting for consistency
Nathan Binkert [Wed, 24 Dec 2003 07:22:43 +0000 (02:22 -0500)]
formatting for consistency

--HG--
extra : convert_revision : f859244880dcc2be9424edaac0c73adfd467221e

21 years agomore readable formatting
Nathan Binkert [Wed, 24 Dec 2003 07:17:20 +0000 (02:17 -0500)]
more readable formatting

--HG--
extra : convert_revision : 99bd142099482dbd04645a0f44ac63d2467b883c

21 years agoRandom cleanup to make things work a bit better
Nathan Binkert [Wed, 24 Dec 2003 06:45:56 +0000 (01:45 -0500)]
Random cleanup to make things work a bit better

base/statistics.cc:
    -  give an internal name to statistics that aren't printable
    -  speed up reset a tad
    -  Make sure that the original value of the current bin is restored properly
    -  check for the case where there are no subnames so we don't have an error
    -  check to make sure that the formula's root is set before accessing it
base/statistics.hh:
    -  clean up includes a bit
    -  deal with the case where there are no subnames
    -  get rid of remnants of FS_MEASURE stuff

--HG--
extra : convert_revision : 1e4338fc2b225647df47641b04c13b7046b2e114

21 years agonever print the cdf or pdf or the overflow bucket if we're simplescalr
Nathan Binkert [Wed, 24 Dec 2003 05:22:02 +0000 (00:22 -0500)]
never print the cdf or pdf or the overflow bucket if we're simplescalr

--HG--
extra : convert_revision : 921ad80a5c671fee9eab3f389636dccc101d18f6

21 years ago- change the FormatFlags into more general StatFlags
Nathan Binkert [Wed, 24 Dec 2003 04:53:43 +0000 (23:53 -0500)]
-  change the FormatFlags into more general StatFlags
-  make init and print StatFlags
-  default_mode -> DefaultMode
-  the display mode is no longer needed as part of the stat
pass it into the display functions so the mode can be determined
from dump to dump
-  get rid of old simplescalar bug and make the distribution min_val
work correctly
-  get rid of the DisplayMode parameter to distribution updates since
it is no longer needed

--HG--
extra : convert_revision : 386f69f4d12fb91faf60690aaab08542e009e555

21 years ago- Allow the stats package user to determine in which mode to dump
Nathan Binkert [Wed, 24 Dec 2003 02:45:48 +0000 (21:45 -0500)]
-  Allow the stats package user to determine in which mode to dump
-  Factor out the formatted output into a display function
-  Make the stats package support tracing
-  Clean up output of binned data

base/statistics.cc:
    -  Factor out the formatted output into a display function and
    pass in the mode
    -  Make the stats package support tracing
    -  Clean up output of binned data
    -  Get rid of the list of binned stats and the map of bins
    since it is no longer needed for output
base/statistics.hh:
    -  Allow the stats package user to determine in which mode to dump

--HG--
extra : convert_revision : a1d5fc728f4dc22a851d58ea89d44018a94a64c7

21 years agoMake it so you can override CC and CXX
Nathan Binkert [Wed, 24 Dec 2003 01:59:30 +0000 (20:59 -0500)]
Make it so you can override CC and CXX

--HG--
extra : convert_revision : 104febf47752f31b4e1b6c400fb040ed108bc331

21 years agoMake this compile with NDEBUG defined
Nathan Binkert [Tue, 23 Dec 2003 19:54:12 +0000 (14:54 -0500)]
Make this compile with NDEBUG defined

--HG--
extra : convert_revision : 37105cc901d7d10cee31bded926683a81577cdd2

21 years agoadd support for simple character input via the system console
Nathan Binkert [Mon, 22 Dec 2003 22:51:14 +0000 (17:51 -0500)]
add support for simple character input via the system console

dev/alpha_access.h:
    -  use our standard types instead of this extra typedef
    -  advance the ALPHA_ACCESS version since the interface
    has changed.  *this means you need a new console binary*
    -  shuffle a couple things around to pack the data structure
    a bit better
    -  add a placeholder for character input
dev/alpha_console.cc:
    Clean up the read code path a bit and add support for character
    input via the console

    Clean up the write path and use a switch instead of a bunch of
    if statements

--HG--
extra : convert_revision : a1a5bc8fed9ec9c4c46548fdf79604661668b81a

21 years agoFix binary path in configs/kernel/base.ini.
Steve Reinhardt [Mon, 22 Dec 2003 16:47:55 +0000 (08:47 -0800)]
Fix binary path in configs/kernel/base.ini.

--HG--
extra : convert_revision : 13bd8234e8472bf693583f9b4090746cb57d55ae

21 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
Erik Hallnor [Mon, 22 Dec 2003 03:47:33 +0000 (22:47 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5

--HG--
extra : convert_revision : 8f6f24d9c4ea5e3c12174fc0338cb441c45c8591

21 years agoAdd fully functional snooping to the hierarchy.
Erik Hallnor [Mon, 22 Dec 2003 03:43:48 +0000 (22:43 -0500)]
Add fully functional snooping to the hierarchy.

--HG--
extra : convert_revision : 928b6b8cb510c4b6c6ca649424769c3602b8f81e