Commit graph

344 commits

Author SHA1 Message Date
Gabe Black
591b05cf02 Regressions: Make X86_FS run automatically. 2011-03-12 14:38:57 -08:00
Gabe Black
fa448129b1 SCons: Turn some scons variables into command line options. 2011-03-03 23:54:31 -08:00
Gabe Black
441ab29820 Statetrace: Stub out the missing i386 version of sendState. 2011-03-02 22:53:11 -08:00
Gabe Black
9d2650792f Statetrace: Rename i386 to i686.
--HG--
rename : util/statetrace/arch/i386/tracechild.cc => util/statetrace/arch/i686/tracechild.cc
rename : util/statetrace/arch/i386/tracechild.hh => util/statetrace/arch/i686/tracechild.hh
2011-03-02 22:53:11 -08:00
Gabe Black
3bcd77ddef Statetrace: Fix the i686 detection macro. 2011-03-02 22:53:11 -08:00
Gabe Black
16d997840a Statetrace: Use sys/user.h instead of linux/user.h. 2011-03-02 22:53:11 -08:00
Gabe Black
d7a47af12d Statetrace: Tweak the help for the -nt option. 2011-03-02 22:53:11 -08:00
Gabe Black
eab89a09d2 Statetrace: Accomodate cross compiling statetrace with scons.
--HG--
rename : util/statetrace/arch/tracechild_amd64.cc => util/statetrace/arch/amd64/tracechild.cc
rename : util/statetrace/arch/tracechild_amd64.hh => util/statetrace/arch/amd64/tracechild.hh
rename : util/statetrace/arch/tracechild_arm.cc => util/statetrace/arch/arm/tracechild.cc
rename : util/statetrace/arch/tracechild_arm.hh => util/statetrace/arch/arm/tracechild.hh
rename : util/statetrace/arch/tracechild_i386.cc => util/statetrace/arch/i386/tracechild.cc
rename : util/statetrace/arch/tracechild_i386.hh => util/statetrace/arch/i386/tracechild.hh
rename : util/statetrace/arch/tracechild_sparc.cc => util/statetrace/arch/sparc/tracechild.cc
rename : util/statetrace/arch/tracechild_sparc.hh => util/statetrace/arch/sparc/tracechild.hh
rename : util/statetrace/tracechild_arch.cc => util/statetrace/base/arch_check.h
rename : util/statetrace/regstate.hh => util/statetrace/base/regstate.hh
rename : util/statetrace/statetrace.cc => util/statetrace/base/statetrace.cc
rename : util/statetrace/tracechild.cc => util/statetrace/base/tracechild.cc
rename : util/statetrace/tracechild.hh => util/statetrace/base/tracechild.hh
2011-03-02 22:53:11 -08:00
Gabe Black
9151c4039a Statetrace: Convert the build to scons. 2011-03-02 22:53:11 -08:00
Gabe Black
db090ea139 Statetrace: Allow the user to override CXX. 2011-03-02 22:53:11 -08:00
Gabe Black
43eda1f285 Statetrace: Get rid of explicit register name handling. 2011-03-02 22:53:10 -08:00
Gabe Black
3c19e45a68 Statetrace: Kill the printer functionality in statetrace. 2011-03-02 22:53:10 -08:00
Gabe Black
3df970f0de Statetrace: Clean up style. 2011-03-02 22:53:10 -08:00
Gabe Black
9836972a13 Util: Get rid of the make_release.py script.
Since we're not doing releases any more we don't really need this script. If
we need it in the future, we can resurrect it from the history.
2011-02-15 23:22:32 -08:00
Brad Beckmann
dfa8cbeb06 m5: added work completed monitoring support 2011-02-06 22:14:19 -08:00
Ali Saidi
25822ee655 mkblankimage: bash != sh on many systems and this script needs bash 2011-01-18 16:30:00 -06:00
Gabe Black
43b58ce3ad Style checker: Fix a couple bugs in style.py. 2011-01-13 12:30:18 -08:00
Nathan Binkert
fcc621ac79 style: prevent the style hook from aborting uncleanly because of an exception 2011-01-10 11:11:16 -08:00
Nathan Binkert
3c8cc170d2 style: clean up style hook code a bit
I've renamed the check_whitespace operation to check_style.  You're going to
need to change your .hg/hgrc file.  While you're at it, add a pre-qrefresh
hook please.
2011-01-10 11:11:15 -08:00
Nathan Binkert
fe6574ecc0 style: make style hook work with pre-qrefresh and update to use new code
clean up the code a little bit while we're at it.

