Commit graph

3383 commits

Author SHA1 Message Date
Korey Sewell
82862e0e15 add ISA_HAS_DELAY_SLOT directive instead of "#if THE_ISA == ALPHA_ISA" throughout CPU models
src/arch/alpha/isa_traits.hh:
src/arch/mips/isa_traits.hh:
src/arch/sparc/isa_traits.hh:
    define 'ISA_HAS_DELAY_SLOT'
src/cpu/base_dyn_inst.hh:
src/cpu/o3/bpred_unit_impl.hh:
src/cpu/o3/commit_impl.hh:
src/cpu/o3/cpu.cc:
src/cpu/o3/cpu.hh:
src/cpu/o3/decode_impl.hh:
src/cpu/o3/fetch_impl.hh:
src/cpu/o3/iew_impl.hh:
src/cpu/o3/inst_queue_impl.hh:
src/cpu/o3/rename_impl.hh:
src/cpu/simple/base.cc:
    use ISA_HAS_DELAY_SLOT instead of THE_ISA == ALPHA_ISA

--HG--
extra : convert_revision : 24c7460d9391e8d443c9fe08e17c331ae8e9c36a
2006-08-31 20:51:30 -04:00
Steve Reinhardt
f9ae0dcf10 Move more common functionality into SimpleTimingPort,
allowing derived classes to be simplified.

--HG--
extra : convert_revision : c980d3aec5e6c044d8f41e96252726fe9a256605
2006-08-30 16:24:26 -07:00
Gabe Black
fa0fca3227 Change the cpu pointer in the InstRecord object to a thread context pointer.
--HG--
extra : convert_revision : 7efb2680cef4219281b94d680a4a7c75c123f89d
2006-08-30 19:08:24 -04:00
Gabe Black
05177abbc9 Forgot some commas
--HG--
extra : convert_revision : d178c87ba156be6302f871f1ab1030889586168f
2006-08-30 18:33:47 -04:00
Steve Reinhardt
a8a7ce2b88 Minor include file & formatting cleanup.
--HG--
extra : convert_revision : fa23563b2897687752379d63ddab5cccb92484ba
2006-08-30 09:57:46 -07:00
Steve Reinhardt
8bc3c2b192 Add FULL_SYSTEM check to example/fs.py.
--HG--
extra : convert_revision : 4cab46e73f29d2c9d24d9c0c847d598bf6d5c389
2006-08-29 14:36:35 -07:00
Steve Reinhardt
b0bf1e84e4 Add missing cpu mem param to example/se.py.
configs/example/se.py:
    Add missing cpu mem param.

--HG--
extra : convert_revision : 29a11b09524612f079b8998e99b8f5ee8c67c8a6
2006-08-29 14:14:29 -07:00
Gabe Black
bdb5df86a3 ASI constants.
--HG--
extra : convert_revision : 888024c9f7e909fa377de6d67a41ea1d4cf9945a
2006-08-29 16:08:56 -04:00
Gabe Black
02f3b21c42 Set both xcc.c and icc.c on return from a syscall.
--HG--
extra : convert_revision : 9c2b32d735b816021cdd3af24002f309e22a8d64
2006-08-29 16:07:22 -04:00
Gabe Black
9231d2235d Don't store if there's a fault.
--HG--
extra : convert_revision : fc852bee572b36daab7a34ee1820f856ccd71ca5
2006-08-29 16:06:27 -04:00
Gabe Black
df0cbf890a Extended the reg delta output.
--HG--
extra : convert_revision : 61c714a8c4faeb30d784b1ef1da0295474b8dc45
2006-08-29 16:04:28 -04:00
Gabe Black
292d3ae14a Fiddled with the floating point accessors.
--HG--
extra : convert_revision : 78cbd0c28d3fa1109eb2eacaf2a8009f13158a9b
2006-08-29 16:02:54 -04:00
Gabe Black
7ac1d10eb5 Cleaned up floating point by removing unnecessary conversions and by implementing faligndata more correctly.
--HG--
extra : convert_revision : 44e778ce8f8d8606b6a50f3f12f0b87e1bf0ed66
2006-08-29 02:40:24 -04:00
Steve Reinhardt
72eb4f5f12 Clean up BAR setting code.
--HG--
extra : convert_revision : 8378be6cd6f55af7a199296cb2ff61ee94849bf7
2006-08-28 11:17:49 -07:00
Steve Reinhardt
b77da23e1a Get rid of unneeded union.
Verify that BAR sizes are powers of two.

