Commit graph

1555 commits

Author SHA1 Message Date
Steve Reinhardt
c929ee2c10 Byproducts of aborted attempt to refine 'parent' proxy semantics.
Mostly cleanup of mpy_importer.mpy_parse().

python/m5/__init__.py:
    Move panic() up to top in case we want to use it
    in mpy_importer (though I ended up not doing that
    after all).
python/m5/config.py:
    Add a couple of comments and a check for expressions
    like parent.any.foo (which is illegal).

--HG--
extra : convert_revision : dfc99ac9b1a2d91a736ca0b773b6d3c528a4f3cc
2005-03-18 13:34:28 -05:00
Steve Reinhardt
8b9e38c303 Merge zizzer.eecs.umich.edu:/z/stever/bk/m5-head
into zizzer.eecs.umich.edu:/z/stever/bk/m5-py

--HG--
extra : convert_revision : 39f30bd052c0f2b88524311d674bad7a0fae6358
2005-03-16 23:10:22 -05:00
Steve Reinhardt
0903013669 Allow proxies to refer to proxies in config files.
python/m5/config.py:
    Allow proxies to refer to other proxies and resolve by recurseivly calling unproxy().
    Not sure this works completely (since I don't have any examples to test it on)
    but it doesn't seem to break any existing config scripts.

--HG--
extra : convert_revision : d7fc272d0777d85f89104dfb5d1c5e4d8ddd6d6f
2005-03-16 23:10:17 -05:00
Nathan Binkert
ab5eb7d455 Make panic work in m5.config
python/m5/config.py:
    get panic from the m5 package.

--HG--
extra : convert_revision : 0965c13086f5eef7214298227c34cd9693534555
2005-03-16 20:32:37 -05:00
Ron Dreslinski
901aeb24eb Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/timing_L1

--HG--
extra : convert_revision : f7c6ead8e9b2d0b5682d7bb40f5a85d4fe402896
2005-03-16 18:31:20 -05:00
Ron Dreslinski
f2dd820972 No need for this ifdef, since the entire process.hh is surounded by an ifndef FULL_SYSTEM
--HG--
extra : convert_revision : 81009e5c468eaaee06c83c35f1d05ed2863299a4
2005-03-16 18:26:32 -05:00
Ron Dreslinski
9d6fcfd314 Make the stack size default to 16MB in eio processes
--HG--
extra : convert_revision : 1b34b36a8103d091a368917dcbb61c2cc51a471c
2005-03-16 18:18:59 -05:00
Ron Dreslinski
14c461c93c Fixed the super/parent change fpr splash2 benchmarks
configs/splash2/run.mpy:
    Change super to parent

--HG--
extra : convert_revision : 61d45880b5e334200ebebc24d757c97cbeb048f6
2005-03-16 15:55:44 -05:00
Ron Dreslinski
486c446110 Remove DUALCPU environment variable and add NUMCPUS, which will build NUMCPUS worth of CPU's. Default is 1 cpu.
--HG--
extra : convert_revision : de6adf5a2b2a09eacb099b3904df0c288fd6b33c
2005-03-16 15:45:53 -05:00
Ron Dreslinski
edaf99eddf Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/clean

--HG--
extra : convert_revision : 6cdd83efc43322d1ccb34976bdece2f01e7cba01
2005-03-16 15:00:56 -05:00
Ron Dreslinski
b411e0d4ac Move the creation of the L2 out of the memory base (fix for Ali) and make a wrapper that does it
--HG--
extra : convert_revision : 1b878d01667b64be7f5c05faadbf52789bb51616
2005-03-16 14:58:27 -05:00
Lisa Hsu
d40a1c6573 Some changes to NSGigE's DPRINTF's that helped when I was doing NAT stuff.
--HG--
extra : convert_revision : d36c84a835667d4c67f46432a90b9557b0710eac
2005-03-16 13:55:58 -05:00
Ron Dreslinski
01caea6df8 Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/timing_L1

--HG--
extra : convert_revision : 109c051304ccbcffce039cbae94ce2d26e449a0b
2005-03-16 13:49:15 -05:00
Lisa Hsu
bc6baa4049 Merge zizzer:/bk/m5
into zizzer.eecs.umich.edu:/.automount/zed/z/hsul/work/m5/pact05

--HG--
extra : convert_revision : e7ff23f6ac4e434d8b3117275df12fec03964a55
2005-03-16 10:49:42 -05:00
Steve Reinhardt
d805221839 Forgot to commit run.mpy with last changeset (really belongs there).
--HG--
extra : convert_revision : 67055c33cc3b2b115595d3cd4a3df5356ca970f9
2005-03-16 10:39:02 -05:00
Ron Dreslinski
d97590e29d Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/timing_L1

--HG--
extra : convert_revision : 848757d0f18cfb33620cfa4b084a9b102b2744c0
2005-03-16 10:31:22 -05:00
Ron Dreslinski
df012f26fa Fix the bad addr check to check for allowable addresses in the nxm address space
arch/alpha/alpha_tru64_process.cc:
sim/process.cc:
sim/process.hh:
    Add an address range for the nxm
sim/syscall_emul.hh:
    Check to make sure that if we have an nxm config space that the mmap hasn't grown into it

--HG--
extra : convert_revision : e479e5240080ae488080d228bafea488835d6e77
2005-03-16 10:30:33 -05:00
Steve Reinhardt
c8538d6a7e Enhancements to python config proxy class.
python/m5/config.py:
    - Enhanced Proxy class now supports subscripting, e.g.,
    parent.cpu[0] or even parent.cpu[0].icache.

    - Proxy also supports multiplication (e.g., parent.cycle * 3),
    though this feature has not been tested.

    - Subscript 0 works even on non-lists, so you can safely say
    cpu[0] and get the first cpu even if there's only one.

    - Changed name of proxy object from 'Super' to 'parent', and
    changed "wild card" notation from plain 'Super' to 'parent.any'.
python/m5/objects/AlphaConsole.mpy:
python/m5/objects/BaseCPU.mpy:
python/m5/objects/BaseSystem.mpy:
python/m5/objects/Device.mpy:
python/m5/objects/Ethernet.mpy:
python/m5/objects/Ide.mpy:
python/m5/objects/IntrControl.mpy:
python/m5/objects/Pci.mpy:
python/m5/objects/PhysicalMemory.mpy:
python/m5/objects/Platform.mpy:
python/m5/objects/SimConsole.mpy:
python/m5/objects/SimpleDisk.mpy:
python/m5/objects/Tsunami.mpy:
python/m5/objects/Uart.mpy:
    Change 'Super.foo' to 'parent.foo' (and 'Super' to 'parent.any').

--HG--
extra : convert_revision : f996d0a3366d5e3e60ae5973691148c3d7cd497d
2005-03-16 00:40:48 -05:00
Steve Reinhardt
42753edb3c Add a comment to smartdict.py.
python/m5/smartdict.py:
    Add a comment explaining why this actually works.

--HG--
extra : convert_revision : 39cbde547f4bf6cf626ab1c0b6ef56a5788b09b8
2005-03-15 19:41:51 -05:00
Ali Saidi
6aaa9a7d63 only increment invalid address loads on misspeculated instructions
--HG--
extra : convert_revision : b68f730a1ea43c75ea1596c4219f66c0fce9dd0a
2005-03-15 18:07:46 -05:00
Ali Saidi
6cf53552dd Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : b1307177467024b222e3ca0313601d8ccc122a41
2005-03-15 17:31:24 -05:00
Ali Saidi
caf16a99cc during a cache miss in the simple cpu we were finalizing the trace
data too early (before the cache miss completed) and therefore
writing freeded memory after the cache miss completed.

Also removed some spurious setAddr() and setData() calls.

--HG--
extra : convert_revision : 3da82540c69c4c417aba3ed155e167d09431a1b2
2005-03-15 17:31:18 -05:00
Nathan Binkert
0f8067fbf6 Hard code the SimObject::Params struct
sim/sim_object.cc:
    Add a new constructor that can take the params struct and
    tweak the old one to create a params struct if we use the
    old constructor.
sim/sim_object.hh:
    Hard code a Params struct for SimObject that all other params
    structs can derive from.  Move the name string into the struct
    and update the code accordingly.  New constructor that takes
    the params struct.

--HG--
extra : convert_revision : 30761dab31d7257f9e8c864dcd6cae37309163f2
2005-03-15 17:11:54 -05:00
Nathan Binkert
7d49146ea7 Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/current

--HG--
extra : convert_revision : 772709acc6e5f9976464d6a05ca0e8d6ee748126
2005-03-15 15:26:32 -05:00
Nathan Binkert
dcd8ac5a22 Reduce the client memory requirement for surge so the nat stuff
runs on the pool

--HG--
extra : convert_revision : 79963cc3c2dae681f920b5592129797af8dc4cc5
2005-03-15 14:56:40 -05:00
Lisa Hsu
650306d5e5 merge
--HG--
extra : convert_revision : be1867a8f24eac0c520ec1af569eb4ca45c52fc0
2005-03-15 14:21:39 -05:00
Ali Saidi
aa8ebb9efa Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : a94b7e62184ca45c91d5bbebb73c481ca1632236
2005-03-15 13:38:14 -05:00
Ali Saidi
7e6d5a0461 config file fixes
--HG--
extra : convert_revision : f48bb05dfecb9fb994248cc3dd4b5fe6d40a120e
2005-03-15 13:37:39 -05:00
Nathan Binkert
c2014cb5ad get rid of issequence and just use the isinstance builtin
--HG--
extra : convert_revision : eca99aa35ad5c5c1c86325f55cf693ff585c9826
2005-03-15 13:22:47 -05:00
Nathan Binkert
0acb2d0108 small cleanup to sampling cpu code.
cpu/base_cpu.cc:
    By default we should panic if the system doesn't explicitly support
    switchover.

--HG--
extra : convert_revision : 4da2ec316d609cfb351fc5ceaa6d8fe36be14d4e
2005-03-15 12:17:22 -05:00
Steve Reinhardt
1491a239d6 Fix comment.
--HG--
extra : convert_revision : 3656b0f1d784d51e6b9a65262a30894f2748f662
2005-03-15 12:12:32 -05:00
Steve Reinhardt
25d131f1b6 Fix the fix, I hope...
--HG--
extra : convert_revision : aca1c091d45fda1f3d1ec7394f338aa9723a7314
2005-03-15 12:10:59 -05:00
Lisa Hsu
5b10fdf4eb fetch.cc:
undo ron's one-line fix for No suppliers - this was causing the DEADLOCK

--HG--
extra : convert_revision : 07d57b479808b3a03aa097d92c84ff7ddba4fdc4
2005-03-15 11:33:11 -05:00
Lisa Hsu
2ba8bc8184 fetch.cc:
undo ron's fix that i checked in, it caused the deadlock.

--HG--
extra : convert_revision : dab85d748ba651d3c2debdd6577c53b998f0d96e
2005-03-15 11:28:24 -05:00
Kevin Lim
2adf334642 g++ 3.4 fixes.
arch/alpha/alpha_tru64_process.cc:
    g++ 3.4 fixes.  Must cast to an int prior to returning value.

--HG--
extra : convert_revision : d8ccfd7aa7ca00d9bc2d76cff014b9f142d10640
2005-03-14 18:00:46 -05:00
Lisa Hsu
752b937ff7 helpful DPRINTF changes - more info is good!
--HG--
extra : convert_revision : a2d820bb97cab2c635a7192562daedd8d7784ec8
2005-03-14 17:58:02 -05:00
Kevin Lim
cd00fa13a0 Bad addr check should be full system only.
--HG--
extra : convert_revision : 0127d70f400a4d841daf3f01e63f3e1152eac505
2005-03-14 16:43:03 -05:00
Kevin Lim
3cc61bd9e2 Fix for using Python 2.4
--HG--
extra : convert_revision : 1682c4b77a76137974d3cb0d28c36e3d02e4e5cd
2005-03-14 16:09:36 -05:00
Ali Saidi
76e6dd01ae Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : 9eed6f31249ff099464044b32b882b3cc041b57a
2005-03-14 15:38:26 -05:00
Ali Saidi
c1f5b983f0 put the syscall emulation error stuff to bed, finally
remove addr from pciconfig objects
and update Monet configuration for ron's changes

python/m5/objects/Pci.mpy:
    I was a little over zelous in my removal of addr, this one should have stayed

--HG--
extra : convert_revision : 6c94b11d4c63d50ffe5568b16a131a4105654126
2005-03-14 15:37:58 -05:00
Steve Reinhardt
bc2923f78d Move adding SRCDIR/python to sys.path from
multiple SConscript files to SConstruct.

build/SConstruct:
    Add SRCDIR/python to sys.path here.
python/SConscript:
    Move adding SRCDIR/python to sys.path to SConstruct.

--HG--
extra : convert_revision : f598d670650f5b4fd501caaf073fe38b44d21855
2005-03-14 14:43:10 -05:00
Steve Reinhardt
076e1ebac2 Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 9ac1a3bcbfce79300da3f1cb174239897275d8b4
2005-03-14 11:34:50 -05:00
Lisa Hsu
81169916aa print the daddr to pciconfigall DPRINTF.
--HG--
extra : convert_revision : d13ce459d5dac026e596f0bb3ba801b1dbed9ed0
2005-03-14 11:16:27 -05:00
Lisa Hsu
b12f9321ff Ron's fix to some of the No supplier problems, don't deal with badaddrs.
--HG--
extra : convert_revision : 442edd3c49333fc59953dd089eaaaee4f7b23deb
2005-03-14 11:15:41 -05:00
Lisa Hsu
e7a106eec1 fix the etherdev2 connection so that nat runs work.
--HG--
extra : convert_revision : 8ad4d460836b456b29e5b4ab03081d4af622fb38
2005-03-14 10:23:43 -05:00
Steve Reinhardt
de4aa84154 Move mpy_importer into m5 package (it logically
belongs there since it's so tied in with m5.config).

python/SConscript:
    mpy_importer.py now in m5 package

--HG--
extra : convert_revision : 3cd7af4e1cd9338aa6bed5306c824ac5f0965085
2005-03-14 07:52:41 -05:00
Steve Reinhardt
1b841a871e - Add capability to auto-generate Param structs from
.mpy SimObject descriptions.  Structs are defined
in simobj/param/ObjectName.hh.
- Move compile-time python params (from CPPDEFINES) to
separate dict from run-time params (from os.environ).
The former are needed to generate proper param structs.
This also helps prevent users from messing things up
by setting the wrong environment vars (which could have
overridden compile-time settings in the old system).
- Other misc cleanup of m5 python package.

SConscript:
    Include simobj/SConscript
build/SConstruct:
    Fix type in comment
python/SConscript:
    Move CPPDEFINES dict-generating code to m5scons.flatten_defines
python/m5/__init__.py:
    - Generate a build_env SmartDict here to hold compile-time
    params (passed in via __main__.m5_build_env).
    - Move panic and env here from config.py.
python/m5/config.py:
    Move panic, env to top level (m5/__init__.py)
python/m5/objects/BaseCPU.mpy:
    Use build_env instead of env for compile-time params
python/m5/smartdict.py:
    Add some comments.
sim/sim_object.hh:
    Include auto-generated Param struct.  Not used yet,
    just here as proof of concept.
test/genini.py:
    Put -E arguments in build_env as well as os.environ

--HG--
extra : convert_revision : cf6f4a2565b230c495b33b18612d6030988adac5
2005-03-14 07:46:26 -05:00
Steve Reinhardt
82964b2705 Minor Python config bug fix.
python/m5/config.py:
    Add 'panic' to __all__ (some of Nate's scripts use it).

--HG--
extra : convert_revision : ae3e2398dffe3edd17ee0155f38bc757d3552df2
2005-03-13 01:21:23 -05:00
Steve Reinhardt
d94f5bfb04 A few fixes after trying one of Nate's job scripts.
python/m5/config.py:
    Add issequence to __all__ export list.
    Added some more comments too.

--HG--
extra : convert_revision : 17cd9205e43fe276f71563fcb96ec3c5069fcc86
2005-03-13 00:54:34 -05:00
Steve Reinhardt
8dff74b26f Clean up import situation... key things are:
- global tracking of legitimate param types in
separate dict keeps us from having to import
objects in config.py, which gets rid of nasty
circular dependence
- use __all__ in config.py and restrict imports
from mpy_importer to reduce m5 namespace pollution

python/m5/__init__.py:
    Try to limit namespace pollution by only importing
    what's needed from mpy_importer.
    Explicitly set up legal parameter types rather than
    relying on eval().
python/m5/config.py:
    Use empty ParamType base class to distinguish
    types that are legitimate SimObject params.
    Explicitly add these to global param_types map.
    Rework CheckedInt and Range classes a little bit
    to fit in better with the model.
    No need to import objects here any longer.
    Add __all__ list to specify subset of names that
    get exported on 'from m5.config import *'.

--HG--
extra : convert_revision : 01c6e82e0b175fc9b3df25dd0cc80ecd842680bc
2005-03-13 00:36:06 -05:00