I recommend that everyone adds the pre-qrefresh hook below since it
will make qref run the style hook and not just commit/qpush

[extensions]
style = <m5 path>/util/style.py

[hooks]
pretxncommit.style = python:style.check_whitespace
pre-qrefresh.style = python:style.check_whitespace
2010-12-30 12:53:56 -05:00
Gabe Black
cb3674cd27 X86: Remove reserved* from the m5 utility program for x86. 2010-11-22 05:47:54 -05:00
Ali Saidi
fe300c6de2 ARM: Add full-system regressions 2010-11-08 13:58:25 -06:00
Ali Saidi
432fa0aad6 ARM: Add support for M5 ops in the ARM ISA 2010-11-08 13:58:24 -06:00
Joel Hestness
73d9a51835 util/m5/m5.c: ensure readfile() buffer pages are in page table
(and marked dirty, in case that matters) by touching them beforehand
2010-08-12 17:16:04 -07:00
Steve Reinhardt
cbd65e95db util: add a script for testing checkpointing
See comments in util/checkpoint-tester.py for details.
2010-07-05 21:39:38 -07:00
Lisa Hsu
aeb6e2e3ec utils: checkpoint aggregator: some physmem files are too big to read at once,
break it up into reading one page at a time. Also, avoid redoing a aggregating a checkpoint that's
already done.

--HG--
rename : util/checkpoint-aggregator.py => util/checkpoint_aggregator.py
2010-06-03 10:34:40 -07:00
Ali Saidi
d3a519ef0c ARM: Fixup native trace support and add some v7/recent stack code 2010-06-02 12:58:17 -05:00
Gabe Black
d75ad847b3 Statetrace: Fix compile problems with the AMD64 version of statetrace. 2010-05-02 00:39:46 -07:00
Nathan Binkert
d2eb589675 regress: add some new options
add -n/--no-exec which doesn't execute scons, but just prints the command line
add -j0 which tries to calculate how many cpus you have
add -D/--build-dir to specify a build directory other than ./build
2010-03-23 16:31:47 -07:00
Brad Beckmann
ab2f864af2 m5: Regression Tester Update
This patch includes the necessary regression updates to test the new ruby
configuration system.  The patch includes support for multiple ruby protocols
and adds the ruby random tester.  The patch removes atomic mode test for
ruby since ruby does not support atomic mode acceses.  These tests can be
added back in when ruby supports atomic mode for real.

--HG--
rename : tests/quick/50.memtest/test.py => tests/quick/60.rubytest/test.py
2010-01-29 20:29:40 -08:00
Nathan Binkert
6bb9486598 style_hook: Fix the style hook
Re-enable it and update it for more modern versions of mercurial.
2010-01-23 09:43:18 -08:00
Derek Hower
589218168c Automated merge with ssh://hg@m5sim.org/m5 2010-01-22 17:23:21 -06:00
Lisa Hsu
1c448e2ab0 copyrights: add copyright info to the files I added.
checkpoint-aggregator.py was written at UM so I added a UM copyright, agg_se.py was
written at AMD so I added the AMD copyright.
2010-01-20 16:47:40 -08:00
Lisa Hsu
d6da172517 util: do checkpoint aggregation more cleanly, fix last changeset.
1) Move alpha-specific code out of page_table.cc:serialize().
2) Begin serializing M5_pid and unserializing it, but adding an function to do optional paramIn so that old checkpoints don't need to be fixed up.
3) Fix up alpha startup code so that the unserialized M5_pid value is properly written to DTB_IPR_ASN.
4) Fix the memory unserialize that I forgot somehow in the last changeset.
5) Add in an agg_se.py to handle aggregated checkpoints. --bench foo-bar plus positional arguments foo bar are the only changes in usage from se.py.
Note this aggregation stuff has only been tested for Alpha and nothing else, though it should take a very minimal amount of work to get it to work with another ISA.
2010-01-19 22:03:44 -08:00
Derek Hower
279f179bab merge 2010-01-19 15:48:12 -06:00
Lisa Hsu
4a40ac71f8 util: make a generic checkpoint aggregator that can aggregate different cpts into one multi-programmed cpt. Make minor changes to serialization/unserialization to get it to work properly. Note that checkpoints were made with a comment at the beginning with // - this must be changed to ## to work properly with the python config parser in the aggregator. 2010-01-18 14:30:31 -08:00
Nathan Binkert
a02b21977a regress: add POWER to regressions 2009-10-28 11:56:43 -07:00
Steve Reinhardt
7a8ee4f40a rundiff: Don't flush stdout until after postcontext is printed. 2009-09-26 10:50:50 -07:00
Nathan Binkert
2278363015 slicc: Pure python implementation of slicc.
This is simply a translation of the C++ slicc into python with very minimal
reorganization of the code.  The output can be verified as nearly identical
by doing a "diff -wBur".