--HG--
extra : convert_revision : ce8dca07aaf1a340cc166b99b5858613a954e2fd
2006-08-28 11:01:25 -07:00
Steve Reinhardt
19d51452b1 Get rid of unused BARAddrs[] in PciConfigData object.
--HG--
extra : convert_revision : a82e05326ca6150c70cb288b28f9f6eee89ad93d
2006-08-28 10:34:15 -07:00
Steve Reinhardt
acfa88f732 Cleanup: formatting, comments, DPRINTFs.
--HG--
extra : convert_revision : 565ab099f1c0744a13959e721c19dd03b7630f04
2006-08-28 10:28:31 -07:00
Steve Reinhardt
55bde23071 Fix remote gdb buffer overflow.
--HG--
extra : convert_revision : e5e5206bdd48120cebcb1e339b1dab2e10f4b6cf
2006-08-28 09:58:03 -07:00
Steve Reinhardt
98e71d9ba6 Make address formats consistent in DPRINTFs.
--HG--
extra : convert_revision : 73c6616aa9228c08e21fcc134dd0e675cd57aee6
2006-08-28 09:55:13 -07:00
Steve Reinhardt
0b9f89f903 Fix command for new options processing.
--HG--
extra : convert_revision : 49eee05a6deddae378013f7c2117eabe621b69d9
2006-08-28 09:48:31 -07:00
Steve Reinhardt
c5384366b6 Add dup() support (from Antti Miettinen).
--HG--
extra : convert_revision : 72c834666afa3c353da026617ad5e7a762eb645f
2006-08-28 07:39:56 -07:00
Steve Reinhardt
dc68512222 Update for 2.0 beta 1 patch 1
--HG--
extra : convert_revision : 01c1a993bc111127e7bd51564e8c9a8adbeaffd4
2006-08-25 15:17:25 -04:00
Steve Reinhardt
a0759f0fb7 Update for new regression test structure.
--HG--
extra : convert_revision : f533bc237710c2c634a20e51733f66f9f5dd0929
2006-08-25 13:04:21 -04:00
Kevin Lim
65741cd048 Updates to configs to support various sampling forms, truncated execution forms.
--HG--
extra : convert_revision : a6cf77f6c902e5f4f0a96206093d123eec2e0167
2006-08-24 18:01:07 -04:00
Kevin Lim
9ef831eeef Stats updates.
dev/ide_disk.cc:
dev/ide_disk.hh:
    Add in stats.
sim/stat_control.cc:
sim/stat_control.hh:
    Allow setup event to be called with a specific queue.

--HG--
extra : convert_revision : 9310b132b70f967a198cb2e646433f3a5332671e
2006-08-24 17:51:35 -04:00
Kevin Lim
f9f2f8fbd0 Updated sampler stuff.
--HG--
extra : convert_revision : 36c9777550f74910057dd48f4aeba686341a44e1
2006-08-24 17:47:24 -04:00
Kevin Lim
4ec5e90c8f Ozone updates.
cpu/ozone/front_end.hh:
cpu/ozone/front_end_impl.hh:
cpu/ozone/lw_back_end.hh:
    Support latency for Ozone FE and BE.
cpu/ozone/lw_back_end_impl.hh:
    Support latency for Ozone FE and BE.

    Also fixes for switching out, profiling.
cpu/ozone/lw_lsq.hh:
cpu/ozone/lw_lsq_impl.hh:
    Fixes for switching out.
cpu/ozone/simple_params.hh:
    Updated parameters.

--HG--
extra : convert_revision : 21d4846a59a2239bfdf8fe92e47fd0972debe4f5
2006-08-24 17:45:04 -04:00
Kevin Lim
ad2fa1e1c9 Support profiling.
--HG--
extra : convert_revision : eab02dea68442bd3f8c5d1d16b7f93f43cbda2a5
2006-08-24 17:43:08 -04:00
Kevin Lim
74e8abd37e Switch out fixups for the CPUs.
cpu/cpu_exec_context.cc:
    Be sure to switch over the kernel stats so things don't get messed up.  This may lead to weird stats files for sampling runs (detailed stats should be correct, regardless of which kernel stats this is defined on).
cpu/o3/cpu.cc:
    Updates for switching out.  Also include a bunch of debug info if needed.
cpu/o3/fetch_impl.hh:
    Switch out properly.
cpu/o3/inst_queue.hh:
cpu/o3/inst_queue_impl.hh:
    Comment out unused stats (they made the stats file huge).
