gem5.git
20 years agomount surge image read-only
Nathan Binkert [Mon, 15 Nov 2004 07:44:22 +0000 (02:44 -0500)]
mount surge image read-only

--HG--
extra : convert_revision : b91a93f9dc004c587d3ec763ecde98e5bd241159

20 years agomake it so we can individually use the sampling cpu on
Nathan Binkert [Mon, 15 Nov 2004 06:55:24 +0000 (01:55 -0500)]
make it so we can individually use the sampling cpu on
either the client or the server.

Make an ini file that makes our benchmarks easier to run.

--HG--
extra : convert_revision : c270cd1c027cb40d5c5bcfc2ed63f9db4b155116

20 years agoMerge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5
Ali Saidi [Mon, 15 Nov 2004 06:36:28 +0000 (01:36 -0500)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5

--HG--
extra : convert_revision : 3c7b8a86b528a61f5cb14c86ec7c1eb9276824af

20 years agoFix more of the stats python stuff
Nathan Binkert [Mon, 15 Nov 2004 06:36:27 +0000 (01:36 -0500)]
Fix more of the stats python stuff

util/stats/info.py:
    Make the binnings stuff work again.
util/stats/stats.py:
    small patch for graphing
    make it so we can print out bins for the stat command

--HG--
extra : convert_revision : c0279ac7030fd5146dd00801baa41e7baf97d1f4

20 years agocommit ploticus code to repository
Ali Saidi [Mon, 15 Nov 2004 05:43:34 +0000 (00:43 -0500)]
commit ploticus code to repository

--HG--
extra : convert_revision : 861423a859d05e7915d9f83ef40c188fe21bcb31

20 years agoupdated to make memory a touch slower in the HT case and the
Ali Saidi [Sun, 14 Nov 2004 23:52:04 +0000 (18:52 -0500)]
updated to make memory a touch slower in the HT case and the
make sure the interrupt controller is on cpu die

--HG--
extra : convert_revision : 07b7eadbec7694859957279c81b9bdb4ebd044a3

20 years agoNew system configurations that work around the bus bridge
Nathan Binkert [Sun, 14 Nov 2004 22:41:56 +0000 (17:41 -0500)]
New system configurations that work around the bus bridge
memory system bug

--HG--
extra : convert_revision : 29aa265126691eee386bc73a86e5d382e12b59a9

20 years agoupdate graph generating code
Nathan Binkert [Sun, 14 Nov 2004 22:22:33 +0000 (17:22 -0500)]
update graph generating code

util/stats/stats.py:
    tweak the graphing stuff for the new configurations we have.
    add more graph types.
    nsgige -> etherdev
    deal with memory hierarchy change by using L2 instead of L3

--HG--
extra : convert_revision : 55362e79d9f8d0d68aa08129f5af944b378a9f4c

20 years agoby default bin interrupts seperately from kernel code.
Ali Saidi [Sun, 14 Nov 2004 20:26:48 +0000 (15:26 -0500)]
by default bin interrupts seperately from kernel code.

--HG--
extra : convert_revision : fb890907402b7c1e873a2ac32e72cb6e0ed73f13

20 years agopatched nfs boot scripts
Ali Saidi [Sun, 14 Nov 2004 04:09:17 +0000 (23:09 -0500)]
patched nfs boot scripts

configs/boot/nfs-server.rcS:
    made the partition size correct

--HG--
extra : convert_revision : 4e9bdbe3e465aea2a914fd928b47296031c2523b

20 years agofixed nfs scripts hopefully for the last time
Ali Saidi [Sun, 14 Nov 2004 04:08:08 +0000 (23:08 -0500)]
fixed nfs scripts hopefully for the last time

configs/boot/nfs-client.rcS:
    lucky #3

--HG--
extra : convert_revision : a55f29e4c087e7ab95ea584316ad6fe4ebb5df9a

20 years agoGet rid of obsolete sim/sim_stats.* files (looks like these
Steve Reinhardt [Sun, 14 Nov 2004 02:13:25 +0000 (21:13 -0500)]
Get rid of obsolete sim/sim_stats.* files (looks like these
are replaced by sim/stats.hh and sim/stat_control.*)

dev/ns_gige.cc:
dev/sinic.cc:
    Include sim/stats.hh instead of sim/sim_stats.hh

--HG--
extra : convert_revision : 5e07932eab45ae4fb719baa4f94c5f62092a8446

20 years agoAdd the Simple Integrated Network Interface Controller
Nathan Binkert [Sat, 13 Nov 2004 22:10:48 +0000 (17:10 -0500)]
Add the Simple Integrated Network Interface Controller

--HG--
extra : convert_revision : 2bce25881a104e8282a5ed819769c6a7de414fb2

20 years agodon't handle device specific configuration stuff in the base
Nathan Binkert [Sat, 13 Nov 2004 22:05:13 +0000 (17:05 -0500)]
don't handle device specific configuration stuff in the base
class.  While we're at it, very minor formatting.

--HG--
extra : convert_revision : b7c719f92ece7234838434294b33833289adbada

20 years agoUse the new PacketFifo class to avoid manual calculations
Nathan Binkert [Sat, 13 Nov 2004 21:52:08 +0000 (16:52 -0500)]
Use the new PacketFifo class to avoid manual calculations

--HG--
extra : convert_revision : afa193904b7ed4d5e5c50e9dcb78e8e855b00ecc

20 years agochange the serialization of a packet so that we don't
Nathan Binkert [Sat, 13 Nov 2004 21:46:56 +0000 (16:46 -0500)]
change the serialization of a packet so that we don't
do a nameOut.  This fixes a subtle bug in serialization that
can pop up.

--HG--
extra : convert_revision : b52df977dcbef1c9bd0d4405ba0b36dff3737cdf

20 years agowe shouldn't ever pass around references to PacketPtrs,
Nathan Binkert [Sat, 13 Nov 2004 21:33:16 +0000 (16:33 -0500)]
we shouldn't ever pass around references to PacketPtrs,
const references are ok, or pass by value.

--HG--
extra : convert_revision : 7280a1c7d22b9294fddbe50f02f6f4c6ca9b2e5b

20 years agoforgot a change in the previous commit. the ide controller
Nathan Binkert [Sat, 13 Nov 2004 21:24:47 +0000 (16:24 -0500)]
forgot a change in the previous commit.  the ide controller
doesn't have its own interrupt functions

dev/ide_ctrl.hh:
    oops. we don't have our own interrupt functions anymore
    we get them from the base class.

--HG--
extra : convert_revision : 3eac228ec59f4fea0b0e49f961e8b21705dee27f

20 years agoMake it possible for PioDevices to have unknown pio
Nathan Binkert [Sat, 13 Nov 2004 21:04:33 +0000 (16:04 -0500)]
Make it possible for PioDevices to have unknown pio
latencies.

--HG--
extra : convert_revision : 08f2250efc078406c497a6820ae30f5fdf687ea5

20 years agoUse parameter structs for initialization so it's easier
Nathan Binkert [Sat, 13 Nov 2004 20:45:22 +0000 (15:45 -0500)]
Use parameter structs for initialization so it's easier
to add new devices.  Abstract the Platform more so that
it is unnecessary to know know platform specifics for
interrupting or translating PCI DMA addresses.

dev/ide_ctrl.cc:
    convert to parameter struct for initialization
    use the interrupt functions in the PciDev base class
    convert from tsunami to using platform
    We don't need an interrupt controller here.
dev/ide_ctrl.hh:
    don't use Tsunami, use Platform
    make the IdeDisk a friend so that it can access my plaform
    convert to parameter struct for construction
dev/ide_disk.cc:
    don't use tsunami references, but platform references
dev/ns_gige.cc:
    Convert to parameter struct for initialzation. Use code in
    base class for interrupts so we don't need to know anything
    about the platform. Don't need an IntrControl *.
dev/ns_gige.hh:
    We don't need a Tsunami * anymore
    convert to a parameter struct for construction
dev/pcidev.cc:
    deal with new parameter struct
dev/pcidev.hh:
    - Move all of the configuration parameters into a param struct
    that we can pass into the constructor.
    - Add a Platform * for accessing new generic interrupt post/clear
    and dma address translation fuctions
    - Create functions for posting/clearing interrupts and translating
    dma addresses
dev/platform.cc:
    have default functions that panic on pci calls
dev/platform.hh:
    don't make the pci stuff pure virtual, but rather provide
    default implementations that panic.  Also, add dma address
    translation.
dev/tsunami.cc:
    this-> isn't necessary here.
    add pci address translation
dev/tsunami.hh:
    implement the pciToDma address translation

--HG--
extra : convert_revision : 7db27a2fa1f1bd84704921ec7ca0280b5653c43e

20 years agosort #includes
Nathan Binkert [Sat, 13 Nov 2004 19:46:02 +0000 (14:46 -0500)]
sort #includes
don't need to include ev5.hh anymore

--HG--
extra : convert_revision : f80d2767936d3fb07a9cb7fd4709cafe9ea93e63

20 years agoMacros are nasty, so let's get rid of them. Convert all
Nathan Binkert [Sat, 13 Nov 2004 19:01:38 +0000 (14:01 -0500)]
Macros are nasty, so let's get rid of them.  Convert all
all macros in ev5.hh to inline functions or constant typed
variables and make them follow our style while we're at it.

All of the stuff in this file actually belongs in the ISA
traits code, but this is a first step at getting things done
in the right manner.

arch/alpha/alpha_memory.cc:
arch/alpha/alpha_memory.hh:
arch/alpha/ev5.cc:
arch/alpha/isa_desc:
dev/ns_gige.cc:
kern/tru64/tru64_events.cc:
    deal with changes in ev5.hh
arch/alpha/ev5.hh:
    Macros are nasty, so let's get rid of them.  Convert all
    all macros to inline functions or constant typed variables.
    Make them follow our style while we're at it.

    All of the stuff in this file actually belongs in the ISA
    traits code, but this is a first step at getting things done
    in the right manner.
arch/alpha/isa_traits.hh:
    move some of the ev5 specific code into the isa
arch/alpha/vtophys.cc:
base/remote_gdb.cc:
    deal with isa addition
cpu/exec_context.hh:
    be less isa specific and use the isa traits to figure out
    what we can.
dev/alpha_console.cc:
dev/pciconfigall.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/uart.cc:
    deal with changes in ev5.hh
    I don't believe this masking is actually necessary.  We should
    look at removing it later.
dev/ide_ctrl.cc:
    sort #includes
    deal with changes in ev5.hh

--HG--
extra : convert_revision : c8a3adf0a4b1d198aefe38fc38b295abf289b08a

20 years agoremove the global static check_interrupts variable now that
Nathan Binkert [Sat, 13 Nov 2004 18:57:51 +0000 (13:57 -0500)]
remove the global static check_interrupts variable now that
it's not used.

--HG--
extra : convert_revision : a4f50c1eb030a132766c4018d17c463ad5a97a9b

20 years agodefining SYSTEM_EV5 isn't all that necessary
Nathan Binkert [Sat, 13 Nov 2004 16:33:43 +0000 (11:33 -0500)]
defining SYSTEM_EV5 isn't all that necessary

--HG--
extra : convert_revision : 2ed4866db9483820d550bad00fdbc8dd027f95ba

20 years agodefining SYSTEM_EV5 isn't all that necessary
Nathan Binkert [Sat, 13 Nov 2004 16:32:17 +0000 (11:32 -0500)]
defining SYSTEM_EV5 isn't all that necessary

--HG--
extra : convert_revision : 7d39dd9f814434cb95ec769204d7f2426b0290fd

20 years agoMerge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5
Ali Saidi [Fri, 12 Nov 2004 23:47:14 +0000 (18:47 -0500)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5

--HG--
extra : convert_revision : 7696b915099bc847bbb9bd9f97fd30b1825c68d5

20 years agoslightly different parameters for nfs script
Ali Saidi [Fri, 12 Nov 2004 23:47:07 +0000 (18:47 -0500)]
slightly different parameters for nfs script

--HG--
extra : convert_revision : 1576f875646567cc661a8e3f07c00c4b282e9f64

20 years agoadd surge and spec-surge readfiles. also make the naming system uniform, there were...
Lisa Hsu [Fri, 12 Nov 2004 20:03:28 +0000 (15:03 -0500)]
add surge and spec-surge readfiles.  also make the naming system uniform, there were 3 different ways!!!  i like ali's.

--HG--
rename : configs/boot/client.netperf.maerts => configs/boot/netperf-maerts-client.rcS
rename : configs/boot/client.netperf.rr => configs/boot/netperf-rr.rcS
rename : configs/boot/server.netperf => configs/boot/netperf-server.rcS
rename : configs/boot/client.netperf.stream => configs/boot/netperf-stream-client.rcS
extra : convert_revision : 8c841e18dac9634f0680b857f3d0676b100dd448

20 years agoAdded nfs-client.rcS and nfs-server.rcS
Ali Saidi [Fri, 12 Nov 2004 19:21:52 +0000 (14:21 -0500)]
Added nfs-client.rcS and nfs-server.rcS

--HG--
extra : convert_revision : 48cf156ce397b68075c07ed072c95644affa3ef1

20 years agoBus interface range fixes for caches (to fix bus brudge range bug).
Steve Reinhardt [Thu, 11 Nov 2004 03:18:20 +0000 (22:18 -0500)]
Bus interface range fixes for caches (to fix bus brudge range bug).
Add "fast write" behavior on writeInvalidates.

--HG--
extra : convert_revision : 0c5c1e06d6cbb608610b99fb4e4fb04db4997c7b

20 years agoadd DPRINTFs
Steve Reinhardt [Thu, 11 Nov 2004 00:57:55 +0000 (19:57 -0500)]
add DPRINTFs

--HG--
extra : convert_revision : 7d2fad2e4f9125d41c8d1972d8f19f38bb95c06e

20 years agoMake it so we can cast an EthAddr to a 64-bit integer
Nathan Binkert [Wed, 10 Nov 2004 23:49:55 +0000 (18:49 -0500)]
Make it so we can cast an EthAddr to a 64-bit integer

--HG--
extra : convert_revision : 2f470d122997fbc375f04e9c2682b6528adef50c

20 years agoUse the inPalMode function instead of the PC_PAL macro
Nathan Binkert [Wed, 10 Nov 2004 23:44:37 +0000 (18:44 -0500)]
Use the inPalMode function instead of the PC_PAL macro

--HG--
extra : convert_revision : 58e0a19ba98777e5d2e2572ed02dee1914378ff7

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Wed, 10 Nov 2004 23:37:33 +0000 (18:37 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : 64eca6a11aeae236e802f9ca8eb97ca05d394ec7

20 years agoDon't use the global check_interrupts variable. Add a per-cpu
Nathan Binkert [Wed, 10 Nov 2004 23:37:19 +0000 (18:37 -0500)]
Don't use the global check_interrupts variable.  Add a per-cpu
checkInterrupts variable and use that to determine whether an interrupt
can occur on a given cycle.

arch/alpha/ev5.cc:
    XC -> CPU (and xc -> CPU) since we're really talking about a CPU here
    Don't use the global check_interrupts variable.  Add a per-cpu
    checkInterrupts variable and use that to determine whether an interrupt
    can occur on a given cycle.

--HG--
extra : convert_revision : be4c0247e5834005c60a45796a222cffd327b64e

20 years agodon't print dprintk twice on the same line
Nathan Binkert [Wed, 10 Nov 2004 23:15:04 +0000 (18:15 -0500)]
don't print dprintk twice on the same line

--HG--
extra : convert_revision : f41fc47221b6fb83eb92c080de073a11cf04c353

20 years agosoftware prefetch fix
Jennifer Treichler [Tue, 9 Nov 2004 19:58:12 +0000 (14:58 -0500)]
software prefetch fix

--HG--
extra : convert_revision : b70257a60c5f71a86a45c32d5a4ccaa249300dca

20 years agoFix to deal with the new base class parameter for registration
Nathan Binkert [Thu, 4 Nov 2004 04:21:10 +0000 (23:21 -0500)]
Fix to deal with the new base class parameter for registration
deferral

--HG--
extra : convert_revision : f968e3ba44604522cb10db8a60d7e18f1733e06a

20 years agoForgot about the tracing cpus for the changes to the base class
Nathan Binkert [Thu, 4 Nov 2004 03:30:13 +0000 (22:30 -0500)]
Forgot about the tracing cpus for the changes to the base class

cpu/trace/opt_cpu.cc:
cpu/trace/trace_cpu.cc:
    we don't want to register this cpu since it's not a real cpu

--HG--
extra : convert_revision : 3b87b6ac3dd061018909bf4fdb4e2d611128d07b

20 years agomake activation of exec contexts happen in startup
Nathan Binkert [Thu, 4 Nov 2004 01:46:33 +0000 (20:46 -0500)]
make activation of exec contexts happen in startup
the registration stuff all moves into BaseCPU

cpu/base_cpu.cc:
    Move the registration stuff into the BaseCPU since all
    other CPUs use it.
cpu/base_cpu.hh:
    Move the defer registration stuff into the BaseCPU since all
    other CPUs use it.
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
    registration stuff moved to base class
sim/system.cc:
    the activation of exec contexts should happen at startup, not
    when they are registered.
sim/system.hh:
    the system now has a startup function

--HG--
extra : convert_revision : bb6a7c2da5a1ecf5fe7ede1078200bfe5245f8ef

20 years agoAdd Inorder CPU model
Taeho Kgil [Wed, 3 Nov 2004 22:56:26 +0000 (17:56 -0500)]
Add Inorder CPU model

SConscript:
arch/isa_parser.py:
cpu/static_inst.hh:
    Add inorderCPU

--HG--
extra : convert_revision : 141372808fac5f6d125f9051ee0be982d21683aa

20 years agoadd a new phase to the simulator. Basically the simulator now goes
Nathan Binkert [Wed, 3 Nov 2004 16:47:55 +0000 (11:47 -0500)]
add a new phase to the simulator.  Basically the simulator now goes
through the following phases.

1) Construct all param contexts
2) Call the checkParams() on each context
3) Build the configuration hierarchy
4) Construct all SimObjects
5) Initialize all SimObjects by calling init() on each one
6) Unserialize the checkpoint
7) Register all statisitcs
8) Check validity of all statistics (after that, no new stats)
9) Reset all stats.
10) Call SimStartup() which calls startup() on all SimObjects,
ParamContexts, and any other object deriving from StartupCallback