Slicc can easily be run manually by using util/slicc
2009-09-22 18:12:39 -07:00
Polina Dudnik
114d8724dd Functionality migrated to sequencer. 2009-09-17 17:39:52 -05:00
Polina Dudnik
a4fc1bad94 [mq]: first_patch 2009-08-21 15:52:46 -05:00
Gabe Black
e09ae149af Statetrace: Make sure the current state is loaded to print the initial stack frame.
The early call to child->step() was removed earlier because it confused the
new differences-only protocol ARM sendState() was using. It's necessary that
that gets called at least once before attempting to print the initial stack
frame, though, because otherwise statetrace doesn't know what the stack
pointer is. By putting the first call to child->step() in a common spot, both
needs are met.
2009-07-29 00:35:49 -07:00
Gabe Black
873112ea99 ARM: Make sure the target process doesn't run away from statetrace. 2009-07-29 00:14:43 -07:00
Gabe Black
52b4a7c36f ARM: Only send information that changed between statetrace and M5. 2009-07-27 00:54:30 -07:00
Gabe Black
1ad4de2528 imported patch statetracehost.patch 2009-07-27 00:54:04 -07:00
Ali Saidi
081b6fe9db ARM: Add ARM support to statetrace. 2009-07-27 00:53:39 -07:00
Gabe Black
6835dbce34 Statetrace: Fix up headers. 2009-07-27 00:53:32 -07:00
Nathan Binkert
5738dc3400 stats: fix usage of jobfile 2009-07-02 16:48:21 -07:00
Gabe Black
fa63af110c makerelease: Don't hide x86 any more. 2009-06-23 00:14:24 -07:00
Gabe Black
be3542ebdb Regressions: Build ARM_SE regressions by default. 2009-06-23 00:07:39 -07:00
Steve Reinhardt
6566028801 util: mkblankimage.sh should be executable 2009-05-22 21:24:09 -07:00
Nathan Binkert
8d2e51c7f5 includes: sort includes again 2009-05-17 14:34:52 -07:00
Steve Reinhardt
4f7d6a881c rundiff: flush stdout after each diff 2009-04-21 11:34:26 -07:00
Nathan Binkert
08043c777f style: fix style hook for some newer versions of mercurial. 2009-04-08 22:21:25 -07:00
Ali Saidi
d5ef9ee06b CPA: Add m5ops for critical path annotation work. 2009-02-26 19:29:16 -05:00
Nathan Binkert
64ed39f61b pseudo inst: Add new wake cpu instruction for sending a message to wake a cpu.
It's instantaneous and so it's somewhat bogus, but it's a first step.
2009-01-24 07:27:22 -08:00
Ali Saidi
758d6ccf1f Fix style hook for Mercurial >= 1.1 2009-01-13 00:14:04 -05:00
Gabe Black
49dcab0ce6 X86: Set up support for adding m5 pseudo insts to a binary. 2009-01-07 00:05:33 -08:00
Nathan Binkert
d6b229ea0f Add the mkblankimage.sh utility to the utils directory. 2008-12-03 04:57:55 -08:00
Nathan Binkert
47e2b08893 util/m5: Add a new function called pin to bind a program to a set of cores.
This is not m5 specific and this currently only works in linux.
2008-12-03 04:57:54 -08:00
Nathan Binkert
ab593c69b6 util/m5: reorganize code so it is easier to add operations 2008-12-03 04:57:53 -08:00
Steve Reinhardt
3701794d33 Minor tracediff bug fixes. 2008-11-17 11:22:16 -08:00
Clint Smullen
ba8936120e Remove the pointless, repository destroying assertion and just have the script check every line in the file if it cannot get context information. 2008-11-15 00:21:31 -05:00
Nathan Binkert
eb5d9ba72b pseudo inst: Add rpns (read processor nanoseconds) instruction.
This instruction basically returns the number of nanoseconds that the CPU
has been running.
2008-11-10 11:51:18 -08:00
Steve Reinhardt
72743e5020 tracediff: add '#' support for sub-arg alternatives, '-n' param 2008-11-06 20:23:05 -08:00
Ali Saidi
0bd9bbae4c Cleanup m5term changes with Nate's comments. 2008-10-01 16:37:49 -04:00
Ali Saidi
4ba87133bd Make m5term use select() so OS X is happy. 2008-10-01 16:27:52 -04:00
Ali Saidi
3a3e356f4e style: Remove non-leading tabs everywhere they shouldn't be. Developers should configure their editors to not insert tabs 2008-09-10 14:26:15 -04:00
Nathan Binkert
f9a597ddf3 m5ops: clean up the m5ops stuff.
- insert warnings for deprecated m5ops
- reserve opcodes for Ali's stuff
- remove code for stuff that has been deprecated forever
- simplify m5op_alpha
2008-07-11 08:52:50 -07:00
Nathan Binkert
f82d4e2364 python: Move various utility classes into a new m5.util package so
they're all in the same place.  This also involves having just one
jobfile.py and moving it into the utils directory to avoid
duplication.  Lots of improvements to the utility as well.

