Commit graph

2788 commits

Author SHA1 Message Date
Ron Dreslinski fc281d0b64 Backing in more changsets, getting closer to compile
base_cache.cc compiles, continuing on

src/SConscript:
    Add in compilation flags for cache files
src/mem/cache/base_cache.cc:
src/mem/cache/base_cache.hh:
    Back in more fixes, now base_cache compiles
src/mem/cache/cache.hh:
src/mem/cache/cache_blk.hh:
src/mem/cache/cache_impl.hh:
src/mem/cache/coherence/coherence_protocol.cc:
src/mem/cache/miss/blocking_buffer.cc:
src/mem/cache/miss/blocking_buffer.hh:
src/mem/cache/miss/miss_queue.cc:
src/mem/cache/miss/miss_queue.hh:
src/mem/cache/miss/mshr.cc:
src/mem/cache/miss/mshr.hh:
src/mem/cache/miss/mshr_queue.cc:
src/mem/cache/miss/mshr_queue.hh:
src/mem/cache/prefetch/base_prefetcher.cc:
src/mem/cache/tags/fa_lru.cc:
src/mem/cache/tags/iic.cc:
src/mem/cache/tags/lru.cc:
src/mem/cache/tags/split_lifo.cc:
src/mem/cache/tags/split_lru.cc:
src/mem/packet.cc:
src/mem/packet.hh:
src/mem/request.hh:
    Backing in more changsets, getting closer to compile

--HG--
extra : convert_revision : ac2dcda39f8d27baffc4db1df17b9a1fcce5b6ed
2006-06-28 14:35:00 -04:00
Ron Dreslinski ed8564a6b9 Was having difficulty with merging the cache, reverted to an early version and will add back in the patches to make it work soon.
src/mem/cache/prefetch/tagged_prefetcher_impl.hh:
    Trying to merge
src/mem/cache/base_cache.cc:
src/mem/cache/base_cache.hh:
src/mem/cache/cache.cc:
src/mem/cache/cache.hh:
src/mem/cache/cache_blk.hh:
src/mem/cache/cache_builder.cc:
src/mem/cache/cache_impl.hh:
src/mem/cache/coherence/coherence_protocol.cc:
src/mem/cache/coherence/coherence_protocol.hh:
src/mem/cache/coherence/simple_coherence.hh:
src/mem/cache/coherence/uni_coherence.cc:
src/mem/cache/coherence/uni_coherence.hh:
src/mem/cache/miss/blocking_buffer.cc:
src/mem/cache/miss/blocking_buffer.hh:
src/mem/cache/miss/miss_queue.cc:
src/mem/cache/miss/miss_queue.hh:
src/mem/cache/miss/mshr.cc:
src/mem/cache/miss/mshr.hh:
src/mem/cache/miss/mshr_queue.cc:
src/mem/cache/miss/mshr_queue.hh:
src/mem/cache/prefetch/base_prefetcher.cc:
src/mem/cache/prefetch/base_prefetcher.hh:
src/mem/cache/prefetch/ghb_prefetcher.cc:
src/mem/cache/prefetch/ghb_prefetcher.hh:
src/mem/cache/prefetch/stride_prefetcher.cc:
src/mem/cache/prefetch/stride_prefetcher.hh:
src/mem/cache/prefetch/tagged_prefetcher.hh:
src/mem/cache/tags/base_tags.cc:
src/mem/cache/tags/base_tags.hh:
src/mem/cache/tags/fa_lru.cc:
src/mem/cache/tags/fa_lru.hh:
src/mem/cache/tags/iic.cc:
src/mem/cache/tags/iic.hh:
src/mem/cache/tags/lru.cc:
src/mem/cache/tags/lru.hh:
src/mem/cache/tags/repl/gen.cc:
src/mem/cache/tags/repl/gen.hh:
src/mem/cache/tags/repl/repl.cc:
src/mem/cache/tags/repl/repl.hh:
src/mem/cache/tags/split.cc:
src/mem/cache/tags/split.hh:
src/mem/cache/tags/split_blk.hh:
src/mem/cache/tags/split_lifo.cc:
src/mem/cache/tags/split_lifo.hh:
src/mem/cache/tags/split_lru.cc:
src/mem/cache/tags/split_lru.hh:
    Pulling an early version of the cache into the tree due to merging issues.  Will apply patches and push.

