Commit graph

4406 commits

Author SHA1 Message Date
Gabe Black 89da836bcf gzip is really a tru64 regression, not linux
--HG--
rename : tests/long/00.gzip/ref/alpha/linux/o3-timing/config.ini => tests/long/00.gzip/ref/alpha/tru64/o3-timing/config.ini
rename : tests/long/00.gzip/ref/alpha/linux/o3-timing/config.out => tests/long/00.gzip/ref/alpha/tru64/o3-timing/config.out
rename : tests/long/00.gzip/ref/alpha/linux/o3-timing/m5stats.txt => tests/long/00.gzip/ref/alpha/tru64/o3-timing/m5stats.txt
rename : tests/long/00.gzip/ref/alpha/linux/o3-timing/stderr => tests/long/00.gzip/ref/alpha/tru64/o3-timing/stderr
rename : tests/long/00.gzip/ref/alpha/linux/o3-timing/stdout => tests/long/00.gzip/ref/alpha/tru64/o3-timing/stdout
rename : tests/long/00.gzip/ref/alpha/linux/simple-atomic/config.ini => tests/long/00.gzip/ref/alpha/tru64/simple-atomic/config.ini
rename : tests/long/00.gzip/ref/alpha/linux/simple-atomic/config.out => tests/long/00.gzip/ref/alpha/tru64/simple-atomic/config.out
rename : tests/long/00.gzip/ref/alpha/linux/simple-atomic/m5stats.txt => tests/long/00.gzip/ref/alpha/tru64/simple-atomic/m5stats.txt
rename : tests/long/00.gzip/ref/alpha/linux/simple-atomic/stderr => tests/long/00.gzip/ref/alpha/tru64/simple-atomic/stderr
rename : tests/long/00.gzip/ref/alpha/linux/simple-atomic/stdout => tests/long/00.gzip/ref/alpha/tru64/simple-atomic/stdout
rename : tests/long/00.gzip/ref/alpha/linux/simple-timing/config.ini => tests/long/00.gzip/ref/alpha/tru64/simple-timing/config.ini
rename : tests/long/00.gzip/ref/alpha/linux/simple-timing/config.out => tests/long/00.gzip/ref/alpha/tru64/simple-timing/config.out
rename : tests/long/00.gzip/ref/alpha/linux/simple-timing/m5stats.txt => tests/long/00.gzip/ref/alpha/tru64/simple-timing/m5stats.txt
rename : tests/long/00.gzip/ref/alpha/linux/simple-timing/stderr => tests/long/00.gzip/ref/alpha/tru64/simple-timing/stderr
rename : tests/long/00.gzip/ref/alpha/linux/simple-timing/stdout => tests/long/00.gzip/ref/alpha/tru64/simple-timing/stdout
extra : convert_revision : e38a226137968d0893e325c22489375ce4a691a2
2007-03-11 18:53:40 -04:00
Gabe Black c240d4af84 The alpha twolf regression was really for tru64, not linux.
--HG--
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/config.ini => tests/long/70.twolf/ref/alpha/tru64/o3-timing/config.ini
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/config.out => tests/long/70.twolf/ref/alpha/tru64/o3-timing/config.out
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/m5stats.txt => tests/long/70.twolf/ref/alpha/tru64/o3-timing/m5stats.txt
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.out => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.out
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.pin => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.pin
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.pl1 => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.pl1
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.pl2 => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.pl2
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.sav => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.sav
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.sv2 => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.sv2
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/smred.twf => tests/long/70.twolf/ref/alpha/tru64/o3-timing/smred.twf
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/stderr => tests/long/70.twolf/ref/alpha/tru64/o3-timing/stderr
rename : tests/long/70.twolf/ref/alpha/linux/o3-timing/stdout => tests/long/70.twolf/ref/alpha/tru64/o3-timing/stdout
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/config.ini => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/config.ini
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/config.out => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/config.out
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/m5stats.txt => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/m5stats.txt
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.out => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.out
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.pin => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.pin
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.pl1 => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.pl1
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.pl2 => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.pl2
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.sav => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.sav
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.sv2 => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.sv2
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/smred.twf => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/smred.twf
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/stderr => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/stderr
rename : tests/long/70.twolf/ref/alpha/linux/simple-atomic/stdout => tests/long/70.twolf/ref/alpha/tru64/simple-atomic/stdout
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/config.ini => tests/long/70.twolf/ref/alpha/tru64/simple-timing/config.ini
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/config.out => tests/long/70.twolf/ref/alpha/tru64/simple-timing/config.out
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/m5stats.txt => tests/long/70.twolf/ref/alpha/tru64/simple-timing/m5stats.txt
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.out => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.out
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.pin => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.pin
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.pl1 => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.pl1
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.pl2 => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.pl2
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.sav => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.sav
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.sv2 => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.sv2
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/smred.twf => tests/long/70.twolf/ref/alpha/tru64/simple-timing/smred.twf
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/stderr => tests/long/70.twolf/ref/alpha/tru64/simple-timing/stderr
rename : tests/long/70.twolf/ref/alpha/linux/simple-timing/stdout => tests/long/70.twolf/ref/alpha/tru64/simple-timing/stdout
extra : convert_revision : 55f9327662e0902925ca14b3260a86f7d211d445
2007-03-11 18:44:36 -04:00
Gabe Black d22786828c Make the SPEC regressions work for any isa/operating system.
--HG--
extra : convert_revision : b7b0823357f722119559e5703b36ea82ed6f8c0f
2007-03-11 18:21:05 -04:00
Gabe Black 6a7e4a5904 Merge zizzer.eecs.umich.edu:/bk/newmem
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace

--HG--
extra : convert_revision : 725999a0a5bde6e065bad87b42e973c5c627c69f
2007-03-11 18:19:38 -04:00
Gabe Black 26c0426e44 Make sttw and sttwa use the twin memory operations.
--HG--
extra : convert_revision : 368d1c57a46fd5ca15461cb5ee8e05fd1e080daa
2007-03-11 18:12:33 -04:00
Gabe Black 78cf033dc0 Merge zower:/home/gblack/m5/newmem-statetrace
into  zizzer.eecs.umich.edu:/.automount/zower/eecshome/m5/newmem-statetrace-test

--HG--
extra : convert_revision : 48356df2faf42dc2b715497464f03103ed5ea01b
2007-03-11 15:01:42 -05:00
Nathan Binkert 1aef5c06a3 Rework the way SCons recurses into subdirectories, making it
automatic.  The point is that now a subdirectory can be added
to the build process just by creating a SConscript file in it.
The process has two passes.  On the first pass, all subdirs
of the root of the tree are searched for SConsopts files.
These files contain any command line options that ought to be
added for a particular subdirectory.  On the second pass,
all subdirs of the src directory are searched for SConscript
files.  These files describe how to build any given subdirectory.
I have added a Source() function.  Any file (relative to the
directory in which the SConscript resides) passed to that
function is added to the build.  Clean up everything to take
advantage of Source().
function is added to the list of files to be built.

--HG--
extra : convert_revision : 103f6b490d2eb224436688c89cdc015211c4fd30
2007-03-10 23:00:54 -08:00
Gabe Black 52ec0fe3d9 Merge zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace-test

--HG--
extra : convert_revision : dc02bb6b4e5cc7f0260da80a71b9713f75566a29
2007-03-10 20:52:55 -05:00
Gabe Black 780489d58b Merge zizzer.eecs.umich.edu:/bk/newmem
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace

--HG--
extra : convert_revision : 6a8749be327bf2be888850060ae0427f0c943439
2007-03-10 19:52:53 -05:00
Gabe Black 91c812c34d Merge zower:/home/gblack/m5/newmem-statetrace
into  zizzer.eecs.umich.edu:/.automount/zower/eecshome/m5/newmem-statetrace-test

--HG--
extra : convert_revision : c6a45d188b729176e196e19e2d75328da0414084
2007-03-10 19:44:00 -05:00
Gabe Black 7e363e14f7 Fix bounds check for the cwp
--HG--
extra : convert_revision : 097e6b0c80d71417329b2a4cd118046aa5ed777a
2007-03-10 19:29:31 -05:00
Gabe Black 91e8729c28 Added implementations of the fpop2 instructions.
--HG--
extra : convert_revision : 1fc88b499334bb4ba44375347d0062843587b6cf
2007-03-10 19:26:54 -05:00
Gabe Black e98265b7d6 Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
into  zizzer.eecs.umich.edu:/.automount/zower/eecshome/m5/newmem-statetrace-test

--HG--
extra : convert_revision : fcbc63179c7ca54391d42f83366edcc96d09005b
2007-03-10 18:00:49 -05:00
Gabe Black bf4dade64a Merge zizzer.eecs.umich.edu:/bk/newmem
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace-test