cpu/o3/lsq_unit.hh:
cpu/o3/lsq_unit_impl.hh:
    Add in new stat.
cpu/o3/rename.hh:
    Fix up for switching out.
cpu/o3/rename_impl.hh:
    Fix up for switching out.  Be sure to mark any Misc regs as ready if their renamed inst got squashed from being switched out.
cpu/ozone/cpu_impl.hh:
cpu/simple/cpu.cc:
    Switch out fixup.
sim/eventq.hh:
    Make CPU switching more immediate.
    Also comment out the assertion, as it doesn't apply if we're putting it on an inst-based queue.

--HG--
extra : convert_revision : f40ed40604738993f061e0c628810ff37a920562
2006-08-24 17:29:34 -04:00
Kevin Lim
5da3f70560 Update checker.
cpu/checker/cpu.cc:
    Print better error messages.
cpu/checker/cpu.hh:
    Fix up small bug (similar to Ozone's DynInsts with FPs and float/doubles), output better messages.

--HG--
extra : convert_revision : 0e199b3dbbcdb5917cdfbebb4c5c18e4b9056c86
2006-08-24 17:22:31 -04:00
Kevin Lim
9fef4d4630 Stats reset, profiling stuff.
cpu/base.cc:
    Be sure to deschedule the profile event so it doesn't take profiles while the CPU is switched out.

    Also include the option to reset stats at a specific instruction.
cpu/base.hh:
    Include the option to reset stats at a specific instruction.
cpu/checker/cpu_builder.cc:
    Handle stats reset inst.
cpu/o3/alpha_cpu_builder.cc:
    Handle stats reset inst, allow for profiling.
cpu/ozone/cpu_builder.cc:
    Handle profiling, stats reset event, slightly different parameters.
python/m5/objects/BaseCPU.py:
    Add in stats reset.

--HG--
extra : convert_revision : e27a78f7fb8fd19c53d9f2c1e6edce4a98cbafdb
2006-08-24 16:06:45 -04:00
Steve Reinhardt
383b2830b8 Update a few bogus reference outputs
tests/quick/00.hello/ref/alpha/linux/simple-atomic/m5stats.txt:
tests/quick/00.hello/ref/alpha/linux/simple-atomic/stderr:
tests/quick/00.hello/ref/alpha/linux/simple-atomic/stdout:
tests/quick/00.hello/ref/sparc/linux/simple-atomic/m5stats.txt:
tests/quick/00.hello/ref/sparc/linux/simple-atomic/stdout:
    Update reference outputs

--HG--
extra : convert_revision : 4b7837c90c14f0822b38d36bd821bc9eed316fd0
2006-08-24 14:31:31 -04:00
Kevin Lim
4a2c50bc8f Support loading in a symbol file.
arch/alpha/freebsd/system.cc:
arch/alpha/isa/decoder.isa:
arch/alpha/linux/system.cc:
arch/alpha/system.cc:
arch/alpha/tru64/system.cc:
    Let symbol files be read in so that profiling can happen on the binaries as well.
python/m5/objects/System.py:
    Add in symbol files.
sim/pseudo_inst.cc:
    Load in a specified symbol file.
sim/pseudo_inst.hh:
    Allow for symbols to be loaded.
sim/system.hh:
    Support symbol file.
util/m5/m5.c:
util/m5/m5op.S:
    Add support to m5 util for loading symbols (and readfile).

--HG--
extra : convert_revision : f10c1049bcd7b22b98c73052c0666b964aff222b
2006-08-23 16:57:07 -04:00
Ron Dreslinski
95e7b85c8b Still need LL/SC support in cache, add hack to always return success for now
--HG--
extra : convert_revision : b354bd91be8c1bbb3aca7b4ba9e7e3e117ced164
2006-08-22 16:09:34 -04:00
Ron Dreslinski
9f18764441 Commiting a version of the multi-phase snoop atomic bus so people can see the framework. Doesn't work, but also doesn't break uni-processor systems.
Working on pulling out the changes in the cache so that it remains working.

src/mem/bus.cc:
    Changes for multi-phase snoop
    Some code for registering snoop ranges (a version that compiles and runs, but does nothing)
src/mem/bus.hh:
    Changes for multi-phase snoop
src/mem/packet.hh:
    Flag for multi-phase snoop
src/mem/port.hh:
    Status for multi-phase snoop

--HG--
extra : convert_revision : 4c2e5263bba16e3bcf03aabe36ff45ec36de4720
2006-08-22 16:08:18 -04:00
Ron Dreslinski
3a45e9b8cb Merge zizzer:/z/m5/Bitkeeper/newmem
into  zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/newmem

--HG--
extra : convert_revision : ccbca1320471d809d25a6359b79d9f2d46c6ce73
2006-08-22 11:09:53 -04:00
Ron Dreslinski
9235b11151 Update refs for tru64 with initialized cache stats
--HG--
extra : convert_revision : 708553b57307c353d6a8e403dc1ed4deb6dd2dfb
2006-08-22 11:08:02 -04:00
Gabe Black
dda9819d93 Fix annulled unconditional branches
--HG--
extra : convert_revision : 698b0ce38c7a47306f97df2cc80cdae4a51b22c7
2006-08-21 22:41:57 -04:00
Gabe Black
3fa57c21f5 Merge zizzer.eecs.umich.edu:/bk/newmem
into  ewok.(none):/home/gblack/m5/newmem

--HG--
extra : convert_revision : 46e14792cfd18e4e27935b848c9953a7c44e9334
2006-08-21 18:25:34 -04:00
Steve Reinhardt
a016e13a52 SConstruct:
Add checks for swig & libz, version check for swig.
Factor out version check code into function, use for mysql too.

SConstruct:
    Add checks for swig & libz, version check for swig.
    Factor out version check code into function, use for mysql too.

--HG--
extra : convert_revision : a077d961ae52011141fbf5021b167485f8638139
2006-08-21 18:25:33 -04:00
Gabe Black
ad867018d0 Merge zizzer.eecs.umich.edu:/bk/newmem
into  ewok.(none):/home/gblack/m5/newmem

--HG--
extra : convert_revision : 15d8fd51f0c70da4d2e52c11864f3ab0f3f62811
2006-08-21 15:09:18 -04:00
Ron Dreslinski
4ea3973387 Update REFs for statistics patch in cache
--HG--
extra : convert_revision : 8987d3ab62ea4b2fa18ebd40fc980b30561d7e45
2006-08-21 15:09:17 -04:00
Gabe Black
0b0556a1da Got rid of the aux_data array since it shouldn't have existed.
Added in the filename parameter which is provided for the user space linker.
Fix the ordering and alignment of stack elements.
Made mmap start with the address it has been seen starting with "in the wild"

--HG--
extra : convert_revision : 8734753145f59a6cb433e4f92f43cb28a44b56d4
2006-08-21 14:29:50 -04:00
Gabe Black
623c697a3f Fixed the parameters to memset. sizeof(regSegments[x]) may have been returning the size of a pointer to an IntReg
--HG--
extra : convert_revision : 02c04ffceb447b7683ba5ebd4752819d0014cc19
2006-08-21 14:25:51 -04:00
Gabe Black
e54c5c99de Two bugs found by my tracing tool.
1. alignaddr wrote it's address to a floating point register rather than a gpr.
2. sethi was sign extending it's immediate value.

--HG--
extra : convert_revision : 9aa30a6485bc4cba916367973b986d439b7c7588
2006-08-21 14:23:39 -04:00
Ron Dreslinski
689eb39d48 Merge zizzer:/z/m5/Bitkeeper/newmem
into  zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/newmem

src/python/m5/objects/BaseCPU.py:
    Merge duplicate change

--HG--
extra : convert_revision : 214e57999ee78aadfc86e1f0b7198ff0d981ce16
2006-08-21 13:20:35 -04:00
Ron Dreslinski
825a7aadd2 Changes so that time in the packet is actually set properly.
src/mem/packet.hh:
    Make sure packets set the time parameter correctly.

--HG--
extra : convert_revision : e381d2789e0aaa1b6c2fbde417b7ba5815deec61
2006-08-21 13:16:46 -04:00
Steve Reinhardt
21b21c63b0 fs.py:
Add temporary cpu.mem parameter settings.

configs/example/fs.py:
    Add temporary cpu.mem parameter settings.

--HG--
extra : convert_revision : d7c2fcd8df8dc809b0511485877b2a85769aaf43
2006-08-21 12:31:59 -04:00
Steve Reinhardt
25643e07c8 TEST_CPU_MODELS isn't used anymore.
--HG--
extra : convert_revision : 742bda87e79657573cec404b8650fa26d189d1a1
2006-08-20 23:13:35 -07:00
Steve Reinhardt
07994c2367 Add Alpha Linux version of "hello world" test.
--HG--
extra : convert_revision : 22cd31c58f18fd92bd61ee4b4a218926f7290045
2006-08-20 22:48:30 -04:00