--HG--
extra : convert_revision : 3276e5fb9a6272681a1690babf2b586dd0e1f380
2006-06-28 11:02:14 -04:00
Ali Saidi ecab4b426c change the page table from map to hash_map and create small cache to to speed up lookups
--HG--
extra : convert_revision : 4c73ed33c2a22ae3254b459b0fd189e6ac9d438e
2006-06-27 15:04:11 -04:00
Ali Saidi 07cd37c48b Make full CPU handle SE faults
--HG--
extra : convert_revision : e336623ac3329ec0ee2430548c6a9650e2a69d6a
2006-06-27 14:59:38 -04:00
Ali Saidi 88c9b17cb9 Add help strings for options
--HG--
extra : convert_revision : ebbafaf00c56a4d2ee65eea08a12d276f279135d
2006-06-27 14:58:46 -04:00
Kevin Lim 833d80db2d Fix import command.
--HG--
extra : convert_revision : 8a87b23dba77b7661583029920b8fc5ea89fe8f6
2006-06-27 13:57:44 -04:00
Ali Saidi a23f15641e Merge zizzer:/bk/newmem
into  zeep.eecs.umich.edu:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : 39c99c8acadd43f3ec42ae7550289a5075d910e4
2006-06-26 17:50:58 -04:00
Ali Saidi 60454042aa don't depend on the memory system to return the atomic cpu a multiple of cpu cycles.
--HG--
extra : convert_revision : e5eb36f14c8394381a0269fefd34a178833c8346
2006-06-26 17:50:48 -04:00
Ali Saidi b1cfe01b57 remove extern "C" from the functions we all from gdb. This isn't requried and trips up GDB sometimes when i thinks the extern
name should be mangled, but it isn't

--HG--
extra : convert_revision : 62e2a1989e8fd3d73958d3a3e2d00e378488e642
2006-06-26 17:49:49 -04:00
Ali Saidi d80acd37bd add python options for input file and command line options for live process
--HG--
extra : convert_revision : 3db1e6d29846812378aa5174179a0686f0141580
2006-06-26 16:50:19 -04:00
Ali Saidi c4be6f1e64 add syscall emulation page table fault so we can allocate more stack pages
src/cpu/simple/base.cc:
    add syscall emulation page table fault so we can allocate more stack pages
    FaultBase::invoke will do this, we don't need to do it here
src/sim/faults.hh:
    I have no idea why this #if was there... gone
src/sim/process.cc:
    make stack_min actually be the current minimum

--HG--
extra : convert_revision : 9786b39f2747b94654a5d77c74243cd20503add4
2006-06-26 16:49:05 -04:00
Kevin Lim 63bdaeedfa Checker related updates.
src/cpu/o3/cpu.cc:
    Updates to make sure the checker is compiled in if enabled and also to include it only when it's used.

--HG--
extra : convert_revision : c48ead5b2665dc858acd87c2ee99d39d80594a69
2006-06-22 23:43:45 -04:00
Kevin Lim fa9c774421 Delete old unused files in the Ozone directory.
--HG--
extra : convert_revision : 8f417b566e772d7a26d91fb66ff3d4484bd35c42
2006-06-22 23:34:37 -04:00
Kevin Lim 17f870f6d8 Changes to get OzoneCPU to compile once more.
The changes largely are fixing up the memory accesses to use ports/Requests/Packets, supporting the splitting off of instantiation of template classes, and handling some of the reorganization that happened.

OzoneCPU is untested for now but at least compiles.  Fixes will be coming shortly.

SConstruct:
    Remove OzoneSimpleCPU from list of CPUs.
src/cpu/SConscript:
    Leave out OzoneSimpleCPU.
src/cpu/ozone/bpred_unit.cc:
    Fixes to get OzoneCPU to compile.
src/cpu/ozone/checker_builder.cc:
src/cpu/ozone/cpu.cc:
src/cpu/ozone/cpu.hh:
src/cpu/ozone/cpu_builder.cc:
src/cpu/ozone/cpu_impl.hh:
src/cpu/ozone/dyn_inst.hh:
src/cpu/ozone/dyn_inst_impl.hh:
src/cpu/ozone/front_end.cc:
src/cpu/ozone/front_end.hh:
src/cpu/ozone/front_end_impl.hh:
src/cpu/ozone/lw_back_end.hh:
src/cpu/ozone/lw_back_end_impl.hh:
src/cpu/ozone/lw_lsq.hh:
src/cpu/ozone/lw_lsq_impl.hh:
src/cpu/ozone/ozone_impl.hh:
src/cpu/ozone/rename_table.cc:
src/cpu/ozone/simple_params.hh:
src/cpu/ozone/thread_state.hh:
    Fixes to get OzoneCPU back to compiling.