--HG--
extra : convert_revision : df36efd84d938e0e402648b85b3732ed786aaa29
2007-03-10 17:46:25 -05:00
Gabe Black c5b49bdbad If you can't get rid of the files you want to make sure are gone, assume they're already gone. Print a warning and move on.
--HG--
extra : convert_revision : 192740b1e1a7a30222c4e79c7e7a5770e682f014
2007-03-10 17:45:53 -05:00
Gabe Black 23bcd2654a Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
into  zizzer.eecs.umich.edu:/.automount/zower/eecshome/m5/newmem-statetrace-test

--HG--
extra : convert_revision : 50a40bea13892f2293ef037ac13b6c80dd8db5c2
2007-03-10 17:42:53 -05:00
Gabe Black 25dc5569c3 Compilation fix
--HG--
extra : convert_revision : 8bfa5e9408d1ead0197aab5078c248876f90ea7a
2007-03-10 15:21:55 -05:00
Ali Saidi ef6dfc2983 I thought this code got deleted, but since it hasn't I've moved it to a place where it doesn't access freed memory.
--HG--
extra : convert_revision : 4d9023f6193004a3e9cbeebd3721bccb50b2aab0
2007-03-10 15:00:41 -05:00
Gabe Black df1ea2cf05 Merge zizzer.eecs.umich.edu:/bk/newmem
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace

--HG--
extra : convert_revision : 82a956ffc1bedb2c0d05c4ea3469f843f559a475
2007-03-09 18:32:13 -05:00
Gabe Black f1e3e1c305 Use the TheISA namespace in case we're coming from a file that doesn't do that for us. This should be contained in the scope of the function and not leak elsewhere.
--HG--
extra : convert_revision : 0bb0e1457011505a99a871c443bc45f4365e9c7e
2007-03-09 22:14:25 +00:00
Gabe Black 03ff1c3167 Split the syscall table, SPARC specific syscall implementations, and the 32 bit syscall table into it's own file. Corrected problems with the stat structure. These should be tested on 64 bit x86 and SPARC machines.
--HG--
extra : convert_revision : 5d9fe19e031b92e111069c6b89c3dbeb29975b8a
2007-03-09 17:14:24 -05:00
Ali Saidi dc4d47bad4 Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : 5804298706ac0f04fbe491326af71ce9ab74425a
2007-03-09 16:56:52 -05:00
Ali Saidi 58f69391ca implement ipi stufff for SPARC
src/arch/alpha/utility.hh:
src/arch/mips/utility.hh:
src/arch/sparc/utility.hh:
src/arch/x86/utility.hh:
    add hook for system to startup the cpu or not... in the case of FS sparc, only the first cpu would get spunup.. the rest sit in an idle state until they get an ipi
src/arch/sparc/isa/decoder.isa:
    handle writable bits of strandstatus register in miscregfile
src/arch/sparc/miscregfile.hh:
    some constants for the strand status register
src/arch/sparc/ua2005.cc:
    properly implement the strand status register
src/dev/sparc/iob.cc:
    implement ipi generation properly
src/sim/system.cc:
    call into the ISA to start the CPU (or not)

--HG--
extra : convert_revision : 0003b2032337d8a031a9fc044da726dbb2a9e36f
2007-03-09 16:56:39 -05:00
Ali Saidi 9d026ac006 fix regress... SPARC_FS may not be in the builds so check for it
--HG--
extra : convert_revision : 16710e4c44bd34496ed31ae8e954544b06e92589
2007-03-09 16:27:24 -05:00
Kevin Lim ad44834907 Two fixes:
1. Make sure connectMemPorts() only gets called when the CPU's peer gets changed.  This is done by making setPeer() virtual, and overriding it in the CPU's ports.  When it gets called on a CPU's port (dcache specifically), it calls the normal setPeer() function, and also connectMemPorts().
2. Consolidate redundant code that handles switching in a CPU.

src/cpu/base.cc:
    Move common code of switching over peers to base CPU.
src/cpu/base.hh:
    Move common code of switching over peers to BaseCPU.
src/cpu/o3/cpu.cc:
    Add in function that updates thread context's ports.
    Also use updated function to takeOverFrom() in BaseCPU.  This gets rid of some repeated code.
src/cpu/o3/cpu.hh:
    Include function to update thread context's memory ports.
src/cpu/o3/lsq.hh:
    Add function to dcache port that will update the memory ports upon getting a new peer.
    Also include a function that will tell the CPU to update those memory ports.
src/cpu/o3/lsq_impl.hh:
    Add function that will update the memory ports upon getting a new peer.
src/cpu/simple/atomic.cc:
src/cpu/simple/timing.cc:
    Add function that will update thread context's memory ports upon getting a new peer.
    Also use the new BaseCPU's take over from function.
