summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-09-12fixes for gcc 4.0Ali Saidi
base/mysql.hh: include mysql_version to get rid of that annoying mysql error. make sure refcount is set in all constructors base/pollevent.hh: dev/ethertap.hh: dev/pciconfigall.hh: dev/tsunami_cchip.hh: dev/tsunami_io.hh: dev/tsunami_pchip.hh: sim/param.cc: fix for gcc 4 --HG-- extra : convert_revision : be626af2f40ca402818996ef27249ae256c63ef1
2005-09-05Regression tests now run under scons!Steve Reinhardt
For example, 'scons ALPHA_SE/test/opt/quick' will build ALPHA_SE/m5.opt if necessary and run all the self-identified "quick" tests on it. Other possibilities: - Run just test1: scons ALPHA_SE/test/opt/test1 - Run all tests: scons ALPHA_SE/test/opt - Run all tests on debug build: scons ALPHA_SE/test/debug - Update test1 reference outputs in m5-test: scons update_ref=y ALPHA_SE/test/opt/test1 The proper tests will be selected based on the setting of FULL_SYSTEM, ALPHA_TLASER, etc. README: Update directions to use scons-based test invocation. SConscript: Return list of generated build environments to SConstruct so it can associate tests with each of them. Set 'M5Binary' attribute on each env to record name of generated binary to be tested. build/SConstruct: - Support invoking m5-test tests via scons. - Add new non-sticky option category, for 'update_ref'. - Move existing "sticky" option definitions out of build_dir loop. Someday we can generate help text from these. - Make 'CC' and 'CXX' sticky options; use environment vars as defaults if available. - Make config builder more scons-y. python/m5/__init__.py: Make AddToPath() correctly handle relative path arguments. Assumes that sys.path[0] has the directory where the current Python file lives; new m5execfile() function sets this up properly for exec'd files. --HG-- extra : convert_revision : 48896688592e210d8e63f96c34e57474853d0e66
2005-09-02Fixes to build with gcc 4.0.Steve Reinhardt
sim/param.hh: Add "template<>" to explicit template specialization. --HG-- extra : convert_revision : 05e2f4ad8141a8782fe09a0b6824baf56c9fc957
2005-09-02Force Unix EOL even on Windows (i.e. Cygwin).Steve Reinhardt
--HG-- extra : convert_revision : 0aa171dc79c4d06d45e28d2907c7eb6d6fde433e
2005-09-02Get rid of non-essential default-valued options.Steve Reinhardt
This lets SConstruct set things like USE_MYSQL based on the host w/o complaining. build/build_options/ALPHA_FS_TL: build/build_options/ALPHA_FS: build/build_options/ALPHA_SE: Get rid of non-essential default-valued options. --HG-- extra : convert_revision : 96308897d2b9269dbefffa6d50ac491379444030
2005-09-02Bug fix: can't increment an iterator after you eraseSteve Reinhardt
the thing it points to. Somehow Linux doesn't care, but Cygwin sure does. --HG-- extra : convert_revision : 1209a75831f080f17a95433e546d7074f9f07332
2005-09-01Fix to #define True/False option values as 0/1 in header.Steve Reinhardt
--HG-- extra : convert_revision : 7fbae4816a4d0a5ed942e0ad8afed9464dd1ba11
2005-09-01Convert type of max_time and progress_interval parametersSteve Reinhardt
from Latency to Tick, and rename max_time to max_tick. python/m5/objects/Root.py: sim/root.cc: Convert type of max_time and progress_interval from Latency to Tick, and rename max_time to max_tick. --HG-- extra : convert_revision : 2f2aacf6321c3003a0ce834acd8fb726abf27ce3
2005-08-31more scons fixes for mysqlNathan Binkert
build/SConstruct: Only the major and minor mysql version numbers are guaranteed to be integers (e.g. 4.1.10a), and since that's all we care about only try to deal with those. for older versions of mysql, the strings returned by mysql_config may have quotes in them, remove those so things work --HG-- extra : convert_revision : de32f3e76618f0caf4d5578edd61beaeef666eb6
2005-08-31Move options files from <build_dir>/build_options to build_options/<build_dir>.Steve Reinhardt
build/SConstruct: Move options file from <build_dir>/build_options to build_options/<build_dir>. --HG-- extra : convert_revision : 0363f79ef5c9c157d9018fcae9c5e055e38e552d
2005-08-30Add script to generate new build directories.Steve Reinhardt
--HG-- extra : convert_revision : 2d2455ced5b33476bf88483c81ddf447a0658be2
2005-08-30Fix to work with older versions of mysql_config that don't support --include.Steve Reinhardt
Also add mysql version check. --HG-- extra : convert_revision : 36b6174ed1c64e8c5516f6adee71f27e068ceca2
2005-08-30Build options are set via a build_options file in theSteve Reinhardt
build directory instead of being inferred from the name of the build directory. Options are passed to C++ via config/*.hh files instead of via the command line. Build option flags are now always defined to 0 or 1, so checks must use '#if' rather than '#ifdef'. SConscript: MySQL detection moved to SConstruct. Add config/*.hh files (via ConfigFile builder). arch/alpha/alpha_memory.cc: arch/alpha/ev5.cc: arch/alpha/ev5.hh: arch/alpha/isa_traits.hh: base/fast_alloc.hh: base/statistics.cc: base/statistics.hh: base/stats/events.cc: base/stats/events.hh: cpu/base.cc: cpu/base.hh: cpu/base_dyn_inst.cc: cpu/base_dyn_inst.hh: cpu/exec_context.cc: cpu/exec_context.hh: cpu/o3/alpha_cpu.hh: cpu/o3/alpha_cpu_builder.cc: cpu/o3/alpha_cpu_impl.hh: cpu/o3/alpha_dyn_inst.hh: cpu/o3/alpha_dyn_inst_impl.hh: cpu/o3/alpha_params.hh: cpu/o3/commit_impl.hh: cpu/o3/cpu.cc: cpu/o3/cpu.hh: cpu/o3/fetch_impl.hh: cpu/o3/iew.hh: cpu/o3/iew_impl.hh: cpu/o3/regfile.hh: cpu/o3/rename_impl.hh: cpu/o3/rob_impl.hh: cpu/ozone/cpu.hh: cpu/pc_event.cc: cpu/simple/cpu.cc: cpu/simple/cpu.hh: sim/process.cc: sim/process.hh: Convert compile flags from def/undef to 0/1. Set via #include config/*.hh instead of command line. arch/alpha/isa_desc: Convert compile flags from def/undef to 0/1. Set via #include config/*.hh instead of command line. Revamp fenv.h support... most of the ugliness is hidden in base/fenv.hh now. base/mysql.hh: Fix typo in #ifndef guard. build/SConstruct: Build options are set via a build_options file in the build directory instead of being inferred from the name of the build directory. Options are passed to C++ via config/*.hh files instead of via the command line. python/SConscript: Generate m5_build_env directly from scons options instead of indirectly via CPPDEFINES. python/m5/convert.py: Allow '0' and '1' for booleans. Rewrite toBool to use dict. base/fenv.hh: Revamp <fenv.h> support to make it a compile option (so we can test w/o it even if it's present) and to make isa_desc cleaner. --HG-- extra : convert_revision : 8f97dc11185bef5e1865b3269c7341df8525c9ad
2005-08-26Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5Steve Reinhardt
into zizzer.eecs.umich.edu:/z/stever/bk/m5 --HG-- extra : convert_revision : dc9d0dc344389063f7b2026bd7cf737bdab3ee8b
2005-08-26Add explicit check for Python version to SConstruct.Steve Reinhardt
build/SConstruct: Add explicit check for Python version. --HG-- extra : convert_revision : 19ee788f72d63eb301e4be4c0c5729a5025c379f
2005-08-23better debugging of the configuration builder.Nathan Binkert
--HG-- extra : convert_revision : 9c51937e8bcc1ff93e24bd507d662fd50b5de6a0
2005-08-23Clean up the passing of the boot command line to the kernel.Nathan Binkert
kern/linux/linux_system.cc: Don't hard code the address of the command line in the kernel, instead, deduce it from the location of known symbols. don't use strcpy, it's dangerous. kern/linux/linux_system.hh: Don't hard code the address of the command line in the kernel, instead, deduce it from the location of known symbols. --HG-- extra : convert_revision : 128b1d5dbd00b0b8571707da99f86f76e29abfd1
2005-08-23Lots of fixes to serialization and naming of various deviceNathan Binkert
objects. The improper serialization of arrays was particularly bad. dev/alpha_console.cc: dev/isa_fake.cc: dev/ns_gige.cc: dev/pciconfigall.cc: dev/tsunami_cchip.cc: dev/tsunami_io.cc: dev/tsunami_pchip.cc: the pio interface is a different simobject and should have a different name. dev/ethertap.cc: fix serialization. dev/ide_ctrl.cc: - the pio interface is a different simobject and should have a different name. - properly initialize variables - When serializing an array, the size is the number of elements, not the number of bytes! dev/pcidev.cc: When serializing an array, the size is the number of elements, not the number of bytes! dev/tsunami_io.hh: Don't make objects SimObjects if they're not exposed to python. Don't add serialization functions to events, it's generally not what you want. allow the real time clock and interval timer to serialize themselves, must pass a base name since it is not a SimObject and the values will be going into the section of the parent. --HG-- extra : convert_revision : 3fc5de9b858ed770c8f385cf38b53242cf859c33
2005-08-23don't use sprintf. It's not guaranteed to not scribble over memory.Nathan Binkert
base/remote_gdb.cc: use snprintf, it's safer dev/ide_disk.cc: use strncpy instead of snprintf --HG-- extra : convert_revision : 90455e3f6bcb4c771724298a5a0b79a5b483a85c
2005-08-19A few minor fixes to get things to build on Cygwin.Steve Reinhardt
README: Clarify cygwin EIO error explanation. build/SConstruct: Cygwin header files cause uninitialized var warnings. dev/ide_ctrl.cc: Get rid of unnecessary byte-swap calls, some of which were too ambiguous for cygwin (or gcc 3.4.4). dev/pcidev.cc: Disambiguate arg for overloaded byte swap operation (and fix it to be the correct one). --HG-- extra : convert_revision : be37c6315aacbec6332b1d09e726b39b4aa18dce
2005-08-19Minor tweaks for 1.1 release.Steve Reinhardt
README: Updated for release 1.1. Clarified several minor things (I hope). --HG-- extra : convert_revision : a088f670739d33765611ce413b96854a1b51bb0f
2005-08-18Fix another bug from the freebsd mergeNathan Binkert
--HG-- extra : convert_revision : b153b0c12b6678df148839617954a9a4c6fec7d4
2005-08-18Fix a couple of turbolaser problems that were introduced by theNathan Binkert
new freebsd code. dev/ns_gige.cc: g++ doesn't like it when you declare a variable inside a case label. Pull the declaration outside. --HG-- extra : convert_revision : d39e84fc58f2dd5b09c5948eedb4b1d7848e9817
2005-08-16Clean up freebsd_system.cc.Benjamin Nash
kern/freebsd/freebsd_system.cc: Use htog instead of htoa. --HG-- extra : convert_revision : 09224d60ce5bb3827c9f046127ff6fc72fa008d6
2005-08-16Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_dir/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : 9b7ca872187a13179118ad0651301d531332dc63
2005-08-16Uart fix.Miguel Serrano
dev/uart8250.cc: Fixed implementation of "transmit interrupt clear". --HG-- extra : convert_revision : cb69d61413ea799d5d3825fe2f0891dd72995561
2005-08-16Merge m5.eecs.umich.edu:/bk/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : 36bb126381caf84d85a566579225b02c15f8f356
2005-08-16Updates to job scripts to accept more than 15 characters of jobnameNathan Binkert
Make the Link directory even more useful by working with sub-directories. util/pbs/job.py: Expose JOBNAME as a separate parameter from PBS_JOBNAME. If the former exists, it is used as the jobname for starting the job, if it doesn't exist, PBS_JOBNAME is used. This is to get around the 15 character maximum pbs job name length. While we're at it, shuffle things around to hopefully make things a bit more clear. util/pbs/send.py: Make the Link directory functionality more sophisticated, copy sub-directories and links to directories. (we still don't copy dotfiles though) Add the setname() function to contact pbs and use raj's hack to tell the webpage about longer jobnames. (it's gross, don't look) truncate the pbs job name to 15 characters so that it works. --HG-- extra : convert_revision : 4a76b1a1c33721c7ca93e2fbb761f95bc3a2ac69
2005-08-15Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_dir/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 dev/ide_ctrl.cc: dev/ide_ctrl.hh: dev/ide_disk.cc: dev/ide_disk.hh: dev/ns_gige.cc: dev/pciconfigall.cc: dev/pcidev.cc: dev/rtcreg.h: dev/tsunami_io.cc: dev/tsunami_io.hh: dev/uart8250.cc: dev/uart8250.hh: python/m5/objects/Tsunami.py: Merge code. --HG-- extra : convert_revision : e97d5dbcc051d2061622201265430d359f995d48
2005-08-15Changes for getting FreeBSD to run.Miguel Serrano
SConscript: Added more files to compile: dev/pcifake.cc, dev/isa_fake.cc, kern/freebsd/freebsd_system.cc, kern/freebsd/freebsd_events.cc. arch/alpha/isa_traits.hh: Added constant for argument register 2 as it is needed by FreebsdSystem::doCalibrateClocks(). cpu/exec_context.hh: cpu/o3/alpha_cpu.hh: Replaced htoa()s with gtoh() and htog(). cpu/o3/fetch_impl.hh: cpu/simple/cpu.cc: Replaced htoa() with gtoh(). dev/disk_image.cc: Replaced htoa()s with letoh()s. dev/ide_ctrl.cc: Got rid of magic numbers. Added IdeChannel and IdeRegType type names where necessary. dev/ide_ctrl.hh: Got rid of unnecessary macros. Changed RegType_t to IdeRegType. Changed bmi_regs to allow accessing registers by name instead of just by array index. Added IdeChannel enum type to use in place of bool variables which were used to specify IDE channel. dev/ide_disk.cc: Rewrote IdeDisk::read and IdeDisk::write functions to specify registers by name instead of indexing through an array. dev/ide_disk.hh: Updated command register struct. dev/ns_gige.cc: dev/ns_gige.hh: Made ReadConfig and WriteConfig begin with a lower-case letter. writeConfig() now takes a pointer to data as a parameter instead of a copy of data. dev/pciconfigall.cc: writeConfig() now takes a pointer to data as a parameter instead of a copy of data. dev/pcidev.cc: Cleaned up readConfig() and writeConfig() functions. dev/pcidev.hh: Added macros to make code that works with the BARs (base adress registers) more readable. writeConfig() now takes a pointer to data. dev/pcireg.h: Changed PCIConfig struct to make accessing elements more straight forward. Removed type 1 (for PCI-to-PCI bridges) PCI configuration space struct since it is not used. dev/rtcreg.h: Added macros for bit fields in RTC status registers A & B. dev/sinic.cc: Function name change: WriteConfig --> writeConfig. writeConfig() now takes a pointer to data instead of a copy of data. The accessing of elements of PCIConfig structure is updated. dev/sinic.hh: Function name change: WriteConfig --> writeConfig. writeConfig() now takes a pointer to data instead of a copy of data. dev/tsunami_io.cc: Added implementation of new RTC and PIT classes. dev/tsunami_io.hh: Added classes for RTC and PIT modules. dev/tsunamireg.h: Added macros for DMA ports used by Tsunami-Tru64. dev/uart8250.cc: Got rid of a magic number. Transmit (Tx) interrupts should clear upon a read of the Interrupt ID register. dev/uart8250.hh: Added comments and macros dealing with the UART Interrupt ID register. kern/linux/linux_system.cc: Replaced htoa() with htog(). python/m5/objects/Pci.py: PciFake is a python class for Pci Devices that do nothing. python/m5/objects/Tsunami.py: TsunamiFake was renamed as IsaFake. sim/system.cc: Replaced htoa()s with htog()s. dev/isa_fake.cc: New BitKeeper file ``dev/isa_fake.cc'' TsunamiFake was renamed as IsaFake. dev/isa_fake.hh: New BitKeeper file ``dev/isa_fake.hh'' TsunmaiFake was renamed as IsaFake. dev/pitreg.h: New BitKeeper file ``dev/pitreg.h'' Useful macros for working with PIT (Periodic Interval Timer) registers. --HG-- extra : convert_revision : 33f3a8a1034af4f6c71b32dd743e371c8613e780
2005-08-15Fix NextEthernetAddrNathan Binkert
python/m5/config.py: NextEthernetAddr shouldnt' be a Singleton since we want __init__ to be called more than once. Make the EthernetAddr class a "proxy" so that unproxy will be called and NextEthernetAddr will generally work correctly. --HG-- extra : convert_revision : c89bf268e805e202ae71030fcea4833867c7e477
2005-08-12Improve FreeBSD networking support.Benjamin Nash
dev/ns_gige.cc: Added FreeBSD support. Required additional register read/write functionality, hash filtering (faked), and EEPROM read access. dev/ns_gige.hh: Added constants and variables for FreeBSD support. Also created eepromKick() to advance state machine. dev/ns_gige_reg.h: Defined additional register bit fields. dev/pcidev.cc: Fix &= typo. dev/sinic.cc: Remove an INIT_PARAM_DFLT macro. dev/tsunami_io.cc: Fix DPRINTF typo. kern/freebsd/freebsd_system.cc: Edit comments. --HG-- extra : convert_revision : 37aaa1303d57d3784381e85acb3bc1743adeb8c0
2005-07-28Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_new/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 SConscript: dev/ide_disk.hh: Formatting. dev/ide_ctrl.cc: Endianness dev/ide_disk.cc: dev/pcidev.cc: dev/tsunami_io.cc: dev/uart8250.cc: Clean up code. --HG-- extra : convert_revision : cb554f0e3a701371d2106cd7e11a4a22f773acc2
2005-07-28.Miguel Serrano
SConscript: add pcifake dev/ide_ctrl.cc: dev/ide_ctrl.hh: dev/ide_disk.cc: dev/ide_disk.hh: endianess dev/tsunami_io.cc: rtc, date/time --HG-- extra : convert_revision : 21ad27c780749cb6f6eef2b57798c0c292c3f14d
2005-07-28ghgfsdfMiguel Serrano
dev/pciconfigall.cc: removed union. dev/pcidev.cc: . dev/rtcreg.h: more macros to avoid magic numbers. dev/tsunami_io.cc: replaced magic numbers, no more advancing RTC as it isn't reaaly necessary. dev/tsunami_io.hh: removed declarations of things that go unused. dev/uart8250.cc: reading the Interrupt ID register should clear TX interrupt flag. dev/uart8250.hh: useful #defines. kern/freebsd/freebsd_system.cc: kern/freebsd/freebsd_system.hh: nothing. python/m5/objects/Pci.py: new PciFake. --HG-- extra : convert_revision : 88259704f5b215591d1416360180810fcda14d26
2005-07-26Merge m5read@m5.eecs.umich.edu:/bk/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : 5cfec85dbfc33b942929e6d379275618f2c60c33
2005-07-26Various changes to I/O, addition of PciFake device to improve FreeBSD ↵Benjamin Nash
compatibility. SConscript: Include pcifake.cc, fix spacing. dev/ide_ctrl.cc: Consolidate switch-case blocks. dev/ide_disk.cc: Add comments. dev/pciconfigall.cc: Adjust spacing. dev/pcidev.cc: Adjust spacing, rearrange code. dev/tsunami_io.cc: Rearrange code. dev/uart8250.cc: Switch uart interrupt interval back to original value. python/m5/objects/Pci.py: Add PciFake class to be used as a PCI-ISA bridge device. --HG-- extra : convert_revision : 8aea94318510079a310377f297aa161ba5f7864c
2005-07-18Fix for passing functional memory param to timing mem.Steve Reinhardt
python/m5/config.py: Fix error message. --HG-- extra : convert_revision : 4e57f7bdd4ea7dfdd3e88c60080f993997b0bda2
2005-07-14Fix for bug in using compression in full-system mode.Steve Reinhardt
Involves adding functional memory param (for full-system mode only, for now). --HG-- extra : convert_revision : f42cf087969427b5406be0162e13163d3624684f
2005-07-13Various changes to m5/dev files to work with FreeBSD.Benjamin Nash
dev/ide_ctrl.cc: dev/ide_disk.cc: dev/pcidev.cc: Made endian-independent. dev/ide_disk.hh: fixed. dev/pciconfigall.cc: The data to write is contained in a 32-bit unsigned int now. The union method would not have worked on big-endian machines. dev/pcidev.hh: Fixed typo. dev/tsunami_io.cc: Return zero on RTC alarm reads. dev/uart8250.cc: Fix uart interrupt handling. --HG-- extra : convert_revision : b5c08e8e77644c399c20888666406805ff1b6649
2005-07-06no license in treeNathan Binkert
--HG-- extra : convert_revision : 4a9bb7be1e7e3f465ad34b9129b7c1e0578dbfcc
2005-07-05config:Steve Reinhardt
Add license. --HG-- extra : convert_revision : af110213e79464b8f2d970a2e906d1234e818c6d
2005-07-01Hand merge ide_disk.ccBenjamin Nash
dev/ide_disk.cc: Don't initialize data to 0. --HG-- extra : convert_revision : 643bcf15b52c3e14231d8136b8cb049a8896457a
2005-07-01Merge m5read@m5.eecs.umich.edu:/bk/m5Miguel Serrano
into zamp.eecs.umich.edu:/.automount/fox/y/mserrano/m5_new/m5 --HG-- extra : convert_revision : bb3e977e79599c459fb32f309ce5b486f1639afa
2005-07-01.Miguel Serrano
--HG-- extra : convert_revision : 1ed206b27498641b64d7f35c74ea1f0623398d4e
2005-07-01Merge m5read@m5.eecs.umich.edu:/bk/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : b421397b21326ec2bdd3ce82b9f69e224b380610
2005-07-01Fix formatting, move default size (0x8) of TsunamiFake from C++ code to ↵Benjamin Nash
Python code. dev/ide_disk.cc: Fix formatting. Panic if unexpected register type is given. python/m5/objects/Tsunami.py: Add default size of TsunamiFake device. --HG-- extra : convert_revision : 03a35a2f6468b95746cba41ce7e93afeeb70ccef
2005-06-30Initialize bpred table pointers.Steve Reinhardt
--HG-- extra : convert_revision : 9999c05b7fb8f66c2b9d5544868994f82d432d19
2005-06-30Remove #include statments in various files within kern/Benjamin Nash
kern/freebsd/freebsd_system.cc: kern/freebsd/freebsd_system.hh: kern/kernel_stats.cc: kern/kernel_stats.hh: kern/linux/aligned.hh: kern/linux/linux_system.cc: kern/linux/linux_system.hh: kern/linux/linux_threadinfo.hh: kern/linux/printk.cc: kern/linux/sched.hh: kern/linux/thread_info.hh: kern/system_events.cc: kern/system_events.hh: Remove unecessary #include statements. --HG-- extra : convert_revision : 7e32d3b096fc92708ea45db9b172bada906024cd
2005-06-30Formatting, reduce maximum number of functional memory children.Benjamin Nash
dev/ide_disk.cc: dev/pcidev.cc: Formatting. --HG-- extra : convert_revision : 6f5824aa220fe311751fb10ec8648fe64dfa4775