summaryrefslogtreecommitdiff
path: root/base
AgeCommit message (Collapse)Author
2003-11-04Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/realcleanLisa Hsu
--HG-- extra : convert_revision : 32bbe481ee748785f0bcffb0a711017d51c987a0
2003-11-04statistics.cc:Lisa Hsu
on Database::reset(), reset all stats in every bin, not just current one. base/statistics.cc: on Database::reset(), reset all stats in every bin, not just current one. --HG-- extra : convert_revision : 0f3443b36ee00952810818a035c99267da8871d9
2003-11-04Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/cleanLisa Hsu
--HG-- extra : convert_revision : 0074df284e85bc2ebe6ccc2dbe765fabda9ab041
2003-11-04Add the ability to track stats in user defined sets of function calls. code ↵Lisa Hsu
can be generated via the base/instrum_codegen.pl script to easily change the functions being tracked. the only thing the user needs to do is add code in tru64System to change how the callerMap is populated. command line: m5.* <config file> <args> --server.system:bin=true to track function calls in the server m5.* <config file> <args> --client.system:bin=true to track function calls in the client base/statistics.cc: make an adjustment to the way stats are printed for FS_MEASURE base/statistics.hh: add a name() virtual function to GenBin. add a debug printf for activate(). add amake MainBin the default bin when FS_MEASURE. cpu/exec_context.cc: initialize swCtx to null upon creation of an xc cpu/exec_context.hh: add a SWContext pointer to every execution context. cpu/simple_cpu/simple_cpu.cc: process calls and returns for FS_MEASURE cpu/simple_cpu/simple_cpu.hh: add this so idleCycles will not be accessed before all stats are constructed kern/tru64/tru64_events.cc: add a FnEvent that fires whenever a function we're tracking is called. implement the process() virtual function for it. kern/tru64/tru64_events.hh: add FnEvent kern/tru64/tru64_system.cc: send bin parameter to System constructor. add bin parameter to Tru64System object. initialize all the FnEvent and MainBin members of Tru64system. also, populate the calling map that indicates whether a function call is on the path we're tracking. kern/tru64/tru64_system.hh: modify the Tru64System class to support FS_MEASURE sim/system.cc: add a bin parameter to System class. initialize a MainBin to hold the stats for nonPath. sim/system.hh: add a map of to match bins to function names. add a swCtx map to map pcb addresses to SWContext *s. Add some supporting functions. --HG-- extra : convert_revision : af3eadd798cb2d2aed9b54e1059dcedf244dd526
2003-11-03AutomergeSteve Reinhardt
--HG-- extra : convert_revision : 2ca18ecbf04a1de72391073d0a5309fdbbdfefda
2003-11-02Print a warning rather than failing if we're unserializing and there's anSteve Reinhardt
object in the config that was not in the checkpointed config. This code compiles, but I haven't tested it... I'm committing it so Ron can have it. Should not effect anything that currently works. base/inifile.cc: base/inifile.hh: Add sectionExists() method so you can query whether a section exists without knowing any of the entry names that would be in it. sim/serialize.cc: sim/serialize.hh: Add Checkpoint::sectionExists() (pass through to IniFile). --HG-- extra : convert_revision : 905db122afdfe55946ab8493ccac0b1e715bc7c6
2003-11-02Implement more m5 pseduo opcodes:Nathan Binkert
resetstats dumpstats dumpresetstats m5checkpoint Lots of cleanup of serialization and stats dumping/resetting to work with these new instructions arch/alpha/isa_desc: Implement more m5 pseduo opcodes: resetstats dumpstats dumpresetstats m5checkpoint All of these functions take two optional parameters, the first is a delay, and the second is a period. The delay tells the simulator to wait the specified number of nanoseconds before triggering the event, the period tells the simulator to repeat the event with a specified frequency base/statistics.cc: base/statistics.hh: regReset RegResetCallback dev/disk_image.cc: serializeFilename -> CheckpointFile() sim/debug.cc: Move this debugging statement to sim_stats.cc sim/eventq.cc: Don't AutoDelete an event if it is scheduled since the process() function could potentially schedule the event again. sim/main.cc: DumpStatsEvent is now Statistics::SetupEvent(Dump, curTick) sim/serialize.cc: Change the serialize event so that it's possible to cause the event to repeat. Also make the priority such that the event happens just before the simulator would exit if both events were scheduled for the same cycle. get rid of the serializeFilename variable and provide a CheckpointFile() function. This function takes a basename that is set in the configuration, and appends the current cycle to the name so that multiple checkpoints can be dumped from the same simulation. Also, don't exit the simulation when a checkpoint file is dumped. sim/serialize.hh: serializeFilename -> CheckpointFile() SetupCheckpoint function to tell the simulator to prepare to checkpoint at a certain time with a certain period sim/sim_events.cc: DumpStatsEvent stuff gets move to sim_stats.(cc|hh) The context stuff gets moved into the already existing stats context in stat_context.cc sim/sim_events.hh: DumpStatsEvent stuff gets move to sim_stats.(cc|hh) sim/universe.cc: Provide some simple functions for converting times into ticks. These use floating point math to get as close as possible to the real values. Multipliers are set up ahead of time --HG-- extra : convert_revision : d06ef26a9237529a1e5060cb1ac2dcc04d4ec252
2003-11-01statistics.hh:Lisa Hsu
add enum to Bin::VectorBin base/statistics.hh: add enum to Bin::VectorBin --HG-- extra : convert_revision : a05aef30ca85bf5c0d1f5155e1dff3fb34fd7777
2003-11-01Make error messages more informative on a non-full-system fault.Steve Reinhardt
base/misc.cc: Add curTick to panic and warn messages. Reformat fatal message a bit for consistency. --HG-- extra : convert_revision : 171da2fe6ca5e25982058ee1af67473292659103
2003-10-31Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5Nathan Binkert
into zizzer.eecs.umich.edu:/.automount/zans/z/binkertn/research/m5/latest --HG-- extra : convert_revision : 3134761fa4c572a672558dfb6f9252aaef7b7062
2003-10-31Make the to_number function work better.Nathan Binkert
base/str.cc: Make some fixes for the to_number function. Fix overflow calculation for maximum decimal value. (Note: minimum decimal value for signed numbers does not work correctly, e.g. it will overflow on -128 for a signed char though -127 will work) Fix overflow calculation for hex values being converted into signed types Fix up the debugging stuff a little to make sure the values are always printed as numbers. test/strnumtest.cc: using namespace std for g++ 3 --HG-- extra : convert_revision : b00bb1296c85c3d64d8864283c9374e1563bfa31
2003-10-31I forgot - also to typedef the default type of bin choice given to every ↵Lisa Hsu
visible stat type (NoBin or BinType). this way a little #define does it all for you. statistics.hh: add #includes needed for CeilPow2 statistics.cc: rm unneeded #includes for CeilPow2 base/statistics.cc: rm unneeded #includes for CeilPow2 base/statistics.hh: add #includes needed for CeilPow2 --HG-- extra : convert_revision : 818028b276e97735a8b8d21d6514f41a80350514
2003-10-30statistics.hh:Lisa Hsu
oops - remove a debug printf base/statistics.hh: oops - remove a debug printf --HG-- extra : convert_revision : a6ecab93f79ce0a5cb6ff129750d8f6a2de8d38c
2003-10-30Make some general changes to stats package where things either could have ↵Lisa Hsu
been better or were just plain wrong. statistics.hh: fix a bug in binning that made bins a fixed size no matter what. add GenBin class that is public but not templatized. statistics.cc: change map to statMap so others can use the map<> token without needing ::. also, add a level of GenBin that is public base class for StatBin<>. base/statistics.cc: change map to statMap so others can use the map<> token without needing ::. also, add a level of GenBin that is public base class for StatBin<>. base/statistics.hh: fix a bug in binning that made bins a fixed size no matter what. add GenBin class that is public but not templatized. --HG-- extra : convert_revision : 6976a891e414c9515cc5a613157f7cb86ef89008
2003-10-30Add support for serializationSteve Raasch
--HG-- extra : convert_revision : ff6c93ee2f4e6aeb5a824958c52f62d6c2a1cdfd
2003-10-30Add support for serializationSteve Raasch
base/pollevent.hh: Add queued() member function to indicate if this event has been queued --HG-- extra : convert_revision : bebb04dc8e10c1043e55e0036806bd1ca4fec167
2003-10-29Get rid of lots of obsolete mentions of stat_sdb_t.Steve Reinhardt
base/predictor.hh: base/sat_counter.hh: sim/param.hh: Get rid of spurious references to stat_sdb_t. --HG-- extra : convert_revision : 0018a940c69b6e31b85fd85354b9d5ce2fd0aa6f
2003-10-29Clear up doxygen warnings and serialize ScsiCtrl. We probably shouldn't ↵Erik Hallnor
decfine functions using type defs ala "RegFile" instead of "AlphaISA::RegFile". base/inifile.hh: Document findAppend --HG-- extra : convert_revision : ab5047590b3ca2a9126b75351e4902d300b5b5ad
2003-10-26Add an append= keyword that works in a somewhat similar way toNathan Binkert
default=. In the append= case, when looking up an entry, it also looks in the section named by the append= for something to append to the entry --HG-- extra : convert_revision : b51915094ad3ca151d7f241c29e19b6b29d3a3c0
2003-10-25Add the directory where the ini file was found into the #includeNathan Binkert
search path --HG-- extra : convert_revision : 9a6bceb931613b718bf5a561b354ba9ccb847a78
2003-10-23Initial support for CPU switching. New SamplingCPU object encompasses a setSteve Reinhardt
of CPUs that get switched round-robin (though currently we're only shooting for two CPUs and one switch event, and even that doesn't quite work yet). Registration of ExecContexts with System/Process object factored out so we can create two CPUs but only register one of them at a time. Also worked at making behavior and naming in System and Process objects more consistent. arch/alpha/ev5.cc: Rename ipr_init to initIPRs and get rid of unused mem arg. arch/alpha/fake_syscall.cc: Process:numCpus is now a function (not a data member). base/remote_gdb.hh: Support for ExecContext switching. cpu/base_cpu.cc: cpu/base_cpu.hh: cpu/exec_context.cc: cpu/exec_context.hh: cpu/simple_cpu/simple_cpu.hh: Support for ExecContext switching. Renamed contexts array to execContexts to be consistent with Process. CPU ID now auto-assigned by system object. cpu/simple_cpu/simple_cpu.cc: Support for ExecContext switching. Renamed contexts array to execContexts to be consistent with Process. CPU ID now auto-assigned by system object. Cleaned up MP full-system initialization a bit. dev/alpha_console.cc: Renamed xcvec array to execContexts to be consistent with Process. kern/tru64/tru64_system.cc: kern/tru64/tru64_system.hh: Support for ExecContext switching. CPU ID now auto-assigned by system object. sim/prog.cc: sim/prog.hh: Support for ExecContext switching. Process:numCpus is now a function (not a data member). sim/system.cc: sim/system.hh: Support for ExecContext switching. Renamed xcvec array to execContexts to be consistent with Process. --HG-- extra : convert_revision : 79649cffad5bf3e83de8df44236941907926d791
2003-10-23Minor stats fix.Steve Reinhardt
base/statistics.cc: Small fix: don't exit early out of dist when nozero is set and a zero val is found. --HG-- extra : convert_revision : 95ba3328c8a79f05f4c821d99071dba10f013ad6
2003-10-23Print error message when we can't parse a .ini assignment line.Steve Reinhardt
--HG-- extra : convert_revision : b7e19ff42ddd9a21571e086c11e143d9290e0e38
2003-10-22statistics.cc:Lisa Hsu
change printf to be printed only when something is binned so regression doesn't freak out. base/statistics.cc: change printf to be printed only when something is binned so regression doesn't freak out. --HG-- extra : convert_revision : cb60128fc3ab605aa7e915c7c7512cf93b156c96
2003-10-22statistics.hh:Lisa Hsu
forgot to doxygen comment binned() base/statistics.hh: forgot to doxygen comment binned() --HG-- extra : convert_revision : 7e414a3291e49b7b92bcbfec18470c3ec8671a35
2003-10-22Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5Lisa Hsu
--HG-- extra : convert_revision : 8658302b64207390b03f9fe133ad722a1417e022
2003-10-22AutomergeLisa Hsu
--HG-- extra : convert_revision : d14536880d6f55d4304c0bab1fa08a5121bd1846
2003-10-22nate's reset stuff merged with my work on bin printing.Lisa Hsu
--HG-- extra : convert_revision : 438c94c90bfb3caffec461ad2c14b266cdf61494
2003-10-21New ini-file feature: += appends RHS to LHS.Steve Reinhardt
Added doxygen comments to inifile.hh. Updated initest. Some other minor cleanup. base/inifile.cc: Add support for '+=' append operation. Factor common code from IniFile::load() and IniFile::add() into new Section::add(). Rename ConfigTable to SectionTable (more descriptive). Fix bug in Section::dump(). base/inifile.hh: Add doxygen comments. Add support for '+=' append operation. Factor common code from IniFile::load() and IniFile::add() into new Section::add(). Rename ConfigTable to SectionTable (more descriptive). test/Makefile: initest needs cprintf.o now. test/foo.ini: Add test of '+=' operator. test/initest.cc: Bring this up-to-date. Steal main loop from main.cc so we can test multiple .ini files and command-line assignments too. --HG-- extra : convert_revision : 982521677fbf464e93aa93798ff7d9611826f17c
2003-10-21statistics.hh:Lisa Hsu
same - bin printing statistics.cc: printing of bins! now all the nice binning functionality is actually useful cuz you can see the data it so nicely took. this prints out only the individual bin values. totals to come. statistics.hh: add a binned() function to each stat so that at print time, we can know if it's binned in order to print it right. base/statistics.hh: add a binned() function to each stat so that at print time, we can know if it's binned in order to print it right. base/statistics.cc: printing of bins! now all the nice binning functionality is actually useful cuz you can see the data it so nicely took. this prints out only the individual bin values. totals to come. base/statistics.hh: same - bin printing --HG-- extra : convert_revision : 09df9aae62b0e522230ee6bedcb51079346735a4
2003-10-21statistics.hh:Lisa Hsu
fix up some very ambiguous doxygen comments about Formulas base/statistics.hh: fix up some very ambiguous comments about Formulas --HG-- extra : convert_revision : ad8d9579fd1933397590c78111bec7c0d19b0e14
2003-10-21Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/cleanLisa Hsu
--HG-- extra : convert_revision : d639282e403cb085c452223a76cec31933a529aa
2003-10-21statistics.hh:Lisa Hsu
change VectorDistProxy name to DistProxy - to be more consistent with other proxy namings. base/statistics.hh: change VectorDistProxy name to DistProxy - to be more consistent with other proxy namings. --HG-- extra : convert_revision : c470c93cf598506be56312db52f6c528c213a149
2003-10-20Implement reset for stats.Nathan Binkert
base/statistics.cc: base/statistics.hh: Implement a reset for for the statistics package. This will cause all stats to be set to their default value. Only the currently enabled bin will be reset. test/Makefile: Make tests work again now that we're naming include dirs explicitly test/stattest.cc: test reset --HG-- extra : convert_revision : 8d21cedf6ee91ed0a2412042ea5cb12f79b90eb3
2003-10-20Clean up callbacksNathan Binkert
base/callback.hh: Don't remove a callback when it is processed. Document the callback class --HG-- extra : convert_revision : 9d15500434fe0e5d623c624aac86976708adf0eb
2003-10-19Get rid of obsolete code, most of it '#if 0'ed anyway.Steve Reinhardt
Mostly vestiges of Dave's long-gone instruction prefetching stuff. arch/alpha/isa_traits.hh: Delete unused extractInstructionPrefetchTarget(). base/inifile.cc: Delete '#if 0' code cpu/base_cpu.hh: Delete unused filterThisInstructionPrefetch() function. cpu/exetrace.hh: Delete '#if 0' code (obsolete flags). --HG-- extra : convert_revision : c8317f56ba0a0e568daa785825ee938584987bed
2003-10-16Clear up the last of the Doxygen warningsErik Hallnor
base/statistics.hh: Document the friend class because doxygen can't handle the template instantiation. kern/tru64/dump_mbuf.cc: kern/tru64/dump_mbuf.hh: kern/tru64/printf.cc: kern/tru64/printf.hh: kern/tru64/tru64_events.cc: Change namespace from Tru64 to tru64 (There is a class Tru64, and it was confusing doxygen). --HG-- extra : convert_revision : 9644b1324814952cb6a2d98fd2ab4d07f0860b45
2003-10-15Need to cast to avoid infinite recursion.Erik Hallnor
--HG-- extra : convert_revision : 1c2faba65e1112f0972bae330cbde4a563429b73
2003-10-15Global whitespace fixesNathan Binkert
Mainly removing whitespace at the end of lines. This will reduce future diffs/conflicts. Also adding a space after if, while, and for This was all accomplished with: #!/usr/bin/perl -pi~ s/[ ]+$//; # there is a space and a tab in the brackets s/if\(/if (/g; s/for\(/for (/g; s/while\(/while (/g; arch/alpha/alpha_memory.cc: arch/alpha/alpha_memory.hh: arch/alpha/arguments.hh: arch/alpha/ev5.cc: arch/alpha/fake_syscall.cc: arch/alpha/isa_traits.hh: arch/alpha/vtophys.cc: base/cprintf.cc: base/cprintf.hh: base/cprintf_formats.hh: base/dbl_list.hh: base/fast_alloc.cc: base/fast_alloc.hh: base/hybrid_pred.cc: base/hybrid_pred.hh: base/inet.cc: base/inifile.cc: base/intmath.cc: base/intmath.hh: base/misc.cc: base/mod_num.hh: base/pollevent.cc: base/random.cc: base/random.hh: base/range.hh: base/refcnt.hh: base/remote_gdb.cc: base/remote_gdb.hh: base/res_list.hh: base/sat_counter.cc: base/sat_counter.hh: base/sched_list.hh: base/compression/lzss_compression.cc: base/compression/lzss_compression.hh: base/compression/null_compression.hh: base/loader/coff_sym.h: base/loader/coff_symconst.h: base/loader/ecoff_object.cc: base/loader/object_file.cc: base/loader/object_file.hh: base/loader/symtab.cc: base/loader/symtab.hh: base/socket.cc: base/statistics.cc: base/statistics.hh: base/str.cc: base/str.hh: base/trace.cc: base/trace.hh: cpu/base_cpu.cc: cpu/base_cpu.hh: cpu/exec_context.hh: cpu/exetrace.cc: cpu/intr_control.hh: cpu/pc_event.cc: cpu/pc_event.hh: cpu/static_inst.hh: cpu/full_cpu/op_class.hh: cpu/full_cpu/smt.hh: cpu/memtest/memtest.cc: cpu/memtest/memtest.hh: cpu/simple_cpu/simple_cpu.cc: cpu/simple_cpu/simple_cpu.hh: dev/alpha_access.h: dev/alpha_console.cc: dev/alpha_console.hh: dev/console.cc: dev/console.hh: dev/disk_image.cc: dev/disk_image.hh: dev/etherbus.cc: dev/etherdump.cc: dev/etherint.cc: dev/etherlink.cc: dev/etherlink.hh: dev/ethertap.cc: dev/pcireg.h: docs/stl.hh: kern/tru64/dump_mbuf.cc: kern/tru64/printf.cc: kern/tru64/tru64_events.cc: kern/tru64/tru64_system.cc: kern/tru64/tru64_system.hh: sim/debug.cc: sim/eventq.cc: sim/eventq.hh: sim/host.hh: sim/main.cc: sim/param.cc: sim/param.hh: sim/prog.cc: sim/serialize.cc: sim/serialize.hh: sim/sim_events.cc: sim/sim_object.cc: sim/sim_time.cc: sim/sim_time.hh: sim/system.cc: test/bitvectest.cc: test/circletest.cc: test/initest.cc: test/lru_test.cc: test/nmtest.cc: test/offtest.cc: test/sized_test.cc: test/stattest.cc: test/symtest.cc: util/tap/tap.cc: util/term/term.c: formatting fixes --HG-- extra : convert_revision : 01e6dbc9615c5d0e923502b8410a416c0434cdf6
2003-10-14Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5Nathan Binkert
into zans.eecs.umich.edu:/z/binkertn/research/m5/latest --HG-- extra : convert_revision : d5ba96b559be93774e82692099675b6d1f525221
2003-10-14try to get everything to compile correctly againNathan Binkert
base/intmath.hh: Don't return -1 in FloorLog2. That's wierd. Assert instead. If you care about this, you should check for zero yourself. Create seprate versions for uint32_t, uint64_t, int32_t, and int64_t. signed vs unsigned so that error checking can be done correctly. 32 vs 64 for speed. Finally, fix a little bug in CeilLog2 that will make it return the correct result for 1. kern/tru64/tru64_events.cc: fix #includes --HG-- extra : convert_revision : c47915fc417fdc194a5561949a5366ffb266e693
2003-10-14Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5Steve Raasch
into zizzer.eecs.umich.edu:/y/sraasch/m5 --HG-- extra : convert_revision : 022364d1e5bf2f3b004ba75164580c1a821b16a5
2003-10-14Fixes for the new stats in SegmentedIQSteve Raasch
base/statistics.hh: Put a commented-out #define for STAT_DEBUG --HG-- extra : convert_revision : 7c2decc9dac7c3c9d867461d2e0f1970f3ca0733
2003-10-14MergeNathan Binkert
cpu/pc_event.cc: SCCS merged --HG-- extra : convert_revision : f7046f2bf6053be9b00150390fabe3d4f82b0981
2003-10-14Merge ehallnor@zizzer:/bk/m5Erik Hallnor
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5 --HG-- extra : convert_revision : 25b46c6ff1be6ea339dcaccce2f2987e4ea0f484
2003-10-14hostinfo.cc:Erik Hallnor
Trial fix, uint64_T > long base/hostinfo.cc: Trial fix, uint64_T > long --HG-- extra : convert_revision : cc039420980f1bf29074a20ccea3b9a3afe99f22
2003-10-14Remove all of the Tru64 specific stuff from the base System objectNathan Binkert
into its own Tru64System object. Also remove the System builder stuff and create a Tru64System builder. This makes it much simpler to support more operating systems. arch/alpha/ev5.cc: Each system provides its own mechanism for doing a breakpoint. base/remote_gdb.hh: #include <map> cpu/pc_event.cc: cpu/pc_event.hh: Separate out System specific PCEvents cpu/simple_cpu/simple_cpu.cc: each system provides its own init script kern/tru64/dump_mbuf.cc: kern/tru64/printf.cc: Stick this in a namespace --HG-- extra : convert_revision : 9f74527ed2ff8010431d9aff34357aaecc1fb3f6
2003-10-14small fixesNathan Binkert
base/hostinfo.cc: Since we're talking about a u_int64, use %lld. Maybe this should be converted using toNumber in the future. --HG-- extra : convert_revision : f2ae97585d3009c380553313129dfdd212d6716b
2003-10-14Since I seem to be bug compatible with the head I'm going to commit.Erik Hallnor
There is still one documentation warning in the stat code, probably a doxygen error. base/statistics.cc: Added documentation to SubData and StatData. base/statistics.hh: Documented most of the basic stats (storage, implemenation) and all of the visible stats. There is more to be documented, but I'm going crazy now. Also fixed the DistStor::zero() function to meet the semantics of the other ones. --HG-- extra : convert_revision : f80b3075a3298cbded059be8125b7fc7b77020a9
2003-10-13Try to get the correct license on various filesNathan Binkert
remove stuff that is ambiguous Clean up code a bit arch/alpha/aout_machdep.h: Add M5 License docs/stl.hh: M5 license base/remote_gdb.cc: Most of this is mine, so stick in the m5 license dev/console.hh: Clean up comments merge simple() and out() into one function. dev/console.hh: dev/console.cc: m5 license dev/console.cc: merge simple and out. remove dead code dev/console.cc: Remove comments that weren't mine. Clean up code dev/console.hh: update names dev/alpha_console.cc: use new interface --HG-- extra : convert_revision : 3cd2357e1525db43c2ef9e89a9b47a47861d6af9