src/cpu/simple/atomic.hh:
    Add in function (and dcache port) that will allow the dcache to update memory ports when it gets assigned a new peer.
src/cpu/simple/timing.hh:
    Add function that will update thread context's memory ports upon getting a new peer.
src/mem/port.hh:
    Make setPeer virtual so that other classes can override it.

--HG--
extra : convert_revision : 2050f1241dd2e83875d281cfc5ad5c6c8705fdaf
2007-03-09 10:06:09 -05:00
Ali Saidi 1158da37fb Panic if any CMT registers are accessed
src/arch/sparc/asi.cc:
src/arch/sparc/asi.hh:
    add CMT ASI registers
src/arch/sparc/tlb.cc:
    Panic if any of the CMT registers are being accessed

--HG--
extra : convert_revision : b9a94281e2074a576ac21d042b756950d509e758
2007-03-08 21:49:13 -05:00
Ali Saidi 027dfa01e6 stop m5 from leaking like a sieve
don't create a new physPort/virtPort every time activateContext() is called
add the ability to tell a memory object to delete it's reference to a port and a method to have a port call deletePortRefs()
on the port owner as well as delete it's peer
still need to stop calling connectMemoPorts() every time activateContext() is called or we'll overflow the bus id and panic

src/cpu/thread_state.cc:
    if we hav ea (phys|virt)Port don't create a new on, have it delete it's peer and then reuse it
src/mem/bus.cc:
src/mem/bus.hh:
    add ability to delete a port by usig a hash_map instead of an array to store port ids
    add a function to do deleting
src/mem/cache/cache.hh:
src/mem/cache/cache_impl.hh:
src/mem/mem_object.cc:
src/mem/mem_object.hh:
    adda function to delete port references from a memory object
src/mem/port.cc:
src/mem/port.hh:
    add a removeConn function that tell the owener to delete any references to the port and then deletes its peer

--HG--
extra : convert_revision : 272f0c8f80e1cf1ab1750d8be5a6c9aa110b06a4
2007-03-08 18:57:15 -05:00
Gabe Black c40d95e4c4 Fixed an off-by-one error.
--HG--
extra : convert_revision : 498fef18cf339cabc2c00e4758bc8a0da857daca
2007-03-08 00:55:16 -05:00
Gabe Black 46051c5f65 Merge zizzer.eecs.umich.edu:/bk/newmem
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace

--HG--
extra : convert_revision : becba8537b11ee4ef33bbf129bef2ca047403df5
2007-03-08 00:42:30 -05:00
Gabe Black 5caf721074 Fix up the SPARC initial stack frame to match an actual 32 bit process.
--HG--
extra : convert_revision : 3995744c3bf955a370b18f6e88de1bfb82f79843
2007-03-08 00:29:37 -05:00
Ali Saidi 87fb0eb8de I missed a couple of WithEffects, this should do it
--HG--
extra : convert_revision : 19fce78a19b27b7ccb5e3653a64b46e6d5292915
2007-03-07 21:51:44 -05:00
Ali Saidi 2f7a4e1d1b fix compiling of FS after Gabe's last compile
--HG--
extra : convert_revision : a93fa5ad61aa2b8c18bf6c513b617f3425ffb220
2007-03-07 21:50:09 -05:00
Gabe Black 54fc750924 Move the magic m5 PageTableFault into sim/faults.[hh,cc] since it's the same across all architectures.
--HG--
extra : convert_revision : 18d441eb7ac44df4df41771bfe3dec69f7fa70ec
2007-03-07 20:04:46 +00:00
Gabe Black 8edc9d79ce Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem

--HG--
extra : convert_revision : d764fe37c71269a04fcede6cbf30e24262447e89
2007-03-07 20:04:45 +00:00
Ali Saidi 49527ab553 Merge zizzer:/bk/newmem
into  zeep.pool:/tmp/newmem

--HG--
extra : convert_revision : f078a05729b5fe464a06a58bc4adcb374f560572
2007-03-07 15:04:44 -05:00
Ali Saidi 689cab36c9 *MiscReg->*MiscRegNoEffect, *MiscRegWithEffect->*MiscReg
--HG--
extra : convert_revision : f799b65f1b2a6bf43605e6870b0f39b473dc492b
2007-03-07 15:04:31 -05:00
Gabe Black c822513269 Add setData functions for the new Twin??_t types.
--HG--
extra : convert_revision : 6f4e08e76eb4a95eb08b11632f6e33ba458723b6
2007-03-07 17:46:06 +00:00
Gabe Black f04e535f26 Add some constructors and an output operator to the Twin??_t types so that o3 SPARC will compile again.
--HG--
extra : convert_revision : af987aaeac87ee92a3b55cf0839d994cf7dea1af
2007-03-07 17:46:05 +00:00
Gabe Black b7ea19760a Make byteswap work correctly on Twin??_t types.
--HG--
extra : convert_revision : a8a14078d62c24e480ffa69591edfc775d1d76cc
2007-03-07 17:46:04 +00:00
Ali Saidi ea7bdf9f60 Merge zizzer:/bk/newmem
into  udhcp-macvpn-108.public.engin.umich.edu:/Users/ali/work/m5.newmem