--HG--
extra : convert_revision : 90ffb397263bcf9fea3987317272c64f2b20f7e6
2006-06-22 23:33:26 -04:00
Kevin Lim e6c04b1584 Change ThreadState constructor ordering to match the rest of the ThreadStates.
--HG--
extra : convert_revision : 63d98aa8b6a694c285d95a2a57e1b3aaef4cee3b
2006-06-22 18:10:17 -04:00
Kevin Lim 6e95bcd333 Misc fixes.
src/cpu/o3/alpha_dyn_inst_impl.hh:
    Consolidate these calls into one.
src/cpu/o3/commit_impl.hh:
    Include checker only if it's being used.
src/cpu/o3/fetch_impl.hh:
    Do not deallocate request if it's a squashed response that was received.
src/cpu/o3/lsq_unit.hh:
    Add in comment.
src/cpu/o3/lsq_unit_impl.hh:
    Only include checker if it's being used.

--HG--
extra : convert_revision : aae0bf1e19baae90f1e61d41191548612bbb3be6
2006-06-22 18:09:31 -04:00
Kevin Lim 9ca5427c03 Split Checker up properly into templated and non-templated definitions.
--HG--
extra : convert_revision : 3ead18e42f4a536f2f868da07cb81a8940a7fa2f
2006-06-22 18:05:12 -04:00
Kevin Lim 0fc3055e96 Fix to have the static inst exec sigs also dependent on the CPU models used.
--HG--
extra : convert_revision : 65d978d638dd9a57a641ca52adcf2c0ef48edf1c
2006-06-22 18:03:08 -04:00
Korey Sewell ca25e70907 use 'tick' instead of 'cycle'
--HG--
extra : convert_revision : e7119d20ef95deab16081743c885979b0fa85548
2006-06-18 15:58:14 -04:00
Steve Reinhardt d21fa52c09 Merge zizzer.eecs.umich.edu:/bk/newmem
into  tpx31.:C:/cygwin/home/stever/bk/newmem

--HG--
extra : convert_revision : c13feaea77fe650a3d11112804a88bc5c729c32e
2006-06-18 12:31:24 -04:00
Steve Reinhardt 7171811cad Put sconsign in bulid dir.
--HG--
extra : convert_revision : e1be318e99037842501306e7c35cf4d6690ebdce
2006-06-18 12:30:24 -04:00
Ali Saidi deaf940946 Merge zizzer:/bk/newmem
into  zeep.eecs.umich.edu:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : 1b2352532b6e1d1e180f3debd66588a450a46923
2006-06-18 11:10:19 -04:00
Ali Saidi 69c34554e5 minor device fixups
configs/test/SysPaths.py:
    remove some tabs and add /n/poolfs/z/dist/m5/system
src/dev/io_device.cc:
    fix since pio timing dma packts colud be nacked too
src/dev/io_device.hh:
    move DmaReqState into DmaDevie

--HG--
extra : convert_revision : 2b5300d85ab33b3753afc54bc6a04a47b6e00d20
2006-06-18 11:10:08 -04:00
Kevin Lim 14b9cda9f6 Minor updates.
src/cpu/o3/alpha_cpu.hh:
    Fix #define in header.
util/rundiff:
    Fix file comments to be more correct.
util/tracediff:
    Update comments to be more correct.

--HG--
extra : convert_revision : a28030ce8979de3d9361191c6af23743460dc53e
2006-06-17 22:55:00 -04:00
Kevin Lim d5b2abab9e Merge ktlim@zizzer:/bk/newmem
into  zamp.eecs.umich.edu:/z/ktlim2/clean/newmem-merge

--HG--
extra : convert_revision : a11200523e2cf7f69547b1a4f5622396caa511be
2006-06-17 22:33:40 -04:00
Steve Reinhardt 8f0d04cd10 Delete old doxygen docs... now on wiki.
Update release scripts for new tree structure.

--HG--
extra : convert_revision : 35603f5476abd296625f777718c1245593a5dfc4
2006-06-17 22:28:40 -04:00
Kevin Lim bc3d009aba Merge ktlim@zizzer:/bk/newmem
into  zamp.eecs.umich.edu:/z/ktlim2/clean/newmem-merge

--HG--
extra : convert_revision : 037fe9ee54da7e11c2bd07388b9f79cda9abef4c
2006-06-17 22:05:02 -04:00
Kevin Lim 393e77fbe9 Change options back to just being flags instead of taking in a True/False value.
src/python/m5/__init__.py:
    Change up options.  Now setting the flag enables/disables, each of which is the opposite of the default values found in the Python class.

--HG--
extra : convert_revision : 23889b89e6105a437a74906587d90ab6ba885c97
2006-06-17 22:04:48 -04:00
Kevin Lim dfe0ea6cba Fix up code to be able to use the Checker.
SConstruct:
    Remove check for Checker from this SConstruct