--HG--
rename : src/python/m5/attrdict.py => src/python/m5/util/attrdict.py
rename : util/pbs/jobfile.py => src/python/m5/util/jobfile.py
rename : src/python/m5/util.py => src/python/m5/util/misc.py
rename : src/python/m5/multidict.py => src/python/m5/util/multidict.py
rename : util/stats/orderdict.py => src/python/m5/util/orderdict.py
2008-06-14 20:19:49 -07:00
Nathan Binkert
ed84388b85 Add hg commands for style check so you can check at times other than commit 2008-06-14 19:37:26 -07:00
Ali Saidi
8c0baf2ce4 Update make release, README, and RELEASE_NOTES for b5
--HG--
extra : convert_revision : a4958e934f599bff24b251507da7c266c89430fc
2008-02-26 17:28:31 -05:00
Steve Reinhardt
b7ea470a97 Fix minor bug in util/style.py
--HG--
extra : convert_revision : d37accc884c2967d87dd267debab5afeb8b6ed85
2007-12-11 10:41:30 -08:00
Steve Reinhardt
088d7c7096 Might as well ship splash2 scripts since we get questions on the list.
--HG--
extra : convert_revision : 0bc61d239eb24956aa401bbf39470bfa81c86c29
2007-11-20 07:36:49 -08:00
Steve Reinhardt
af6e4bf96a Add -k flag to util/regress.
--HG--
extra : convert_revision : 6dae828a1b6a254821095a1743325976202beec1
2007-11-13 18:45:51 -08:00
Ali Saidi
4df5d6483e RELEASE: A little more work on make_release.py
--HG--
extra : convert_revision : e3efbc0a79212c7474d547545411518b057cc1e9
2007-11-04 18:57:16 -05:00
Ali Saidi
95dddad9ab RELEASE: Add dummy cpu to make SCons + Python 2.5 happy
--HG--
extra : convert_revision : 85ca7d737a7592946bedb7d1724aefa62ad1231e
2007-11-02 02:26:13 -04:00
Ali Saidi
5289067ec9 RELEASE: remove insttest since we're not shipping the binary.
--HG--
extra : convert_revision : e1b074fb21b2be0f2cec59a170a2216913c6e89b
2007-11-02 02:18:46 -04:00
Ali Saidi
6db36c331d RELEASE: Grammer
--HG--
extra : convert_revision : f9ad0ea469aaf6ec059bd50db0cc5d956c354e2c
2007-11-01 21:18:08 -04:00
Ali Saidi
81fa75638b RELEASE: More changes to text
--HG--
extra : convert_revision : 86c0dec05f392078dfb2c3f941debc9bc46f63bb
2007-11-01 21:07:49 -04:00
Ali Saidi
a06604db1d Release: fix make_release bug
--HG--
extra : convert_revision : 4317e5909f23e2b8bf6e8407f0df10fad34e9e35
2007-10-31 17:52:07 -04:00
Ali Saidi
1b82d53774 RELEASE: Update make release for new release.
--HG--
extra : convert_revision : 94403c4279ef358ea9cf78e5ffb13476496c28f5
2007-10-31 01:21:55 -04:00
Gabe Black
bec1bfb493 Regressions: Added X86_SE into the default list of builds.
--HG--
extra : convert_revision : 3dcdaca58340ec2cc190ecb692c79128be1a14d6
2007-10-26 14:32:36 -07:00
Ali Saidi
c648044100 Make qdo work with oar. I don't know if this catches every case, but it appears
to be working at the moment.