--HG--
extra : convert_revision : c6b11f535cca7fd46f1a3cea3b5a966e8fa80347
2007-03-07 12:46:03 -05:00
Ali Saidi 44b732691f If we're running the quick tests, remove the SPARC_FS build since we don't have any quick SPARC_FS tests at the moment
--HG--
extra : convert_revision : 4505f1600cae5d049560f3b397541e9a9dea0420
2007-03-07 12:45:21 -05:00
Nathan Binkert 21391d494c Cleanup
--HG--
extra : convert_revision : 31f1b0f760a6eb861652440f9d42aaf123ef4833
2007-03-06 22:16:18 -08:00
Gabe Black 44f91bb444 Merge zizzer.eecs.umich.edu:/bk/newmem
into  ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86

--HG--
extra : convert_revision : 0822fbcc377781b53d2de9ba40ab9d985ccbc039
2007-03-06 20:58:44 +00:00
Ali Saidi 329db76e47 Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : fa1e361fcae10fe7a91118007faeeabe3fecba2a
2007-03-06 15:58:43 -05:00
Ali Saidi 5b1970d1a3 Add regression for SPARC "hard" instruction test. Only runs in simple-atomic right now since we don't have cache support for
the atomic instructions.

--HG--
extra : convert_revision : b7013e6963885dfe2b4630ac175e24ddad6d42a6
2007-03-06 15:57:28 -05:00
Nathan Binkert 44f215f44d Python parameters types need analogous C++ types
--HG--
extra : convert_revision : d068dfec69b28d48fc299a4108e165decfaaace7
2007-03-06 11:16:15 -08:00
Nathan Binkert d55b25cde6 Move all of the parameters of the Root SimObject so they are
directly configured by python.  Move stuff from root.(cc|hh) to
core.(cc|hh) since it really belogs there now.
In the process, simplify how ticks are used in the python code.

--HG--
extra : convert_revision : cf82ee1ea20f9343924f30bacc2a38d4edee8df3
2007-03-06 11:13:43 -08:00
Gabe Black 05c86ec0d7 Get X86 to load an elf and start a process for it.
src/arch/x86/SConscript:
    Add in process source files.
src/arch/x86/isa_traits.hh:
    Replace magic constant numbers with the x86 register names.
src/arch/x86/miscregfile.cc:
    Make clear the miscreg file succeed. There aren't any misc regs, so clearing them is very easy.
src/arch/x86/process.hh:
    An X86 process class.
src/base/loader/elf_object.cc:
    Add in code to recognize x86 as an architecture.
src/base/traceflags.py:
    Add an x86 traceflag
src/sim/process.cc:
    Add in code to create an x86 process.
src/arch/x86/intregs.hh:
    A file which declares names for the integer register indices.
src/arch/x86/linux/linux.cc:
src/arch/x86/linux/linux.hh:
    A very simple translation of SPARC's linux.cc and linux.hh. It's probably not correct for x86, but it might not be correct for SPARC either.
src/arch/x86/linux/process.cc:
src/arch/x86/linux/process.hh:
    An x86 linux process. The syscall table is split out into it's own file.
src/arch/x86/linux/syscalls.cc:
    The x86 Linux syscall table and the uname function.
src/arch/x86/process.cc:
    The x86 process base class.
tests/test-progs/hello/bin/x86/linux/hello:
    An x86 hello world test binary.

--HG--
extra : convert_revision : f22919e010c07aeaf5757dca054d9877a537fd08
2007-03-06 15:42:30 +00:00
Nathan Binkert f800fddcea Python atexit handlers are called in reverse order.
Fix things so the stats dump happens last.

--HG--
extra : convert_revision : ea842dbcbb77dd1c715c4e5b57d2470e558c4265
2007-03-05 20:14:00 -08:00
Gabe Black f776ec84c1 Merge zizzer.eecs.umich.edu:/bk/newmem
into  zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace

--HG--
extra : convert_revision : 0959fb162253ff1eed8da0a990f58897322f0e1f
2007-03-05 20:54:36 -05:00