SConscript:
    no more SimInit() we have SimStartup() now
sim/param.hh:
    Make all params have a startup callback.
sim/sim_events.cc:
    the init callbacks no longer exist.  We can simplify code by
    using startup().
sim/sim_object.hh:
    Make all SimObjects derive from StartupCallback

--HG--
extra : convert_revision : ab81e259eb5510cc597f7bacb2bfb619fb4cc15f

20 years agoremove mention of a couple of files that don't exist anymore
Nathan Binkert [Mon, 1 Nov 2004 19:39:48 +0000 (14:39 -0500)]
remove mention of a couple of files that don't exist anymore

SConscript:
    these files don't exist

--HG--
extra : convert_revision : 660f3861b5f2824a44fc8a281a782faeef4467f2

20 years agoMore user-friendly updates for 570.
Steve Reinhardt [Thu, 28 Oct 2004 20:54:49 +0000 (16:54 -0400)]
More user-friendly updates for 570.

--HG--
extra : convert_revision : 0fe38f6ab652b575cc24d18d65c237291e1793d6

20 years agoAdd '%' in some places to suppress spurious doxygen auto-links.
Steve Reinhardt [Thu, 28 Oct 2004 04:25:57 +0000 (00:25 -0400)]
Add '%' in some places to suppress spurious doxygen auto-links.

