gem5.git
19 years agoAdd simple function-tracing support. Prints a message
Steve Reinhardt [Tue, 16 Nov 2004 22:20:38 +0000 (17:20 -0500)]
Add simple function-tracing support.  Prints a message
every time the committed PC changes from one symbol scope
to another.
Set function_trace=y on target CPU to enable.
To defer start, use function_trace_start=<tick>
(in addition to setting function_trace=y).

cpu/base_cpu.cc:
cpu/base_cpu.hh:
    Add simple function-tracing support.
cpu/simple_cpu/simple_cpu.cc:
    Add function_trace, function_trace_start params
    Call traceFunctions() on instruction completion
cpu/simple_cpu/simple_cpu.hh:
    Add function_trace, function_trace_start params

--HG--
extra : convert_revision : 8a7f84028ccbaee585253629007f32fc8eae35e1

19 years agoadd asymmetric dual configurations
Ali Saidi [Tue, 16 Nov 2004 07:22:07 +0000 (02:22 -0500)]
add asymmetric dual configurations

--HG--
extra : convert_revision : e1479f7033350982d729c0b7228f570d4302fe6b

19 years agouse the big swap disk
Ali Saidi [Tue, 16 Nov 2004 05:46:17 +0000 (00:46 -0500)]
use the big swap disk

--HG--
extra : convert_revision : 87bae6fc4746e7b5b029ea45ab2b71e0d8cd58ae