src/arch/SConscript:
    Specific check if CheckerCPU is being used.  Not the cleanest, but works for now.
src/cpu/SConscript:
    Code to handle using the CheckerCPU a little better.  Allows -c to be used normally.

--HG--
extra : convert_revision : 0a82f16db0f38e5ce114d08368477bd211331fa3
2006-06-17 22:01:30 -04:00
Kevin Lim f3d74759ca Split off instantiation into separate CC files for each of the models. This makes it easier to be able to specify only certain CPU models.
src/cpu/SConscript:
    Split off instantiations into separate CC files.  This makes it easier to split them per CPU model.
src/cpu/base_dyn_inst_impl.hh:
    Move instantations out of impl.hh file and into a cc file.
src/cpu/checker/cpu_impl.hh:
    Move instantiations over to .cc files inside each CPU's directory.  Makes it easier to only use what's actually included.
src/cpu/o3/bpred_unit.cc:
    Pull Ozone instantiations out of this .cc file; put them into the ozone's CC file.
src/cpu/o3/checker_builder.cc:
    Instantiate Checker for O3 CPU.
src/cpu/ozone/checker_builder.cc:
    Instantiate Checker for Ozone CPU.

--HG--
rename : src/cpu/base_dyn_inst.cc => src/cpu/base_dyn_inst_impl.hh
rename : src/cpu/checker/cpu.cc => src/cpu/checker/cpu_impl.hh
rename : src/cpu/checker/o3_builder.cc => src/cpu/o3/checker_builder.cc
rename : src/cpu/checker/ozone_builder.cc => src/cpu/ozone/checker_builder.cc
extra : convert_revision : 4e5f928b165379c06d31071c544ea46cf0b8fa71
2006-06-17 21:39:25 -04:00
Nathan Binkert d91f4d172a include misc.hh for panic
--HG--
extra : convert_revision : 05e59f45b98e862f9d61bec223871b314eb2195e
2006-06-17 19:18:53 -04:00
Ali Saidi 8dfc475a9d add mac os x fast byte swap code
--HG--
extra : convert_revision : 591e5adbf86feb894fceea982b9303da70a41955
2006-06-17 19:06:28 -04:00
Ali Saidi e5d20ad48e Merge zizzer:/bk/newmem
into  zeep.eecs.umich.edu:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : 9b628a0ee157657ac76c3a9455108d033c125822
2006-06-17 18:44:42 -04:00
Ali Saidi 174f7753ae minor header cleanups
src/dev/alpha_console.cc:
    Remove my name twice from header
src/dev/ide_disk.cc:
    Spell my full name correctly
src/mem/bus.hh:
    I think I edited much of this
src/sim/byteswap.hh:
    I believe most of this code is mine or nate's

--HG--
extra : convert_revision : b672b5de5492e04d2880fb51e7d63bc5587f2954
2006-06-17 18:40:40 -04:00
Steve Reinhardt 989562bed9 Merge zizzer.eecs.umich.edu:/bk/newmem
into  tpx31.:C:/cygwin/home/stever/bk/newmem

--HG--
extra : convert_revision : 81affa14d8d900ccd3d1c44cb160eaecfb8599d1
2006-06-17 18:28:21 -04:00
Steve Reinhardt c698c03705 Fixes to compile under Cygwin.
src/kern/linux/linux.hh:
src/kern/solaris/solaris.hh:
    Rename BSD_HOST to the more specific NO_STAT64.
src/sim/byteswap.hh:
    Replace set of swap_byte functions with a single
    templated version.  Hope this fixes compiler issues
    with e.g. int32_t vs int disambiguation.
src/sim/syscall_emul.hh:
    Rename BSD_HOST to the more specific NO_STAT64.
    Set this for __CYGWIN__.

--HG--
extra : convert_revision : 86a63b4b60d2445a566321333381d79ba8ab63c4
2006-06-17 18:27:28 -04:00
Nathan Binkert 78ea17ea30 Make the system paths more configurable
configs/test/SysPaths.py:
    Make the paths more configurable

--HG--
extra : convert_revision : c426b102dfe55e4b601a23e980e1b01140e0ee93
2006-06-17 18:14:16 -04:00
Nathan Binkert cd6da4569e Merge zizzer.eecs.umich.edu:/bk/newmem
into  iceaxe.:/Volumes/work/research/m5/newmem