--HG--
extra : convert_revision : 6527dc766730745516f52f7e7f5acf43d64e8733

20 years agoMajor documentation update for 570 F04.
Steve Reinhardt [Thu, 28 Oct 2004 02:37:52 +0000 (22:37 -0400)]
Major documentation update for 570 F04.

sim/main.cc:
    Get rid of default.ini processing... it's kind of a pain and nobody uses it.
util/tracediff:
    Add comments on usage.

--HG--
extra : convert_revision : b811288b2945585d60685684ea88c99d1913fbf3

20 years agoMerge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5-smp
Ali Saidi [Mon, 25 Oct 2004 22:15:28 +0000 (18:15 -0400)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5-smp

--HG--
extra : convert_revision : 59173b5d4599cfe1cbaa96705e9731ee5a8d8647

20 years agochanges to make interrupts part of the platform rather than tsunami
Ali Saidi [Mon, 25 Oct 2004 22:14:13 +0000 (18:14 -0400)]
changes to make interrupts part of the platform rather than tsunami
specific

--HG--
extra : convert_revision : f51788dd41c23f13b253268bb2b286a5225ef087

20 years agoDon't use magic numbers.
Nathan Binkert [Mon, 25 Oct 2004 20:23:22 +0000 (16:23 -0400)]
Don't use magic numbers.

arch/alpha/isa_traits.hh:
    Move defines to non full system code section so they can
    be used elsewhere
cpu/simple_cpu/simple_cpu.cc:
    Don't use magic numbers
cpu/simple_cpu/simple_cpu.hh:
    simple format nit

--HG--
extra : convert_revision : b8d492218340d41ab9420c6ad1e81a197db1c132

20 years agoadd a hack to make sure we exit when sampling is complete.
Nathan Binkert [Mon, 25 Oct 2004 19:47:46 +0000 (15:47 -0400)]
add a hack to make sure we exit when sampling is complete.

--HG--
extra : convert_revision : a0d66b1915f14485d1798a3142dd8c828925d151

20 years agoAdd explicit phases to order ParamContext initializations.
Steve Reinhardt [Mon, 25 Oct 2004 04:56:47 +0000 (00:56 -0400)]
Add explicit phases to order ParamContext initializations.

--HG--
extra : convert_revision : c24fba2bded2493a892fa93de0c61f9674cfedbb

20 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Mon, 25 Oct 2004 03:06:35 +0000 (23:06 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : aac76a4b82b3455620618bba6238507248cc68cc

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Sat, 23 Oct 2004 20:18:53 +0000 (16:18 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : aaf81b1c1283229de21e0ef7e9916a4464f72fa3

20 years agoflesh out the TCP/IP/Ethernet support
Nathan Binkert [Sat, 23 Oct 2004 20:18:44 +0000 (16:18 -0400)]
flesh out the TCP/IP/Ethernet support

base/refcnt.hh:
    reorganize the RefCountingPtr a little bit to make it easier
    to derive from
dev/etherpkt.hh:
    this doesn't belong here. use the inet.hh stuff
dev/ns_gige.cc:
dev/ns_gige.hh:
    use newer features in the tcp/ip/ethernet stuff

--HG--
extra : convert_revision : 32c1953c95655c1f4c70e0d8adedfd94beead624

20 years agobump up the number of cshrs so we don't panic
Nathan Binkert [Sat, 23 Oct 2004 17:52:46 +0000 (13:52 -0400)]
bump up the number of cshrs so we don't panic

--HG--
extra : convert_revision : 25dfd48b2c579401d265ba9ed85379831f207b8e

20 years agoget rid of some unused variables
Nathan Binkert [Sat, 23 Oct 2004 17:11:42 +0000 (13:11 -0400)]
get rid of some unused variables

--HG--
extra : convert_revision : 187cee0e0bad09bbaff059eb60f20d7d32c1b52c

20 years agomake stuff compile on openbsd again
Nathan Binkert [Sat, 23 Oct 2004 16:31:24 +0000 (12:31 -0400)]
make stuff compile on openbsd again
clean up a few other things while we're here.

base/bitfield.hh:
base/compression/null_compression.hh:
    dont #include <inttypes.hh> use "sim/host.hh"
    fix #include guard
base/stats/types.hh:
    dont #include <inttypes.hh> use "sim/host.hh"
kern/linux/aligned.hh:
    dont #include <stdint.hh> use "sim/host.hh"
    fix #include guard
kern/linux/hwrpb.hh:
    fix #include guard

--HG--
extra : convert_revision : 288c687a59a1e770bbb834879173e1a2ea371bce

20 years agoget rid of pmap.h and make things variables and inline
Nathan Binkert [Sat, 23 Oct 2004 14:41:35 +0000 (10:41 -0400)]
get rid of pmap.h and make things variables and inline
functions instead of preprocessor macros.

arch/alpha/vtophys.cc:
    use new constants, functions and structs to clean up the
    vtophys code.
arch/alpha/vtophys.hh:
    Clean up a little bit and make the protypes match new changes.
base/remote_gdb.cc:
dev/ide_disk.cc:
kern/tru64/tru64_events.cc:
    use new constants from isa_traits.hh instead of ones from
    old pmap.h

--HG--
extra : convert_revision : 5dce34e3b0c84ba72cefca34e5999b99898edcef

20 years agoin the arch/alpha directory we should use arch/alpha, not
Nathan Binkert [Sat, 23 Oct 2004 04:39:15 +0000 (00:39 -0400)]
in the arch/alpha directory we should use arch/alpha, not
targetarch.

arch/alpha/alpha_memory.cc:
arch/alpha/arguments.cc:
arch/alpha/arguments.hh:
arch/alpha/faults.cc:
arch/alpha/isa_traits.hh:
arch/alpha/osfpal.cc:
arch/alpha/vtophys.cc:
arch/alpha/vtophys.hh:
    in the arch/alpha directory we should use arch/alpha, not
    targetarch.  sort includes while we're here.

--HG--
extra : convert_revision : 99a71540e2997173db5c1072cef910a26acc75b2

20 years agoDo the targetarch dependency stuff better.
Nathan Binkert [Sat, 23 Oct 2004 03:54:41 +0000 (23:54 -0400)]
Do the targetarch dependency stuff better.

SConscript:
    targetarch is only for headers, not cc files.  move all cc files
    back to arch/alpha, and make the target arch directory do this
    echo '#include "arch/alpha/foo.hh"' > targetarch/foo.hh for every
    header file.  This works a lot better and doesn't kill emacs'
    ability to parse compile outputs

--HG--
extra : convert_revision : c1d51643bdc457ae2d96c5f50d3ef1c6a58a600d

20 years agoVery minor formatting glitches.
Steve Reinhardt [Sat, 23 Oct 2004 02:51:28 +0000 (22:51 -0400)]
Very minor formatting glitches.

sim/main.cc:
    Add 'u' option back in to help message.

--HG--
extra : convert_revision : 9f535c9d898a9e8e54c54cf83044a24a8843f62e

20 years agoMake targetarch directory in build tree and copy arch/alpha files to it
Steve Reinhardt [Sat, 23 Oct 2004 02:49:12 +0000 (22:49 -0400)]
Make targetarch directory in build tree and copy arch/alpha files to it
instead of using symlink.  The symlink broke scons's built-in include
dependency tacking.

Interestingly once it was fixed scons discovered two circular dependency
problems which are also fixed now.

SConscript:
    Make targetarch directory in build tree and copy arch/alpha files to it
    instead of using symlink.  The symlink broke scons's built-in include
    dependency tacking.
arch/alpha/ev5.hh:
    Get rid of circular #include dependence.
kern/kernel_stats.cc:
    Add needed header file.
kern/linux/linux_syscalls.hh:
kern/tru64/tru64_syscalls.hh:
    Replace targetarch/syscalls.hh with single template class declaration.

--HG--
extra : convert_revision : b8551623c1d441c6eb8d0651387e97e373128814

20 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Nathan Binkert [Fri, 22 Oct 2004 06:11:59 +0000 (02:11 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/current

--HG--
extra : convert_revision : 92785367bd1ae71505c5ac0491ed8e18b21ad577

20 years agomake all signatures go into a single file that's at the top
Nathan Binkert [Fri, 22 Oct 2004 06:11:51 +0000 (02:11 -0400)]
make all signatures go into a single file that's at the top
of the build directory.  This makes it so that scons won't
leave the .sconsign turds all over the source tree.

--HG--
extra : convert_revision : d530ed3eaed73c7ce2d21c7391f815051a37b500

20 years agoClean up the Range class and associated usages. The code was
Nathan Binkert [Fri, 22 Oct 2004 05:34:40 +0000 (01:34 -0400)]
Clean up the Range class and associated usages.  The code was
never clear about whether the end of the range was inclusive
or exclusive.  Make it inclusive, but also provide a RangeSize()
function that will generate a Range based on a start and a size.
This, in combination with using the comparison operators, makes
almost all usages of the range not care how it is stored.

base/range.cc:
    Make the end of the range inclusive.

    start/end -> first/last
    (end seems too much like end() in stl)
base/range.hh:
    Make the end of the range inclusive.

    Fix all comparison operators so that they work correctly with
    an inclusive range.  Also, when comparing one range to another
    with <, <=, >, >=, we only look at the beginning of the range
    beacuse x <= y should be the same as x < y || x == y.  (This wasn't
    the case before.)

    Add a few functions for making a range:
    RangeSize is start and size
    RangeEx is start and end where end is exclusive
    RangeIn is start and end where end is inclusive

    start/end -> first/last
    (end seems too much like end() in stl)
dev/alpha_console.cc:
dev/baddev.cc:
dev/ide_ctrl.cc:
dev/ns_gige.cc:
dev/pciconfigall.cc:
dev/pcidev.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/uart.cc:
    Use the RangeSize function to create a range.

--HG--
extra : convert_revision : 29a7eb7fce745680f1c77fefff456c2144bc3994

20 years agoClean up/standardize handling of various output files.
Steve Reinhardt [Wed, 20 Oct 2004 00:00:20 +0000 (20:00 -0400)]
Clean up/standardize handling of various output files.
No more non-intuitive behavior shifts depending on whether
outputDirectory is set (at the expense of backwards compatibility).
outputDirectory is now always valid, defaults to ".".

dev/etherdump.cc:
    Use makeOutputStream() to create output file.
    New behavior: actually complain if dump file can't
    be opened, instead of quietly ignoring the problem.
dev/etherdump.hh:
dev/simconsole.cc:
dev/simconsole.hh:
    Use makeOutputStream() to create output file.
sim/builder.cc:
sim/builder.hh:
sim/main.cc:
    builderStream() is now *configStream.
sim/serialize.cc:
    outputDirectory is now always valid, no need to check.
sim/universe.cc:
    Clean up/standardize handling of various output files.
    No more non-intuitive behavior shifts depending on whether
    outputDirectory is set (at the expense of backwards compatibility).
    outputDirectory is now always valid, defaults to ".".
    New function makeOutputStream() does "the right thing" to
    associate a stream with a filename.

--HG--
extra : convert_revision : a03c58c547221b3906e0d6f55e4a569843f2d646

20 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Mon, 18 Oct 2004 11:05:13 +0000 (07:05 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 8d95458cf5460a8847e211eea1216eca57834b1a

20 years agoGet rid of spurious additions to ignore list.
Steve Reinhardt [Mon, 18 Oct 2004 11:05:09 +0000 (07:05 -0400)]
Get rid of spurious additions to ignore list.

--HG--
extra : convert_revision : 962dd521863a7b374e36238c81ec7935ea1811da

20 years agoMerge saidi@zizzer.eecs.umich.edu:/bk/m5
Ali Saidi [Mon, 18 Oct 2004 03:32:17 +0000 (22:32 -0500)]
Merge saidi@zizzer.eecs.umich.edu:/bk/m5
into ali-saidis-computer.local:/research/m5

--HG--
extra : convert_revision : 0b97ac6ae704e47023bb9db9694004022c548b4f

20 years agoClean up obsolete g++ 2.95 workaround.
Steve Reinhardt [Mon, 18 Oct 2004 02:04:23 +0000 (22:04 -0400)]
Clean up obsolete g++ 2.95 workaround.

--HG--
extra : convert_revision : d8fe9415d855af57e48978904e8f6a52bb7a83cc

20 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Erik Hallnor [Sun, 17 Oct 2004 04:07:28 +0000 (00:07 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/ehallnor/work/m5

--HG--
extra : convert_revision : fa4e85d5f5c783985357eb5205fcf8957f214d1e

20 years agoBunch of little changes for tracking copies and getting OPT right.
Erik Hallnor [Sun, 17 Oct 2004 04:07:21 +0000 (00:07 -0400)]
Bunch of little changes for tracking copies and getting OPT right.

cpu/simple_cpu/simple_cpu.cc:
    Send Copy
cpu/trace/opt_cpu.cc:
    Calculate the block size correctly. Set lookupTable value directly, since the old way only worked for FA caches.
cpu/trace/trace_cpu.cc:
    Don't start events if the hierarchy is in non-event mode.

--HG--
extra : convert_revision : daf2db5ed7428c2fb08652cf76f6fe99d8357db5

20 years agoFixes for bigendian platforms
Ali Saidi [Sun, 17 Oct 2004 00:10:51 +0000 (19:10 -0500)]
Fixes for bigendian platforms

arch/alpha/vtophys.cc:
    PGOFSET -> ALPHA_PGOFSET to avoid include file problems
base/callback.hh:
    Added  a class to create a callback from a function
base/intmath.hh:
    make FloorLog2 inlined
dev/pcidev.cc:
    more work in getting pciconfig space happy with different endiannesses
dev/uart.cc:
    used an incorrect size for write uint64_t instead of uint8_t
sim/system.cc:
    when writing things into system data structures we need to pay
    attention to endianness

--HG--
extra : convert_revision : 52f441b5789c45db30ef2f6fd4975cbc7323a381

20 years agoAdded support for exclusive state, defined the MESI and MOESI protocols
Ron Dreslinski [Fri, 15 Oct 2004 18:32:39 +0000 (14:32 -0400)]
Added support for exclusive state, defined the MESI and MOESI protocols

--HG--
extra : convert_revision : c991ba1acf1a8f628c0c0c34f307dd9d221c2743

20 years agofew more stat items to serialize
Erik Hallnor [Sat, 2 Oct 2004 16:43:59 +0000 (12:43 -0400)]
few more stat items to serialize

kern/kernel_stats.cc:
    Few more items to serialize

--HG--
extra : convert_revision : b816512735928cbde0b24bf8cb48deec9fb26413

20 years agoFixes to kernel to get checkpoints to work again.
Erik Hallnor [Sat, 2 Oct 2004 16:34:54 +0000 (12:34 -0400)]
Fixes to kernel to get checkpoints to work again.

kern/kernel_stats.cc:
    Serialize idleProcess.
kern/system_events.cc:
    Remove the idle start event once it runs.

--HG--
extra : convert_revision : 05ac574558a88b86ccfce963e4ca9b037a1a8509

20 years agofix some bugs in the headers and fix checksumming.
Nathan Binkert [Fri, 1 Oct 2004 23:48:33 +0000 (19:48 -0400)]
fix some bugs in the headers and fix checksumming.

base/inet.cc:
    we can't use a uint16_t for the intermediate checksum values
    since there may be some bits that carry.
    the length that is added in the pseudo header is the length of
    the tcp portion only.
base/inet.hh:
    silly me, the ip_hlen field is in terms of 4-byte words.
    when caclulating checksum, we're dealing with network byte order,
    so don't bother doing any byteswapping.

--HG--
extra : convert_revision : 993e3413e9febea0ba2fb6ba8bf04c053cca15ed

20 years agoMake printouts look more like stats.
Erik Hallnor [Fri, 1 Oct 2004 20:31:13 +0000 (16:31 -0400)]
Make printouts look more like stats.

cpu/trace/opt_cpu.cc:
    Change printout to look more like real stats, should really just make these stats someday.

--HG--
extra : convert_revision : cd5db4657a53abeda0417ca6ba4407d366408358

20 years agoUpdates to make traces work correctly in all circumstances. Add opt set associative...
Erik Hallnor [Thu, 30 Sep 2004 05:46:48 +0000 (01:46 -0400)]
Updates to make traces work correctly in all circumstances. Add opt set associative simulation.

cpu/trace/opt_cpu.cc:
cpu/trace/opt_cpu.hh:
    Add the ability to simulate less than fully-associative opt caches.
cpu/trace/reader/itx_reader.cc:
    Add writeback to the command list.

--HG--
extra : convert_revision : a9c9c4be3358f4083d7e85772620441a3ad809db

20 years agoAdd opt cpu and fix page copy warnings
Erik Hallnor [Tue, 28 Sep 2004 20:55:55 +0000 (16:55 -0400)]
Add opt cpu and fix page copy warnings

SConscript:
    Add opt_cpu
cpu/simple_cpu/simple_cpu.cc:
    Fix page spanning copy warning.
cpu/trace/reader/itx_reader.cc:
    Fix reader to return correct address.

--HG--
extra : convert_revision : f03e244971af4197743c7c717d64f21db0ae42d3

20 years agoonly set stuff up for binning interrupts if interrupt binning is on
Ali Saidi [Fri, 24 Sep 2004 18:16:51 +0000 (14:16 -0400)]
only set stuff up for binning interrupts if interrupt binning is on

kern/linux/linux_system.cc:
    Don't scheduling interrupt events if we are not binning interrupts
kern/tru64/tru64_system.cc:
    set the bin_int boolean in the system structure

--HG--
extra : convert_revision : 68eea9c448f1c481fc79be1777acb536d6385495

20 years agoMerge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5-smp
Ali Saidi [Wed, 22 Sep 2004 22:39:37 +0000 (18:39 -0400)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5-smp

--HG--
extra : convert_revision : 19dc01e1c0d2c0ba6b4d804b902429fb0a6a5552

20 years agofix unaligned memory offset and some small fixes to interrupt binning
Ali Saidi [Wed, 22 Sep 2004 22:25:06 +0000 (18:25 -0400)]
fix unaligned memory offset and some small fixes to interrupt binning
code

arch/alpha/alpha_memory.cc:
    Fixed unaligned trap faults
arch/alpha/ev5.cc:
    little more verbose faulting information
kern/linux/linux_system.cc:
    more descriptive errors, and the correct offsets from symbols
sim/system.cc:
    load local pal symbols

--HG--
extra : convert_revision : 0c81badf77321d5e1a060dcae2d42204e5a1fc84

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Tue, 21 Sep 2004 05:42:10 +0000 (01:42 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : cbe53e9404ac592b7c89bb35831e0d20539e0f9c

20 years agoa bit more cleaning of the network header wrappers.
Nathan Binkert [Tue, 21 Sep 2004 05:41:55 +0000 (01:41 -0400)]
a bit more cleaning of the network header wrappers.

base/inet.hh:
    add functions to the various headers to grab the most common
    encapsulated protocols.  This could easily get out of hand, but
    we're just worrying about tcp, udp, and ip for now.

    add common functions size(), bytes(), and payload() to all wrappers.
    size() gets the header size
    bytes() returns a uint8_t * to the beginning of the header
    payload() returns a uint8_t * to the beginning of the payload.
dev/etherpkt.cc:
dev/etherpkt.hh:
    don't cache pointers to headers.  It's probably not worth the
    hassle.

--HG--
extra : convert_revision : ba9df85ac019b8a48233042dde79fb9da9546410

20 years agoUpdate copies to work around alignment faults.
Erik Hallnor [Tue, 21 Sep 2004 02:00:35 +0000 (22:00 -0400)]
Update copies to work around alignment faults.

arch/alpha/isa_desc:
    whitespace fix.
cpu/simple_cpu/simple_cpu.cc:
    Add support to make sure we don't get alignment faults in copies. Warn if we go over an 8k page boundary.

--HG--
extra : convert_revision : 98b38da86a66215d80ea9eb6e6f1f68ee573cb57

20 years agoClean up network header stuff and make it more generic. Use
Nathan Binkert [Mon, 20 Sep 2004 14:43:53 +0000 (10:43 -0400)]
Clean up network header stuff and make it more generic.  Use
libdnet when we can instead of our own home grown stuff.

SConscript:
    separate the crc code into its own file
base/inet.cc:
    move the crc stuff to crc.cc
    add generic code for calculating ip/tcp/udp checksums
base/inet.hh:
    -  move crc stuff to crc.hh
    -  #include all of the libdnet stuff.  (this makes base/inet.hh the
    only file you need to include if you want to use this kind of stuff.)
    -  Wrap some of the libdnet structs to get easier access to structure
    members.  These wrappers will automatically deal with masking/shifting/
    byte-swapping.
base/refcnt.hh:
    If one derives from RefCountingPtr, they should have access to
    the internal data pointer.
build/SConstruct:
    make #include of dnet stuff work
dev/etherlink.cc:
dev/ethertap.cc:
dev/ethertap.hh:
    EtherPacket -> PacketData
dev/etherpkt.cc:
    EtherPacket -> PacketData
    add a function for populating extra info about a packet.
    Basically just gives pointers to ethernet/ip/tcp/udp headers
    if they exist.
dev/etherpkt.hh:
    EtherPacket -> PacketData
    remove most of the packet header stuff from teh PacketData
    class and just add a few generic functions for grabbing various
    headers that may exist in the packet.  The old functionality is
    contained in the headers.
dev/ns_gige.cc:
    -  IP -> Ip, UDP -> Udp, TCP ->Tcp when used in variable names
    -  get rid of our own byte swapping functions.
    -  whack checksum code and use libdnet version.
    -  Get pointers to the various packet headers and grab info from
    those headers.  (The byte swapping in the headers now.)
    -  Add stats for Udp Checksums
dev/ns_gige.hh:
    use libdnet for checksum code.
    IP -> Ip, TCP -> Tcp in variable names
    add stats for UDP checksums

--HG--
extra : convert_revision : 96c4160e1967b7c0090acd456df4a76e1f3aab53

20 years agopc event now clears lower 2 bits
Ali Saidi [Thu, 16 Sep 2004 19:11:38 +0000 (15:11 -0400)]
pc event now clears lower 2 bits
always build with dynamic libraries for mysqlclient

SConscript:
    always use dynamic library now
cpu/pc_event.hh:
    cleared lower 2 bits, since everything must be 4byte aligned

--HG--
extra : convert_revision : 332ecd25a598e6a46a79bd653449aa7eb22a580a

20 years agoswitch contexts on palcode rather than kernel code
Ali Saidi [Thu, 16 Sep 2004 04:37:21 +0000 (00:37 -0400)]
switch contexts on palcode rather than kernel code

cpu/pc_event.cc:
    mask off lower three bits so we can have an event in palcode

--HG--
extra : convert_revision : 49fcdc5c359ca2bd9149f092f80f77abcd7b20ee

20 years agoupdate object descriptions
Nathan Binkert [Tue, 14 Sep 2004 17:28:43 +0000 (13:28 -0400)]
update object descriptions

--HG--
extra : convert_revision : 686d827549419e6a834687d91d040144df2b62ad

20 years agoMerge zizzer:/bk/m5
Ali Saidi [Fri, 10 Sep 2004 18:36:27 +0000 (14:36 -0400)]
Merge zizzer:/bk/m5
into zizzer.eecs.umich.edu:/.automount/zeep/z/saidi/work/m5-smp

--HG--
extra : convert_revision : b49d62dc75682f568e3e02f6a7ee37e4560b8b39

20 years agofix the options stuff
Nathan Binkert [Fri, 10 Sep 2004 18:34:23 +0000 (14:34 -0400)]
fix the options stuff

util/stats/stats.py:
    get the options from the options struct now
    gratuitously change the output directory for graphs.

--HG--
extra : convert_revision : 468f34bdc2c8b5fc3a393eaa4da4ec288e35c8c7

20 years agoadded system option to bin interrupt code seperately.
Ali Saidi [Fri, 3 Sep 2004 18:12:59 +0000 (14:12 -0400)]
added system option to bin interrupt code seperately.

arch/alpha/ev5.cc:
    set the mode explictly rather than having a bool user/notuser
cpu/simple_cpu/simple_cpu.hh:
    there is no class Kernel
kern/kernel_stats.cc:
    use cpu_mode_num
kern/kernel_stats.hh:
    add interrupt mode and use cpu_mode_num rather than constant
kern/linux/linux_system.cc:
kern/linux/linux_system.hh:
kern/system_events.cc:
kern/system_events.hh:
    add events to change the mode to/from interrupt
sim/system.cc:
sim/system.hh:
    add a pal symbol table

--HG--
extra : convert_revision : 9d30e826b72122062a5ea12d094f94760e75c66a

20 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Erik Hallnor [Thu, 2 Sep 2004 15:27:45 +0000 (11:27 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/ehallnor/work/m5

--HG--
extra : convert_revision : 3f1842ffa9c193fbbdcfefb5aa364671b3d90785

20 years agoUpdate tracing functionality and add an ITX trace writer.
Erik Hallnor [Thu, 2 Sep 2004 15:27:38 +0000 (11:27 -0400)]
Update tracing functionality and add an ITX trace writer.

SConscript:
    Add build support for ITX trace writer
cpu/trace/reader/itx_reader.cc:
    Handle full 36 bit physical addressses.
cpu/trace/reader/itx_reader.hh:
    Need a string header file here
cpu/trace/trace_cpu.cc:
cpu/trace/trace_cpu.hh:
    Modify trace CPU to take a single trace and drive an instruction and data interfaces.

--HG--
extra : convert_revision : 4c81f2f9d9341df41f0ae45e4bda49800a43977c

20 years agoUpdates to make SMP work.
Ali Saidi [Wed, 1 Sep 2004 03:47:57 +0000 (23:47 -0400)]
Updates to make SMP work.

dev/tsunami_cchip.cc:
    updates to ipi handling chipset code
sim/system.cc:
    debugSymbolTable, now has symbols from pal, console, and linux

--HG--
extra : convert_revision : c981d857f7e3d75f4c46172809e6d14e5f0a1238

20 years agoFixup interrupting of the ethernet device.
Nathan Binkert [Fri, 20 Aug 2004 15:40:57 +0000 (11:40 -0400)]
Fixup interrupting of the ethernet device.

dev/ns_gige.cc:
    clean up the interrupt handling code so that it is simpler and
    less prone to bugs.  I hope I removed the bug where the:
    assert(intrTick >= curTick || intrTick == 0); would get triggered.
    I'm pretty sure that was due to intrTick not being cleared when
    the interrupt was cleared.

    This code probably still needs to be looked at more closely to
    make sure interrupts are not missed.

--HG--
extra : convert_revision : 61e2eb043540f2534a80c9b633006a71e7d6e282

20 years agostd::
Nathan Binkert [Fri, 20 Aug 2004 15:36:19 +0000 (11:36 -0400)]
std::

--HG--
extra : convert_revision : 623b18587c4827a0de4841cee7fc68817d4b9427

20 years ago- Clean up and factor out all of the binning code into a
Nathan Binkert [Fri, 20 Aug 2004 15:35:31 +0000 (11:35 -0400)]
-  Clean up and factor out all of the binning code into a
single place so it's easier to work with.
-  Add support for binning kernel/user/idle time separately from
lisa's binning stuff, but make the two compatible.
-  KernelStats used to directly implement the pImpl idiom, but
it makes more sense to just remove the level of indirection and
make the exec context have a pointer to the stats.
-  Factor common code out of LinuxSystem and Tru64System and put
it into the System base class.  While doing that, make all
constructors take a pointer to a parameter struct instead of
naming the parameters individually to make it much easier to add
parameters to these classes.

SConscript:
    Move the function tracking and binning stuff around.
arch/alpha/ev5.cc:
    kernelStats is now a pointer
arch/alpha/pseudo_inst.cc:
    kernelStats is now a pointer
    the parameters to the system have been moved into their own
    struct
base/trace.hh:
    provide a little functor class for wrapping a string that
    can allow you to define name() in any scope very simply
    for use with DPRINTF
cpu/base_cpu.cc:
    New order of arguments for consistency.
cpu/exec_context.cc:
    kernelStats no longer has the level of indirection in it,
    execContext has the indirection now.  so, kernelStats is a pointer.
    We also need a pointer to the kernelBinning stuff from the system
    and we need to figure out if we want to do binning or not.
    Move a whole bunch of code into kern_binning.cc so it's all
    in the same place.
cpu/exec_context.hh:
    We want pointers to the kernel binning/stats stuff and we'll
    have the exec_context and system have the level of indirection
    instead of having the extra layer in the kernel stats class.
cpu/simple_cpu/simple_cpu.cc:
    call through the exec context to do the special binning
    stuff.
kern/kernel_stats.cc:
kern/kernel_stats.hh:
    Re-organize the stats stuff and remove the level of indirection
    (that was there to simplify building) and move the binning stuff
    into its own class/file.
kern/linux/linux_system.cc:
kern/linux/linux_system.hh:
kern/tru64/tru64_system.cc:
kern/tru64/tru64_system.hh:
sim/system.cc:
sim/system.hh:
    move lots of common system code into the base system class so
    that it can be shared between linux, tru64, and whatever else
    we decide to support in the future.

    Make the constructor take a pointer to a parameter struct so that
    it is easier to pass parameters to the parent.
kern/system_events.cc:
    move the majority of the binning code into the Kernel::Binning class
    in the kern_binning file
kern/system_events.hh:
    FnEvents only need to know the bin
    create the Idle start event to find the PCBB of the idle
    process when it starts.
kern/tru64/tru64_events.cc:
    memCtrl -> memctrl
sim/process.cc:
sim/process.hh:
    re-order args for consistency

--HG--
extra : convert_revision : 86cb39738c41fcd680f2aad125c9dde000227b2b

20 years ago-DUSE_MYSQL so that mysql stuff builds properly
Nathan Binkert [Fri, 20 Aug 2004 14:29:54 +0000 (10:29 -0400)]
-DUSE_MYSQL so that mysql stuff builds properly

--HG--
extra : convert_revision : 22d2de08460df7a2016cea162057e44bfd6df010