--HG--
extra : convert_revision : 90a5b0e2a06087259c97ff88b94852ddea8ea7b2
2007-10-10 23:24:16 -04:00
Gabe Black
26044dca33 X86/StateTrace: Make m5 and statetrace track mmx and xmm registers, and actually compare xmm.
--HG--
extra : convert_revision : 02c6641200edb133c9bc11f1fdf3c1a0b1c87e77
2007-09-04 23:39:57 -07:00
Nathan Binkert
3555b2aecc style: fix style hook when run from a repo subdir.
Before this fix, the style hook would blow up when you did a qrefresh to add
a new file, but executed the qrefresh from a repository sub directory.

--HG--
extra : convert_revision : 851b0421dfa5c5b23d0f49441c4ba2e0ac579c5d
2007-08-21 16:15:14 -07:00
Nathan Binkert
a9e4daf574 style: Don't try to fix files that should be ignored.
The style hook was ignoring new files, but processing all modified
files.

--HG--
extra : convert_revision : 97400c24a12103d7ac3d4f69b026853816c39d72
2007-08-14 18:21:23 -07:00
Ali Saidi
546fbfb47c fixup bad hand merge
--HG--
extra : convert_revision : 71db222856a811f2724bbc9bbe4069c1f61754ed
2007-08-13 23:45:07 -04:00
Ali Saidi
27ddf0b40e Merge IGNORE_STYLE change and my change.
--HG--
extra : convert_revision : 13880ec6df17b0317d4097243bb24add753a098a
2007-08-13 23:44:26 -04:00
Ali Saidi
b069b81acf Regression: See if using subprocess instead of os.system and erroring immediately will stop regression randomly hanging.
--HG--
extra : convert_revision : a663ae935edd1b6e8f0bb5b08583a5b9761d0939
2007-08-13 23:40:43 -04:00
Nathan Binkert
64295b800f merge
--HG--
extra : convert_revision : 5866eaa4008c4fa5da7fbb443132b8326955f71d
2007-08-12 09:56:37 -07:00
Nathan Binkert
b92594dd90 style: If IGNORE_STYLE=True is set on the scons command line, ignore style.
Use this in the regress script to avoid issues with the checker.

--HG--
extra : convert_revision : 562b6a6d73dc46e412d00ba2588af2793335274e
2007-08-12 09:56:05 -07:00
Gabe Black
e85144bff2 Statetrace: Make statetrace do string instructions all at once like m5 does.
--HG--
extra : convert_revision : 2103029077450e46f70077066708255310963d9d
2007-08-07 15:27:54 -07:00
Gabe Black
baa1182513 Merge with head.
--HG--
extra : convert_revision : 646d559a10706521b1918d2378d0f99ab5255c77
2007-08-01 16:00:33 -07:00
Gabe Black
a88f01c200 Statetrace: Make sure all the info block strings are printed.
--HG--
extra : convert_revision : 534b4f5cee3fd1a6d3638d9a910d22ad1aa81fde
2007-08-01 15:40:41 -07:00
Steve Reinhardt
08474ccf68 Merge Gabe's changes from head.
--HG--
extra : convert_revision : d00b7b09c7f19bc0e37b385ef7c124f69c0e917f
2007-07-29 13:25:14 -07:00
Gabe Black
b4087e0e44 Statetrace: Make statetrace patch amd64 executables for true single stepping after system calls.
Because of peculiarities in how system calls are returned from, single stepping executes some system calls and the instruction following them in a single step. Statetrace now patches the executable image when it detects a system call to force "correct" behavior, aka the appearance of stepping one instruction every single time.

--HG--
extra : convert_revision : ac6243a2e00ff98f827b005efd27b4dc5be4f774
2007-07-29 12:37:35 -07:00
Gabe Black
c5c64823fc Merge with head. style.py was also missing an argument in one call to modified_lines.
--HG--
extra : convert_revision : 0f4e23007399f9d0e2be5310062bd61f5415550d
2007-07-29 01:38:07 -07:00
Gabe Black
c52e28a4d9 Statetrace: Print the correct address of auxiliary vectors.
The address of the stackpointer proceeding the vector minus 8 should be minus 16.

--HG--
extra : convert_revision : 648f01e9753e28391fc8d282bd9fe2bd47a0193f
2007-07-29 01:29:53 -07:00
Nathan Binkert
398f6a70a7 merge: style.py fix
--HG--
extra : convert_revision : 2bb456f292a862e1615c370c1d14a3f709860c38
2007-07-28 21:57:24 -07:00