--HG--
extra : convert_revision : 915088112b7b8c3e2182b188ae832b587dd79386
2006-06-17 18:12:44 -04:00
Ali Saidi 1edb205892 remove byte_swap.hh since it's not used
--HG--
extra : convert_revision : 20120d34ad2ab28d9dd5ac2907b974c40e511e9e
2006-06-17 17:56:33 -04:00
Ali Saidi 306043f62e remove profile.cc
--HG--
extra : convert_revision : ac400789ee0cbd1cd01c28ffd149789dbd954613
2006-06-17 17:50:11 -04:00
Nathan Binkert e76a12834b Add myself to list of authors
--HG--
extra : convert_revision : 0c9a892127476d586fb8bff1b0eb7342c6b1f166
2006-06-17 17:49:38 -04:00
Ali Saidi 8a12988221 Merge zizzer:/bk/newmem
into  zeep.eecs.umich.edu:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : c8670f1a39d6826870ca0934587f4cc71c94b0ab
2006-06-17 17:17:43 -04:00
Steve Reinhardt d96d28e56d Rename SWIG "main" module to "cc_main" so it's
clear from the Python side that this is the
interface to C++.

src/SConscript:
    main_wrap.cc -> cc_main_wrap.cc
src/python/SConscript:
src/python/m5/__init__.py:
src/sim/main.cc:
    s/main/cc_main/
src/python/m5/config.py:
    s/main/cc_main/
    Also directly import cc_main so we don't need
    to put the "m5." in front all the time.

--HG--
extra : convert_revision : 755552f70cf671881ff31e476c677b95ef12950d
2006-06-17 12:08:19 -04:00
Steve Reinhardt 4a9c0a7dfc Add --outdir option. Didn't call it "-d" since
that's already being used for "detailed cpu".
Needed to add extra function for user script
to pass parsed options back to m5 module.

configs/test/fs.py:
configs/test/test.py:
    Call setStandardOptions().
src/python/m5/__init__.py:
    Add --outdir option.
    Add setStandardOptions() so user script can
    pass parsed options back to m5 module.
src/sim/main.cc:
    Add SWIG-wrappable function to set output dir.

--HG--
extra : convert_revision : 1323bee69ca920c699a1cd1218e15b7b0875c1e5
2006-06-17 09:58:10 -04:00
Steve Reinhardt 7efd0eafd8 Minor fixes in comments.
SConstruct:
    Fix paths in comments and other minor comment edits.
src/cpu/SConscript:
    Fix path in comment.

--HG--
extra : convert_revision : c02aa9cefd8c5ad791ad2f1653c1554a4aa8ffbd
2006-06-17 09:26:08 -04:00
Kevin Lim e889b82423 Add in some of the commonly used Trace/ExeTrace/Debug options.
src/python/m5/__init__.py:
    Add in some of the commonly used Trace/ExeTrace/Debug options.  Not terribly clean but it works.

--HG--
extra : convert_revision : abb3cb4892512483a5031606baabf6540019233c
2006-06-16 21:18:19 -04:00
Kevin Lim aa1efe3e72 Update this with the same option as single_fs.py
--HG--
extra : convert_revision : 778d654f515b6af7c45165b0a9bc5ef0d60f0d19
2006-06-16 18:04:34 -04:00
Kevin Lim 4e07f6ca52 Merge ktlim@zizzer:/bk/newmem
into  zamp.eecs.umich.edu:/z/ktlim2/clean/newmem-merge

--HG--
extra : convert_revision : 488b9a9965dd86ca73dc9e510e5b3122cbd357f9
2006-06-16 17:53:33 -04:00
Kevin Lim 0bbd909f02 Reorganization to move FuncUnit, FUDesc, and OpDesc out of the encumbered directory and into the normal cpu directory.
src/SConscript:
    Split off FuncUnits from old FUPool so I'm not including encumbered code.  This was all written by Steve Raasch so it's safe to include in the main tree.
src/cpu/o3/fu_pool.cc:
    Include the func unit file that's not in the encumbered directory.

--HG--
extra : convert_revision : 9801c606961dd2d62dba190d13a76069992bf241
2006-06-16 17:52:15 -04:00
Kevin Lim def9ea38b5 Add in exec_context.hh, which is a file for documentation purposes only. It describes the ExecContext interface that the ISA uses to access CPU state. Also #ifdef Erik's old copy code from the decoder so ExecContext doesn't need his two specific copy functions.
src/arch/alpha/isa/decoder.isa:
    Surround Erik's old copy code with #ifdefs.  This way the copy functions don't need to be included in the ExecContext (until somebody decides to add them back in).

--HG--
extra : convert_revision : 508ca387757a32bb616e5b4b07af17787a76970e
2006-06-16 17:19:36 -04:00