19 years agoMerge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
Ali Saidi [Tue, 16 Nov 2004 05:35:05 +0000 (00:35 -0500)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5

--HG--
extra : convert_revision : ef573e6e6dab2516c930b6209b66442d8ad85be0

19 years agofixed for 768MB runs
Ali Saidi [Tue, 16 Nov 2004 05:34:45 +0000 (00:34 -0500)]
fixed for 768MB runs

--HG--
extra : convert_revision : c86b282788919d414470aaf551094fee1bebbbab

19 years agoFix default sampling periods
Nathan Binkert [Tue, 16 Nov 2004 05:30:35 +0000 (00:30 -0500)]
Fix default sampling periods

--HG--
extra : convert_revision : bc1f5c36fb6f7bb56e4a403f4ae0d87fee044459

19 years agoDual core configuration for detailed simulation
Nathan Binkert [Tue, 16 Nov 2004 05:28:35 +0000 (00:28 -0500)]
Dual core configuration for detailed simulation

--HG--
extra : convert_revision : 8f2e27631365a3ffe4aa7a9a1d29081ef786801b

19 years agofix benchmark.ini ordering
Nathan Binkert [Tue, 16 Nov 2004 05:15:14 +0000 (00:15 -0500)]
fix benchmark.ini ordering

--HG--
extra : convert_revision : 55580e2aa602479ff804bd27857d0b10250ce376

19 years agoimprove configs
Nathan Binkert [Tue, 16 Nov 2004 05:03:03 +0000 (00:03 -0500)]
improve configs

--HG--
extra : convert_revision : 981568baeaa7ab78cccc9e3ac5112b2426a440ff

19 years agoAll of these benchmarks use two systems
Nathan Binkert [Tue, 16 Nov 2004 04:26:10 +0000 (23:26 -0500)]
All of these benchmarks use two systems

--HG--
extra : convert_revision : d3482d77b08b5ef040d0d933b3320c5db4781bb5

19 years agosetup memory sizes for the various benchmarks
Nathan Binkert [Tue, 16 Nov 2004 04:23:04 +0000 (23:23 -0500)]
setup memory sizes for the various benchmarks

--HG--
extra : convert_revision : a5861aaa53cc71c67e32bf633ce7bbe2d9c892ca

19 years agoMinor cleanup of symtab code/includes.
Steve Reinhardt [Tue, 16 Nov 2004 01:30:51 +0000 (20:30 -0500)]
Minor cleanup of symtab code/includes.

base/loader/symtab.cc:
base/loader/symtab.hh:
    Get rid of old unused calls.
cpu/simple_cpu/simple_cpu.hh:
    No need to include base/loader/symtab.hh
kern/linux/linux_system.cc:
kern/tru64/tru64_system.cc:
    Include base/loader/symtab.hh (since it's no longer included in system.hh)
sim/system.hh:
    Replace include of base/loader/symtab.hh with forward class decl.

--HG--
extra : convert_revision : 3a778c2f409ec94e3b00eaa9b3859943cb39918c

19 years agoMinor fixes for pc sampling profile.
Steve Reinhardt [Tue, 16 Nov 2004 00:57:11 +0000 (19:57 -0500)]
Minor fixes for pc sampling profile.

cpu/exetrace.cc:
    Fix dumb mistake.

--HG--
extra : convert_revision : 9d5d0d09775133d1a60cf459f1bd47afa8480663

19 years agomake benchmarks.ini a bit less confusing
Nathan Binkert [Mon, 15 Nov 2004 23:21:36 +0000 (18:21 -0500)]
make benchmarks.ini a bit less confusing

--HG--
extra : convert_revision : 047ff4f84677d5b132b4d1fe80fbbf91a213a833

19 years agoFix up the spec-surge benchmark
Nathan Binkert [Mon, 15 Nov 2004 23:20:43 +0000 (18:20 -0500)]
Fix up the spec-surge benchmark

configs/boot/spec-surge-client.rcS:
    change the number of connections and add stuff for the
    file set size and checkpointing

--HG--
extra : convert_revision : 9e0fe74f44300893c6050e3eb1ae302f71c02767

19 years agoclean up benchmarks differentiate the two surge benchmarks
Nathan Binkert [Mon, 15 Nov 2004 21:11:30 +0000 (16:11 -0500)]
clean up benchmarks differentiate the two surge benchmarks

--HG--
extra : convert_revision : 8fd9717b34a5cdfa9e36a421e3df7cd957becb9c

19 years agomore whitespace fixes
Nathan Binkert [Mon, 15 Nov 2004 21:07:28 +0000 (16:07 -0500)]
more whitespace fixes

configs/boot/spec-surge-client.rcS:
configs/boot/spec-surge-server.rcS:
    whitespace fixes

--HG--
extra : convert_revision : 90eb2a325a3cf4436081c992d6f3e0f903980ff7

19 years agomore formatting
Nathan Binkert [Mon, 15 Nov 2004 20:45:55 +0000 (15:45 -0500)]
more formatting

configs/boot/nfs-server.rcS:
    fix whitespace

--HG--
extra : convert_revision : d421d5fa1e041b041d7c47d36abe55a2dd3e7487

19 years agoformatting
Nathan Binkert [Mon, 15 Nov 2004 20:44:25 +0000 (15:44 -0500)]
formatting

configs/boot/nfs-client.rcS:
    fix whitespace

--HG--
extra : convert_revision : dc384870de9431fe30b13a2c8c69d97b2d06dca9

19 years agocleanup the nfs server script
Nathan Binkert [Mon, 15 Nov 2004 20:42:15 +0000 (15:42 -0500)]
cleanup the nfs server script

configs/boot/nfs-server.rcS:
    don't need extra IP aliases

    re-order the nfs daemons so they happen in the right order
    and don't have the shell put them in the background since they
    will auto detach anyway.

--HG--
extra : convert_revision : a6b13ac91d1649878d346663f6ddff56d9a8a8ec

19 years agofix udp checksums
Nathan Binkert [Mon, 15 Nov 2004 20:40:35 +0000 (15:40 -0500)]
fix udp checksums

base/inet.hh:
    tcp/udp/ip checksums are calculated/manipulated in NBO always,
    so there's no need to convert to host endian.

--HG--
extra : convert_revision : 13d6aff025a6c072d9d829c2e9fad4f13399b1f7

19 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Mon, 15 Nov 2004 07:44:23 +0000 (02:44 -0500)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 033375b63b56104a5c1823985eeee7bb6cdcc7de

19 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

19 years agoAdd support for sampled PC profiling to FullCPU.
Steve Reinhardt [Mon, 15 Nov 2004 06:56:40 +0000 (01:56 -0500)]
Add support for sampled PC profiling to FullCPU.
Simple text list of symbol (or address) and count
will be dumped to m5prof.<cpu-name> if the cpu's
pc_sample_interval param is set.

SConscript:
    Add cpu/full_cpu/pc_sample_profile.cc
base/callback.hh:
    Add a comment about MakeCallback.
    Fix type in another comment.
base/loader/symtab.cc:
    Revamp findNearestSymbol() to provide addresses of both
    nearest symbols (preceding and following) as well as
    string for former.

    Move global definition of debugSymbolTable here too.
base/loader/symtab.hh:
    Revamp findNearestSymbol() to provide addresses of both
    nearest symbols (preceding and following) as well as
    string for former.

    Move global declaration of debugSymbolTable here too.
cpu/exetrace.cc:
    Use new findNearestSymbol() interface for trace symbols.
kern/linux/linux_system.cc:
sim/system.cc:
    Remove extern of debugSymbolTable (now in symtab.hh)
sim/process.cc:
    Initialize debugSymbolTable if binary has a symbol table.

--HG--
extra : convert_revision : 0b5393dc39c40ac88c953684708f1125da550671

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

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

--HG--
extra : convert_revision : 7d2fad2e4f9125d41c8d1972d8f19f38bb95c06e

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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

19 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