Steve Reinhardt [Wed, 2 Nov 2005 15:20:39 +0000 (10:20 -0500)]
Make vector params interact with proxies properly.
--HG--
extra : convert_revision :
a4067f07d71d2adc1ccbf4512a43ceee7b5cc3de
Steve Reinhardt [Tue, 1 Nov 2005 19:11:54 +0000 (14:11 -0500)]
Allow math on CheckedInt-derived ParamValue classes w/o
losing type information.
python/m5/config.py:
Allow math on CheckedInt-derived ParamValue classes w/o
losing type information.
- Make CheckedInt derive from NumericParamValue, and *not*
multiply inherit from long
- Move CheckedInt bounds check to _check() hook so we can
call it when value is updated (not just in constructor)
python/m5/convert.py:
- make toInteger() return a long, making toLong() unnecessary
- toMemorySize should return long rather than float
--HG--
extra : convert_revision :
c1cf5e15b9ff35d9b573dd545e076fe68afef989
Steve Reinhardt [Tue, 1 Nov 2005 03:41:14 +0000 (22:41 -0500)]
Minor fix for test/genini.py.
test/genini.py:
Use m5execfile to execute .py files so that sys.path gets handled correctly.
--HG--
extra : convert_revision :
8d8c90a7f40d51c95ba0f43bb9f6d7b2ee49f16e
Lisa Hsu [Thu, 27 Oct 2005 03:19:32 +0000 (23:19 -0400)]
Merge zizzer:/bk/m5
into zed.eecs.umich.edu:/z/hsul/work/m5/clean
--HG--
extra : convert_revision :
8935c26cbf6cafd9c0f76783605c137f5a74e897
Lisa Hsu [Thu, 27 Oct 2005 03:19:21 +0000 (23:19 -0400)]
add in the files to the SConscript for split caches
--HG--
extra : convert_revision :
aba28067abbb515eaa20a4d3303db19ac077777f
Steve Reinhardt [Mon, 24 Oct 2005 02:18:50 +0000 (22:18 -0400)]
Fix qdo job name setting.
util/qdo:
Don't automatically set qsub job name, as this causes qsub to fail
if the job name is too long or otherwise unsuitable.
--HG--
extra : convert_revision :
5ba48767574efaaff2c328549adee295780f7f70
Nathan Binkert [Sat, 22 Oct 2005 00:28:21 +0000 (20:28 -0400)]
Major changes to sinic device model. Rearrage read/write, better
interrupts.
dev/sinic.cc:
- The prepareRead function sets all the variables in the register
file that depend on various state bits that change on the fly.
Includes RxDone, RxWait, TxDone, and TxWait
- Use the new register information accessor functions to grab
validity and size information for the read and write functions
- read all registers directly from the register space by offset
and size, not by actual name (less code)
- The side effect of reading the interrupt status (clearing it) now
happens outside the actual chunk of code where the value is loaded.
- Add an iprRead function for when we may want speculative access
to device registers through an ipr or special instruction.
- When RxData or TxData are written, their busy flag is set to
indicate that they have an outstanding transaction.
- The RxHigh and TxLow interrupts are special, they only interrupt
if the rxEmpty or txFull limits were hit
- Move reset to the command register
- Update more registers on reset, clear rxEmpty and txFull
- Data dumps only happen if EthernetData trace flag set
- When a DMA completes, kick the other engine if it was waiting
- implement all of the new interrupts
- serialize the new stuff
dev/sinic.hh:
- Put all registers with their proper size and alignment into
the regs struct so that we can copy multiple at a time.
- Provide accessor functions for accessing the registers with
different sizes.
- Flags to track when the rx fifo hit empty and the tx fifo became
full. These flags are used to determine what to do when below
the watermarks, and are reset when crossing the watermark.
- the txDmaEvent should actually trigger the txDmaDone function
- Add an iprRead function for when we may want speculative access
to device registers through an ipr or special instruction.
- The prepareRead function sets all the variables in the register
file that depend on various state bits that change on the fly.
- add rx_max_intr and dedicated (for dedicated thread) config params
dev/sinicreg.hh:
Add some new registers: Command, RxMaxIntr, RxFifoSize, TxFifoSize,
rename XxThreshold to XxFifoMark
Move Reset to the Command register
Add Thread to the Config register
New interrupts, better names
More info in RxDone and TxDone
Easier access to information on each register (size, read, write, name)
python/m5/objects/Ethernet.py:
Both sinic and nsgige have the dedicated thread
Add a parameter to configure the maximum number for receive
packets per interrupt
--HG--
extra : convert_revision :
407c5a993b6fb17326b4c623ee5d4b25fd69ac80
Nathan Binkert [Fri, 21 Oct 2005 23:38:02 +0000 (19:38 -0400)]
missed another pio interface name
dev/sinic.cc:
better name for both pio interfaces
--HG--
extra : convert_revision :
f7821c9c28b0095b366177b4c48a4ec14c3c89ee
Nathan Binkert [Fri, 21 Oct 2005 23:35:49 +0000 (19:35 -0400)]
better naming for pio interfaces
dev/ns_gige.cc:
why call it pio2 when there's only one?
dev/sinic.cc:
Give the interface a different name for stats/output purposes
--HG--
extra : convert_revision :
895732f1a7e4c53e058a42b51320c2115dc05638
Nathan Binkert [Fri, 21 Oct 2005 23:18:28 +0000 (19:18 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/head
--HG--
extra : convert_revision :
35075f75f7e31e0500b964ec45db3019eea06c76
Nathan Binkert [Fri, 21 Oct 2005 23:18:19 +0000 (19:18 -0400)]
It's not necessary for a device to call recvDone, that
automatically happens in the interface after the packet
is delivered to the device.
--HG--
extra : convert_revision :
07890c4c5ce83fe709ce203f66c330d7cd631235
Nathan Binkert [Fri, 21 Oct 2005 21:28:47 +0000 (17:28 -0400)]
Fix a couple of bug in the values() vector accessor
util/stats/db.py:
need to import the values function
util/stats/info.py:
it's just run
--HG--
extra : convert_revision :
3cb67d8112a1a5fdf761b73732859a71f585bd1f
Nathan Binkert [Fri, 21 Oct 2005 20:32:48 +0000 (16:32 -0400)]
Minor updates to the profile code.
util/stats/profile.py:
Pass around the number of symbols limit
deal with categorization a bit better.
--HG--
extra : convert_revision :
908410e296efd4514f2dfc0eb9e6e42834585560
Nathan Binkert [Fri, 21 Oct 2005 20:29:27 +0000 (16:29 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into zizzer.eecs.umich.edu:/.automount/ziff/z/binkertn/research/m5/work
--HG--
extra : convert_revision :
8ef6ed2d770d45ac11d44a449e2c4f74ef656d87
Nathan Binkert [Fri, 21 Oct 2005 20:29:13 +0000 (16:29 -0400)]
Major cleanup of the statistics handling code
util/stats/db.py:
Build a result object as the result of a query operation so it is
easier to populate and contains a bit more information than just
a big dict. Also change the next level data into a matrix instead
of a dict of dicts.
Move the "get" function into the Database object. (The get function
is used by the output parsing function as the interface for accessing
backend storage, same interface for profile stuff.)
Change the old get variable to the method variable, it describes how
the get works, (whether using sum, stdev, etc.)
util/stats/display.py:
Clean up the display functions, mostly formatting.
Handle values the way they should be now.
util/stats/info.py:
Totally re-work how values are accessed from their data store.
Access individual values on demand instead of calculating everything
and passing up a huge result from the bottom.
This impacts the way that proxying works, and in general, everything
is now esentially a proxy for the lower level database. Provide new
operators: unproxy, scalar, vector, value, values, total, and len which
retrieve the proper result from the object they are called on.
Move the ProxyGroup stuff (proxies of proxies!) here from the now gone
proxy.py file and integrate the shared parts of the code. The ProxyGroup
stuff allows you to write formulas without specifying the statistics
until evaluation time.
Get rid of global variables!
util/stats/output.py:
Move the dbinfo stuff into the Database itself. Each source should
have it's own get() function for accessing it's data.
This get() function behaves a bit differently than before in that it
can return vectors as well, deal with these vectors and with no result
conditions better.
util/stats/stats.py:
the info module no longer has the source global variable, just
create the database source and pass it around as necessary
--HG--
extra : convert_revision :
8e5aa228e5d3ae8068ef9c40f65b3a2f9e7c0cff
Steve Reinhardt [Thu, 20 Oct 2005 18:14:59 +0000 (14:14 -0400)]
Minor tweak to isa_parser.
arch/isa_parser.py:
Derive Stack class directly from list.
--HG--
extra : convert_revision :
4f09db4baec0bb2144d71ffad5ce53651e8c3ac6
Steve Reinhardt [Thu, 20 Oct 2005 17:25:43 +0000 (13:25 -0400)]
Add qdo options for setting the PBS job name and destination queue.
util/qdo:
Add options for setting the PBS job name and destination queue.
--HG--
extra : convert_revision :
dcb46a03b8fd7a93e2ba656a9e5c806e250f5ac9
Nathan Binkert [Wed, 19 Oct 2005 06:10:24 +0000 (02:10 -0400)]
fix pbs dependency stuff
util/pbs/pbs.py:
after -> afterok
--HG--
extra : convert_revision :
ee0af716bcc0f83c4103632bd277a5680b0d2c23
Nathan Binkert [Wed, 19 Oct 2005 06:04:03 +0000 (02:04 -0400)]
provide a default jobfilename if a jobname is given
--HG--
extra : convert_revision :
c5659b9675ccd2ba71f5ffa38aff5d397d6ed1c3
Nathan Binkert [Wed, 19 Oct 2005 02:36:43 +0000 (22:36 -0400)]
make the sampling periods configurable
--HG--
extra : convert_revision :
4276beb4f642ff5c3afcc9974f2c451bff100fb0
Nathan Binkert [Wed, 19 Oct 2005 02:05:05 +0000 (22:05 -0400)]
Shuffle around device names to make things easier to read.
Create EtherDevBase which both Sinic and NSGigE derive from
bump fifos
drop rx max copy size to 1514 bytes to be friendlier with linux
default interrupt delay is 10us
dev/ns_gige.cc:
Shuffle around parameters to make it easier to find stuff
dev/sinic.cc:
Shuffle around parameters to make it easier to find stuff
rename cycleTime -> clock
dev/sinic.hh:
rename cycleTime -> clock
--HG--
extra : convert_revision :
a673bee875e50d083098991aea20972fa8d5b5c7
Nathan Binkert [Wed, 19 Oct 2005 01:10:35 +0000 (21:10 -0400)]
more remnants of the profile stuff
--HG--
extra : convert_revision :
435f24712f7bf7e8d844126e82e865ca309ebb67
Nathan Binkert [Wed, 19 Oct 2005 01:05:17 +0000 (21:05 -0400)]
Make ALPHA_SE compile commit.cc
--HG--
extra : convert_revision :
16dc115014c16d4d400e69490cfff03e7229f8e0
Nathan Binkert [Wed, 19 Oct 2005 01:01:05 +0000 (21:01 -0400)]
use the dedicated flag, no more exposing the m5reg directly
dev/ns_gige.cc:
stop exposing the m5reg to the configuration stuff and build it
based on exposed flags. Expose dedicated now.
dev/ns_gige.hh:
goodbye m5reg hello dedicated
dev/ns_gige_reg.h:
Flags for the M5REG
--HG--
extra : convert_revision :
11134fe67cdf5291caacf9b3041739c437b983e3
Nathan Binkert [Wed, 19 Oct 2005 00:02:23 +0000 (20:02 -0400)]
define a couple more abi regiesters
--HG--
extra : convert_revision :
2b909cc784d4fdd4833a70e86d13c207a7c1dd23
Nathan Binkert [Tue, 18 Oct 2005 23:20:00 +0000 (19:20 -0400)]
Add missing change from big function profile commit
--HG--
extra : convert_revision :
46e031098a4291638ea231ba8d3ed0339cab6e29
Nathan Binkert [Tue, 18 Oct 2005 23:18:27 +0000 (19:18 -0400)]
fix nmtest
test/Makefile:
get nmtest to compile
test/nmtest.cc:
make nmtest actually do something
--HG--
extra : convert_revision :
471c02c51355a5145f0d0ce965c2a341076120c0
Nathan Binkert [Tue, 18 Oct 2005 23:17:36 +0000 (19:17 -0400)]
Default jobfile for stats
util/stats/stats.py:
Make the default jobfile Test.py in the current directory
add the -J flag to tell it not to use a jobfile
--HG--
extra : convert_revision :
5cf5bb2f32ed9c9701a94eabc9b2a538581acf94
Nathan Binkert [Tue, 18 Oct 2005 23:07:42 +0000 (19:07 -0400)]
Add new function profiling stuff, wrap the pc_sample stuff into it.
SConscript:
Get rid of the pc_sample stuff and move to the new profiling stuff
base/traceflags.py:
DPRINTF Stack stuff
cpu/base.cc:
cpu/base.hh:
cpu/exec_context.cc:
cpu/exec_context.hh:
cpu/simple/cpu.cc:
Add profiling stuff
kern/kernel_stats.hh:
Use a smart pointer
sim/system.cc:
sim/system.hh:
Create a new symbol table that has all of the symbols for a
particular system
util/stats/categories.py:
change around the categories, add categories for function
profiling stuff
util/stats/profile.py:
No profile parsing and display code to deal with function
profiling stuff, graph, dot, and text outputs.
--HG--
extra : convert_revision :
b3de0cdc8bd468e42647966e2640ae009bda9eb8
Nathan Binkert [Tue, 18 Oct 2005 19:05:01 +0000 (15:05 -0400)]
Better pool job handling
util/pbs/job.py:
the default jobfile is now Test.py in the root of the jobs directory
util/pbs/pbs.py:
Clean up the qsub options handling and add job dependencies
util/pbs/send.py:
the default jobfile is now Test.py in the root of the jobs directory
add a flag to depend on your checkpoint
add a flag to specify your node type
create the base directory if it doesn't exist
--HG--
extra : convert_revision :
dfffa4a5b0e68b2550a28fbb06b9d6a208ea1f2e
Nathan Binkert [Tue, 18 Oct 2005 19:01:51 +0000 (15:01 -0400)]
Improvements to the graphing output
util/stats/output.py:
Create the graph directory if it doesn't exist
Don't write out a graph if all of the jobs for that graph are missing
--HG--
extra : convert_revision :
7993baf1a4be33a062f86a4f09791f01eaafa43c
Steve Reinhardt [Fri, 14 Oct 2005 03:47:31 +0000 (23:47 -0400)]
Fix for g++ 4 warning... not sure why this is just popping up now.
sim/system.hh:
Fix for g++ 4.
--HG--
extra : convert_revision :
e169220ba9ca34ebd4ba2bbafadf8de42f005812
Nathan Binkert [Wed, 12 Oct 2005 21:18:10 +0000 (17:18 -0400)]
Clean up symbol table access functions and make it
possible to inline them. The symbol table is heavily
used in the stacktrace code and the faster access
functions should help out.
base/loader/symtab.cc:
Put these in the header file since they are simple and can
be inlined.
base/loader/symtab.hh:
Move the various findFoo functions to the header file so they
can be inlined. Add findNearestAddr functions that don't
return the symbol. This is so you can figure out what
function you're in based on the symbol table, but not waste
time copying out the symbol name if you don't need it.
--HG--
extra : convert_revision :
00cac40a79b0641a70c5ec7d9838fa0ec505c6a1
Nathan Binkert [Wed, 12 Oct 2005 17:53:10 +0000 (13:53 -0400)]
better english in stat descriptions for NS GigE
dev/ns_gige.cc:
better english in stat descriptions
--HG--
extra : convert_revision :
e75fc71e3285389cd38a9a00376a494778536b1d
Nathan Binkert [Wed, 12 Oct 2005 17:45:21 +0000 (13:45 -0400)]
Make it easier to attach the remote debugger.
base/remote_gdb.cc:
Keep track of a vector of all of the usable debuggers and provide
a current_debugger variable that can be set from gdb to specify
which remote debugger is desired.
If debugger() is called and the current_debugger is not attached,
call accept on its listener so we can still attach a remote debugger
from the gdb prompt if we had forgotten to before.
Print out more information when the simulator starts so we can
distinguish debuggers more easily.
base/remote_gdb.hh:
Have a remote debugger instance keep track of its listener.
Number the remote debuggers so it's easier to figure out which is which.
--HG--
extra : convert_revision :
97119597ac3772ea4df6da3b3a4827f50253a51f
Nathan Binkert [Wed, 12 Oct 2005 17:39:40 +0000 (13:39 -0400)]
Add support for 64-bit addresses to the NS GigE device model.
dev/ns_gige.cc:
Add support for 64-bit addresses
dev/ns_gige.hh:
dev/ns_gige_reg.h:
Need both cached 32-bit and 64-bit descriptors
--HG--
extra : convert_revision :
514788d8d95554b3512f1b75db5314c823453a8c
Nathan Binkert [Wed, 12 Oct 2005 17:01:55 +0000 (13:01 -0400)]
don't write the pbs jobid here, do it in send.py so we know
what it is sooner
Don't handle sigstop since you're not allowed to.
util/pbs/send.py:
write the pbs jobid here in send.py so we know what it is sooner
--HG--
extra : convert_revision :
93292d046cb4b628031e0e57e39eb4470b598ed8
Lisa Hsu [Sun, 9 Oct 2005 22:29:12 +0000 (18:29 -0400)]
Merge zizzer:/bk/m5
into zed.eecs.umich.edu:/z/hsul/work/m5/clean
--HG--
extra : convert_revision :
427e867b51ee3c9c2a1c70a16d36dfaf83284b2c
Lisa Hsu [Sun, 9 Oct 2005 22:20:54 +0000 (18:20 -0400)]
add a flag that supercedes all other InstExec flags to print a trace in the Intel sim compatible format.
--HG--
extra : convert_revision :
19569e5645f2d68fb68a0352753c08c2a24bfdc4
Steve Reinhardt [Thu, 6 Oct 2005 17:59:37 +0000 (13:59 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5
--HG--
extra : convert_revision :
c725ff66b214027cdb72a2cf8ffd017e9b120700
Steve Reinhardt [Thu, 6 Oct 2005 17:59:05 +0000 (13:59 -0400)]
More documentation for 1.1 release.
README:
More updates for 1.1 release.
--HG--
extra : convert_revision :
3e39cf4d1cba49dfb254cd1047144ac2aa728221
Lisa Hsu [Thu, 6 Oct 2005 17:55:08 +0000 (13:55 -0400)]
Merge zizzer:/bk/m5
into zed.eecs.umich.edu:/z/hsul/work/m5/clean
--HG--
extra : convert_revision :
42c38ea59c6787fdcf25bf8e1737f71ac253cf8a
Steve Reinhardt [Thu, 6 Oct 2005 17:50:13 +0000 (13:50 -0400)]
Add execution trace object to Root.
python/m5/objects/Root.py:
Add execution trace object.
--HG--
extra : convert_revision :
1d1ba18779fd4d0b5af921c5f34b7a2bfb4b75d9
Steve Reinhardt [Thu, 6 Oct 2005 02:55:01 +0000 (22:55 -0400)]
Update README for IOSCA release.
README:
Update for IOSCA release.
--HG--
extra : convert_revision :
6ed7c857cc71021f51abe8c462a9b8b58215dcfb
Lisa Hsu [Wed, 5 Oct 2005 21:37:22 +0000 (17:37 -0400)]
can't designate checkpoint from command line without this import
--HG--
extra : convert_revision :
c6428fc99edb1f621da77c97b44e8a71c5b3cb66
Steve Reinhardt [Mon, 3 Oct 2005 13:13:56 +0000 (09:13 -0400)]
Minor cleanup of memtest.
cpu/memtest/memtest.cc:
Call random() consistently (not sometimes rand() and sometimes random()).
Don't bother to call random() for copy-only parameters unless we're
actually doing a copy.
--HG--
extra : convert_revision :
50ef72594ad53ba531584b3c9dde61ac036a4e38
Steve Reinhardt [Sat, 1 Oct 2005 20:02:47 +0000 (16:02 -0400)]
Add executable parameter to LiveProcess. This allows the argv[0] value to
stay fixed even if the path to the binary changes, so the simulation results
are independent of that path.
--HG--
extra : convert_revision :
d1109cd284466c14eddc97289908a51e771fc5db
Steve Reinhardt [Sat, 1 Oct 2005 15:36:56 +0000 (11:36 -0400)]
Commit regression script. The cron job uses a copy in m5test's
home directory (/z/m5/regression), so for now any modifications
should be manually copied there as well.
Note that this script is designed to be useful for running full
regressions outside of the cron job as well.
--HG--
extra : convert_revision :
052ec5d58b5ff765d8f3a9b50849ef34d62c8d66
Steve Reinhardt [Sat, 1 Oct 2005 15:32:33 +0000 (11:32 -0400)]
Add default= option to SConstruct.
build/SConstruct:
Add 'default=' argument to specify base config to use when setting
up a new build dir with a different name, e.g.:
scons default=ALPHA_SE USE_MYSQL=no ALPHA_SE_NOSQL/m5.opt
--HG--
extra : convert_revision :
0f7ee1414b3e84b36114415182baf54a8adab9b7
Nathan Binkert [Fri, 30 Sep 2005 17:34:43 +0000 (13:34 -0400)]
Clean up some formatting
kern/linux/linux_system.cc:
remove random character
kern/linux/linux_threadinfo.hh:
Formatting fixes
--HG--
extra : convert_revision :
2be4772d7455ea1f4eb22966e00831701b7cbc27
Steve Reinhardt [Fri, 30 Sep 2005 01:50:52 +0000 (21:50 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/poolfs/z/home/stever/bkr/m5
--HG--
extra : convert_revision :
c00173bbf537efd352ab7ce824bd23dc0177bb60
Steve Reinhardt [Fri, 30 Sep 2005 01:50:37 +0000 (21:50 -0400)]
Fixes for building ALPHA_FS_TL with g++ 4.0.
--HG--
extra : convert_revision :
6f74cf888de8725696efdfb039f5621486ad4968
Ali Saidi [Thu, 29 Sep 2005 21:09:53 +0000 (17:09 -0400)]
fix for delayed state machine changes
--HG--
extra : convert_revision :
db19e3687f48799725a9062e014588d318988cee
Steve Reinhardt [Thu, 29 Sep 2005 20:03:36 +0000 (16:03 -0400)]
Fix for qdo & new pool node build.
util/qdo:
unset PROMPT_COMMAND in shell in case system sets
it for us.
--HG--
extra : convert_revision :
f9f20f7dc6b9585b60f3ce53aadd06e7d64f5179
Steve Reinhardt [Sun, 25 Sep 2005 20:48:24 +0000 (16:48 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/poolfs/z/home/stever/bk/m5
--HG--
extra : convert_revision :
c777f18ba8462b7286ec8588b859de8f4091a772
Steve Reinhardt [Sun, 25 Sep 2005 01:24:44 +0000 (21:24 -0400)]
Create build_options/current dir when necessary.
build/SConstruct:
Need to create build_options/current the first time through.
--HG--
extra : convert_revision :
13bf8c69a4a30671283a8b789ed21875b2301f24
Steve Reinhardt [Sun, 25 Sep 2005 01:16:02 +0000 (21:16 -0400)]
Split build options files into a static set of defaults
for committing to bk and a dynamically updated set which
are not under revision control.
build/SConstruct:
Split build options into static defaults and dynamic "current" settings.
--HG--
rename : build/build_options/ALPHA_FS => build/build_options/default/ALPHA_FS
rename : build/build_options/ALPHA_FS_TL => build/build_options/default/ALPHA_FS_TL
rename : build/build_options/ALPHA_SE => build/build_options/default/ALPHA_SE
extra : convert_revision :
8219211a3f2ce955fd6e2c34c169cac3fc704854
Steve Reinhardt [Sat, 24 Sep 2005 22:17:51 +0000 (18:17 -0400)]
Clean up indentation in isa_desc.
arch/alpha/isa_desc:
Little bit of re-ordering and indentation clean-up.
--HG--
extra : convert_revision :
e538ff89d8b507c3e1aa68a032578fcaa645d7ee
Steve Reinhardt [Sat, 24 Sep 2005 19:22:28 +0000 (15:22 -0400)]
Fix IDE disk UDMA mode support mask to actually reflect support for
modes 4 *and below*, not just mode 4.
dev/ide_disk.cc:
Fix UDMA mode support mask to actually reflect support for
modes 4 *and below*, not just mode 4.
--HG--
extra : convert_revision :
3506d503a5e8ce8a8686fb3a552383d365be0d41
Steve Reinhardt [Sat, 24 Sep 2005 18:20:29 +0000 (14:20 -0400)]
Add functions to System object to set up function-based events,
including automatically fixing up addresses to deal with
optionally executed Alpha gp update prolog.
SConscript:
Remove freebsd_events.cc and linux_events.cc.
base/remote_gdb.cc:
cpu/pc_event.cc:
kern/system_events.cc:
kern/system_events.hh:
PCEvents now schedule themselves in constructor.
cpu/pc_event.hh:
PCEvents now schedule themselves in the constructor.
Get rid of constructor versions that don't take an address and
all the schedule() methods that are now unnecessary.
kern/freebsd/freebsd_system.cc:
kern/freebsd/freebsd_system.hh:
Use new System methods to schedule function-based events.
Move FreeBSD-specific function event classes into FreebsdSystem.
kern/linux/linux_system.cc:
kern/linux/linux_system.hh:
Use new System methods to schedule function-based events.
Move Linux-specific function event classes into LinuxSystem.
kern/tru64/tru64_events.hh:
PCEvents now schedule themselves in constructor.
Add DebugPrintfrEvent to encapsulate raw setting as new type
(to work better with new System function-event method.)
kern/tru64/tru64_system.cc:
Use new System methods to schedule function-based events.
kern/tru64/tru64_system.hh:
Add DebugPrintfrEvent to encapsulate raw setting as new type
(to work better with new System function-event method.)
sim/system.cc:
sim/system.hh:
Add functions to set up function-based events, including
automatically fixing up addresses to deal with optionally
executed Alpha gp update prolog.
--HG--
extra : convert_revision :
c2cf09144297b6602afe755a34a0a2227023783f
Steve Reinhardt [Thu, 22 Sep 2005 19:27:42 +0000 (15:27 -0400)]
Support for compiling and testing on pool via 'qdo' script.
For this to work qdo must be on your path. I've copied it into
/usr/local/bin on zizzer.
build/SConstruct:
Add BATCH and BATCH_CMD options to support compiling/testing
on pool via qdo.
--HG--
extra : convert_revision :
b7fc46465e897f7f15ed4a67f6735886917a6c4b
Nathan Binkert [Mon, 19 Sep 2005 01:22:57 +0000 (21:22 -0400)]
Tweak the set of coalesced interrupts
dev/ns_gige.cc:
clean up usage of ISR_FOO macros
dev/ns_gige_reg.h:
Clean up #defines
make ISR_RXIDLE and ISR_TXIDLE coalesced
--HG--
extra : convert_revision :
fd64fc6a441d096fc45737fdcb837de8868ca10a
Nathan Binkert [Mon, 19 Sep 2005 01:20:24 +0000 (21:20 -0400)]
fix the MAX_CHECKPOINTS stuff
sim/serialize.cc:
Make the max checkpoint thing actually stop after the last
checkpoint
--HG--
extra : convert_revision :
091179c4706e9876a9b7e826513c5c14ce6b72af
Nathan Binkert [Sat, 17 Sep 2005 20:51:26 +0000 (16:51 -0400)]
Totally re-work the way that jobfiles are done so there is more
information that can be used for other aspects of sending jobs.
New graphing output stuff with matplotlib.
util/pbs/job.py:
Shuffle code around and create the JobDir class which encapsulates
all of the functionality needed for making, organizing, and cleaning
a job directory.
Better status output
util/pbs/jobfile.py:
Majory re-working of the jobfile code.
A job file now consists of several objects that describe how
jobs should be run, it includes information about checkpoints,
and graphing.
util/pbs/send.py:
use the new jobfile code.
deal with the 15 character limit of pbs by truncating the name and
using the raj hack.
util/stats/db.py:
fix the __str__ function for nodes
provide __getitem__ for the Database class
util/stats/stats.py:
use the jobfile stuff to figure out what the proper naming
and organziation of the graphs should be.
move all output code to output.py, get rid of ploticus and use
matplotlib
--HG--
rename : util/categories.py => util/stats/categories.py
extra : convert_revision :
0d793cbf6ad9492290e8ec875ce001c84095e1f7
Nathan Binkert [Sat, 17 Sep 2005 14:47:16 +0000 (10:47 -0400)]
Fix the EtherDump parameters
dev/etherdump.cc:
no default parameters anymore they should be in python
python/m5/objects/Ethernet.py:
move the maxlen parameter for EtherDump into python
--HG--
extra : convert_revision :
a796353a68907dfeb22059cd3ad536e6e8f60998
Nathan Binkert [Sat, 17 Sep 2005 14:43:05 +0000 (10:43 -0400)]
Simple option cleanup in the config files.
--HG--
extra : convert_revision :
50b9a1bf79705badabc6e0a6b4402e79997866e6
Nathan Binkert [Sat, 17 Sep 2005 02:54:01 +0000 (22:54 -0400)]
various changes to the boot scripts
configs/boot/iscsi-client.rcS:
configs/boot/nfs-client-dbench.rcS:
don't use the /proc/m5 stuff, use the m5 binary
configs/boot/nfs-client-nhfsstone.rcS:
set up checkpoints
change nhfsstone configuration
configs/boot/nfs-client.rcS:
use more memory
configs/boot/nfs-server.rcS:
change the writeback frequency
load a larger simulated disk image.
create more nfsd threads
--HG--
extra : convert_revision :
242dfd261d62782c06847d64b9f6aa06664a1ec9
Ali Saidi [Tue, 13 Sep 2005 02:53:57 +0000 (22:53 -0400)]
only set an approriately sized piece of data. so break where appropriate
Again... how did this work?
--HG--
extra : convert_revision :
06dcab4ac9f5760c9847d0fa47fea67c4a46544a
Ali Saidi [Mon, 12 Sep 2005 20:09:58 +0000 (16:09 -0400)]
Merge zizzer:/bk/m5
into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision :
792c2993791fdce6170c7b875fc6510c74faae65
Ali Saidi [Mon, 12 Sep 2005 20:09:51 +0000 (16:09 -0400)]
format string did not match variable size -> stack corruption
--HG--
extra : convert_revision :
b7c5aaa9d1f1242cfe337d6555e476f622a2aa6d
Steve Reinhardt [Mon, 12 Sep 2005 12:59:20 +0000 (08:59 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5
--HG--
extra : convert_revision :
2d1c571b1507eb34b22f983d76ca48a7ca61c3b9
Steve Reinhardt [Mon, 12 Sep 2005 12:59:14 +0000 (08:59 -0400)]
More minor tweaks for fenv/cygwin.
build/SConstruct:
No need to warn about regression failures w/o fenv.h anymore.
--HG--
extra : convert_revision :
f40efb849f4c3063ebb58f6e277473467916573d
Ali Saidi [Mon, 12 Sep 2005 07:01:57 +0000 (03:01 -0400)]
Merge zizzer:/bk/m5
into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision :
3eff9b41fbf30ae0365adf05a71625c92ce1a4c0
Ali Saidi [Mon, 12 Sep 2005 07:01:43 +0000 (03:01 -0400)]
fixes for gcc 4.0
base/mysql.hh:
include mysql_version to get rid of that annoying mysql error.
make sure refcount is set in all constructors
base/pollevent.hh:
dev/ethertap.hh:
dev/pciconfigall.hh:
dev/tsunami_cchip.hh:
dev/tsunami_io.hh:
dev/tsunami_pchip.hh:
sim/param.cc:
fix for gcc 4
--HG--
extra : convert_revision :
be626af2f40ca402818996ef27249ae256c63ef1
Steve Reinhardt [Sun, 11 Sep 2005 23:29:41 +0000 (19:29 -0400)]
Explicitly handle rounding on FP-to-integer conversions.
Seems to avoid the significant problems on platforms w/o fenv.h.
arch/alpha/isa_desc:
Explicitly handle rounding on FP-to-integer conversions.
Seems to avoid the significant problems on platforms w/o fenv.h.
Get rid of FP "Fast" vs "General" distinction... more headache than
it's worth.
arch/isa_parser.py:
Fix bug with "%s" in C++ templates (must escape properly to
pass through Python string interpolation).
--HG--
extra : convert_revision :
de964d764e67e0934ac0ef535f53c974640731fb
Steve Reinhardt [Mon, 5 Sep 2005 20:31:27 +0000 (16:31 -0400)]
Regression tests now run under scons!
For example, 'scons ALPHA_SE/test/opt/quick' will build
ALPHA_SE/m5.opt if necessary and run all the self-identified
"quick" tests on it. Other possibilities:
- Run just test1: scons ALPHA_SE/test/opt/test1
- Run all tests: scons ALPHA_SE/test/opt
- Run all tests on debug build: scons ALPHA_SE/test/debug
- Update test1 reference outputs in m5-test:
scons update_ref=y ALPHA_SE/test/opt/test1
The proper tests will be selected based on the setting
of FULL_SYSTEM, ALPHA_TLASER, etc.
README:
Update directions to use scons-based test invocation.
SConscript:
Return list of generated build environments to SConstruct
so it can associate tests with each of them.
Set 'M5Binary' attribute on each env to record name of
generated binary to be tested.
build/SConstruct:
- Support invoking m5-test tests via scons.
- Add new non-sticky option category, for 'update_ref'.
- Move existing "sticky" option definitions out of
build_dir loop. Someday we can generate help text
from these.
- Make 'CC' and 'CXX' sticky options; use environment vars as
defaults if available.
- Make config builder more scons-y.
python/m5/__init__.py:
Make AddToPath() correctly handle relative path arguments.
Assumes that sys.path[0] has the directory where the current
Python file lives; new m5execfile() function sets this up
properly for exec'd files.
--HG--
extra : convert_revision :
48896688592e210d8e63f96c34e57474853d0e66
Steve Reinhardt [Sat, 3 Sep 2005 01:30:02 +0000 (21:30 -0400)]
Fixes to build with gcc 4.0.
sim/param.hh:
Add "template<>" to explicit template specialization.
--HG--
extra : convert_revision :
05e2f4ad8141a8782fe09a0b6824baf56c9fc957
Steve Reinhardt [Fri, 2 Sep 2005 21:23:03 +0000 (17:23 -0400)]
Force Unix EOL even on Windows (i.e. Cygwin).
--HG--
extra : convert_revision :
0aa171dc79c4d06d45e28d2907c7eb6d6fde433e
Steve Reinhardt [Fri, 2 Sep 2005 21:21:02 +0000 (17:21 -0400)]
Get rid of non-essential default-valued options.
This lets SConstruct set things like USE_MYSQL
based on the host w/o complaining.
build/build_options/ALPHA_FS_TL:
build/build_options/ALPHA_FS:
build/build_options/ALPHA_SE:
Get rid of non-essential default-valued options.
--HG--
extra : convert_revision :
96308897d2b9269dbefffa6d50ac491379444030
Steve Reinhardt [Fri, 2 Sep 2005 18:38:11 +0000 (14:38 -0400)]
Bug fix: can't increment an iterator after you erase
the thing it points to. Somehow Linux doesn't care,
but Cygwin sure does.
--HG--
extra : convert_revision :
1209a75831f080f17a95433e546d7074f9f07332
Steve Reinhardt [Thu, 1 Sep 2005 15:35:03 +0000 (11:35 -0400)]
Fix to #define True/False option values as 0/1 in header.
--HG--
extra : convert_revision :
7fbae4816a4d0a5ed942e0ad8afed9464dd1ba11
Steve Reinhardt [Thu, 1 Sep 2005 15:32:58 +0000 (11:32 -0400)]
Convert type of max_time and progress_interval parameters
from Latency to Tick, and rename max_time to max_tick.
python/m5/objects/Root.py:
sim/root.cc:
Convert type of max_time and progress_interval
from Latency to Tick, and rename max_time to max_tick.
--HG--
extra : convert_revision :
2f2aacf6321c3003a0ce834acd8fb726abf27ce3
Nathan Binkert [Wed, 31 Aug 2005 14:00:42 +0000 (10:00 -0400)]
more scons fixes for mysql
build/SConstruct:
Only the major and minor mysql version numbers are guaranteed
to be integers (e.g. 4.1.10a), and since that's all we care about
only try to deal with those.
for older versions of mysql, the strings returned by mysql_config may
have quotes in them, remove those so things work
--HG--
extra : convert_revision :
de32f3e76618f0caf4d5578edd61beaeef666eb6
Steve Reinhardt [Wed, 31 Aug 2005 04:19:37 +0000 (00:19 -0400)]
Move options files from <build_dir>/build_options to build_options/<build_dir>.
build/SConstruct:
Move options file from <build_dir>/build_options to build_options/<build_dir>.
--HG--
extra : convert_revision :
0363f79ef5c9c157d9018fcae9c5e055e38e552d
Steve Reinhardt [Wed, 31 Aug 2005 03:53:35 +0000 (23:53 -0400)]
Add script to generate new build directories.
--HG--
extra : convert_revision :
2d2455ced5b33476bf88483c81ddf447a0658be2
Steve Reinhardt [Wed, 31 Aug 2005 03:34:36 +0000 (23:34 -0400)]
Fix to work with older versions of mysql_config that don't support --include.
Also add mysql version check.
--HG--
extra : convert_revision :
36b6174ed1c64e8c5516f6adee71f27e068ceca2
Steve Reinhardt [Tue, 30 Aug 2005 17:18:54 +0000 (13:18 -0400)]
Build options are set via a build_options file in the
build directory instead of being inferred from the name
of the build directory.
Options are passed to C++ via config/*.hh files instead of
via the command line. Build option flags are now always
defined to 0 or 1, so checks must use '#if' rather than
'#ifdef'.
SConscript:
MySQL detection moved to SConstruct.
Add config/*.hh files (via ConfigFile builder).
arch/alpha/alpha_memory.cc:
arch/alpha/ev5.cc:
arch/alpha/ev5.hh:
arch/alpha/isa_traits.hh:
base/fast_alloc.hh:
base/statistics.cc:
base/statistics.hh:
base/stats/events.cc:
base/stats/events.hh:
cpu/base.cc:
cpu/base.hh:
cpu/base_dyn_inst.cc:
cpu/base_dyn_inst.hh:
cpu/exec_context.cc:
cpu/exec_context.hh:
cpu/o3/alpha_cpu.hh:
cpu/o3/alpha_cpu_builder.cc:
cpu/o3/alpha_cpu_impl.hh:
cpu/o3/alpha_dyn_inst.hh:
cpu/o3/alpha_dyn_inst_impl.hh:
cpu/o3/alpha_params.hh:
cpu/o3/commit_impl.hh:
cpu/o3/cpu.cc:
cpu/o3/cpu.hh:
cpu/o3/fetch_impl.hh:
cpu/o3/iew.hh:
cpu/o3/iew_impl.hh:
cpu/o3/regfile.hh:
cpu/o3/rename_impl.hh:
cpu/o3/rob_impl.hh:
cpu/ozone/cpu.hh:
cpu/pc_event.cc:
cpu/simple/cpu.cc:
cpu/simple/cpu.hh:
sim/process.cc:
sim/process.hh:
Convert compile flags from def/undef to 0/1.
Set via #include config/*.hh instead of command line.
arch/alpha/isa_desc:
Convert compile flags from def/undef to 0/1.
Set via #include config/*.hh instead of command line.
Revamp fenv.h support... most of the ugliness is hidden
in base/fenv.hh now.
base/mysql.hh:
Fix typo in #ifndef guard.
build/SConstruct:
Build options are set via a build_options file in the
build directory instead of being inferred from the name
of the build directory.
Options are passed to C++ via config/*.hh files instead of
via the command line.
python/SConscript:
Generate m5_build_env directly from scons options
instead of indirectly via CPPDEFINES.
python/m5/convert.py:
Allow '0' and '1' for booleans.
Rewrite toBool to use dict.
base/fenv.hh:
Revamp <fenv.h> support to make it a compile option
(so we can test w/o it even if it's present) and to
make isa_desc cleaner.
--HG--
extra : convert_revision :
8f97dc11185bef5e1865b3269c7341df8525c9ad
Steve Reinhardt [Fri, 26 Aug 2005 12:18:23 +0000 (08:18 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5
--HG--
extra : convert_revision :
dc9d0dc344389063f7b2026bd7cf737bdab3ee8b
Steve Reinhardt [Fri, 26 Aug 2005 12:18:12 +0000 (08:18 -0400)]
Add explicit check for Python version to SConstruct.
build/SConstruct:
Add explicit check for Python version.
--HG--
extra : convert_revision :
19ee788f72d63eb301e4be4c0c5729a5025c379f
Nathan Binkert [Tue, 23 Aug 2005 15:47:55 +0000 (11:47 -0400)]
better debugging of the configuration builder.
--HG--
extra : convert_revision :
9c51937e8bcc1ff93e24bd507d662fd50b5de6a0
Nathan Binkert [Tue, 23 Aug 2005 15:47:12 +0000 (11:47 -0400)]
Clean up the passing of the boot command line to the kernel.
kern/linux/linux_system.cc:
Don't hard code the address of the command line in the kernel,
instead, deduce it from the location of known symbols.
don't use strcpy, it's dangerous.
kern/linux/linux_system.hh:
Don't hard code the address of the command line in the kernel,
instead, deduce it from the location of known symbols.
--HG--
extra : convert_revision :
128b1d5dbd00b0b8571707da99f86f76e29abfd1
Nathan Binkert [Tue, 23 Aug 2005 15:45:52 +0000 (11:45 -0400)]
Lots of fixes to serialization and naming of various device
objects. The improper serialization of arrays was particularly
bad.
dev/alpha_console.cc:
dev/isa_fake.cc:
dev/ns_gige.cc:
dev/pciconfigall.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
the pio interface is a different simobject and should have a
different name.
dev/ethertap.cc:
fix serialization.
dev/ide_ctrl.cc:
- the pio interface is a different simobject and should have a
different name.
- properly initialize variables
- When serializing an array, the size is the number of elements,
not the number of bytes!
dev/pcidev.cc:
When serializing an array, the size is the number of elements,
not the number of bytes!
dev/tsunami_io.hh:
Don't make objects SimObjects if they're not exposed to python.
Don't add serialization functions to events, it's generally not
what you want.
allow the real time clock and interval timer to serialize themselves,
must pass a base name since it is not a SimObject and the values will
be going into the section of the parent.
--HG--
extra : convert_revision :
3fc5de9b858ed770c8f385cf38b53242cf859c33
Nathan Binkert [Tue, 23 Aug 2005 15:38:27 +0000 (11:38 -0400)]
don't use sprintf. It's not guaranteed to not scribble over memory.
base/remote_gdb.cc:
use snprintf, it's safer
dev/ide_disk.cc:
use strncpy instead of snprintf
--HG--
extra : convert_revision :
90455e3f6bcb4c771724298a5a0b79a5b483a85c
Steve Reinhardt [Fri, 19 Aug 2005 21:10:17 +0000 (17:10 -0400)]
A few minor fixes to get things to build on Cygwin.
README:
Clarify cygwin EIO error explanation.
build/SConstruct:
Cygwin header files cause uninitialized var warnings.
dev/ide_ctrl.cc:
Get rid of unnecessary byte-swap calls, some of which were
too ambiguous for cygwin (or gcc 3.4.4).
dev/pcidev.cc:
Disambiguate arg for overloaded byte swap operation
(and fix it to be the correct one).
--HG--
extra : convert_revision :
be37c6315aacbec6332b1d09e726b39b4aa18dce
Steve Reinhardt [Fri, 19 Aug 2005 04:10:45 +0000 (00:10 -0400)]
Minor tweaks for 1.1 release.
README:
Updated for release 1.1. Clarified several minor things (I hope).
--HG--
extra : convert_revision :
a088f670739d33765611ce413b96854a1b51bb0f
Nathan Binkert [Thu, 18 Aug 2005 18:19:11 +0000 (14:19 -0400)]
Fix another bug from the freebsd merge
--HG--
extra : convert_revision :
b153b0c12b6678df148839617954a9a4c6fec7d4
Nathan Binkert [Thu, 18 Aug 2005 17:29:40 +0000 (13:29 -0400)]
Fix a couple of turbolaser problems that were introduced by the
new freebsd code.
dev/ns_gige.cc:
g++ doesn't like it when you declare a variable inside a case
label. Pull the declaration outside.
--HG--
extra : convert_revision :
d39e84fc58f2dd5b09c5948eedb4b1d7848e9817
Benjamin Nash [Tue, 16 Aug 2005 20:08:42 +0000 (16:08 -0400)]
Clean up freebsd_system.cc.
kern/freebsd/freebsd_system.cc:
Use htog instead of htoa.
--HG--
extra : convert_revision :
09224d60ce5bb3827c9f046127ff6fc72fa008d6
Benjamin Nash [Tue, 16 Aug 2005 19:45:30 +0000 (15:45 -0400)]
Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_dir/m5
into zed.eecs.umich.edu:/z/benash/bk/m5
--HG--
extra : convert_revision :
9b7ca872187a13179118ad0651301d531332dc63
Miguel Serrano [Tue, 16 Aug 2005 19:44:57 +0000 (15:44 -0400)]
Uart fix.
dev/uart8250.cc:
Fixed implementation of "transmit interrupt clear".
--HG--
extra : convert_revision :
cb69d61413ea799d5d3825fe2f0891dd72995561