summaryrefslogtreecommitdiff
path: root/build
AgeCommit message (Collapse)Author
2006-05-16Add in checker. Supports dynamically verifying the execution of ↵Kevin Lim
instructions, as well as limited amount of control path verification. It will verify anything within the program, but anything external (traps, interrupts, XC) it assumes is redirected properly by the CPU. Similarly it assumes the results of store conditionals, uncached loads, and instructions marked as "unverifiable" are correct from the CPU. base/traceflags.py: build/SConstruct: cpu/SConscript: cpu/cpu_models.py: Add in Checker. cpu/base.cc: Add in checker support. Also XC status starts off as suspended. cpu/base.hh: Add in checker. --HG-- extra : convert_revision : 091b5cc83e837858adb681ef0137a0beb30bd1b2
2006-04-22Updates for OzoneCPU.Kevin Lim
build/SConstruct: Include Ozone CPU models. cpu/cpu_models.py: Include OzoneCPU models. --HG-- extra : convert_revision : 51a016c216cacd2cc613eed79653026c2edda4b3
2006-03-07Rename default options path from "build_options/default" to "default_options",Steve Reinhardt
and current options path from "build_options/current" to "options". This way we can symlink default_options to a different build dir w/o clobbering the current options. --HG-- rename : build/build_options/default/ALPHA_FS => build/default_options/ALPHA_FS rename : build/build_options/default/ALPHA_FS_TL => build/default_options/ALPHA_FS_TL rename : build/build_options/default/ALPHA_SE => build/default_options/ALPHA_SE rename : build/build_options/default/MIPS_SE => build/default_options/MIPS_SE rename : build/build_options/default/SPARC_SE => build/default_options/SPARC_SE extra : convert_revision : 8c0d3139cdd7e9ed40a9f2deeb47f65f24e52799
2006-02-23Enable building only selected CPU models via new sconsSteve Reinhardt
CPU_MODELS parameter. For example: scons CPU_MODELS="SimpleCPU,FullCPU" ALPHA_SE/m5.debug Unfortunately the option is not sticky due to a scons bug with saving & restoring ListOption parameters. SConscript: Separate out cpu-model-specific files so they can be conditionally included based on value of new CPU_MODELS parameter. Most of these are now handled in cpu/SConscript, except for FullCPU which is still in this file. arch/SConscript: The set of CPU-model-specific execute files must now be determined from the CPU_MODELS parameter, via the new cpu_models.py file. Also pass the list of configured CPU models to isa_parser.py. arch/isa_parser.py: Move CpuModel definition and objects out to a separate file so they can be shared with scons. Global list of CPU models to generate code for is now controlled by command-line parameters (so we can do only a subset of the available ones). build/SConstruct: Define new CPU_MODELS ListOption. cpu/static_inst.hh: Rename static_inst_impl.hh to static_inst_exec_sigs.hh. --HG-- extra : convert_revision : 163df32a76d4c05900490b2bce4c7962a5e3f614
2006-02-22Auto-generate arch/foo.hh "switch headers" in scons.Steve Reinhardt
SConscript: Include new arch/SConscript file. arch/isa_specific.hh: Get rid of unnecessary ISA_INCLUDE() macro and other things that were used only for that purpose. build/SConstruct: Move list of ISAs to env var ALL_ISA_LIST. --HG-- extra : convert_revision : 612c7ee4279d57209662be88dc577d80fdbd692c
2006-02-14New files to fix building the SPARC_SE and MIPS_SE isa_parser.py generated ↵Gabe Black
files. --HG-- extra : convert_revision : 94a9543376f8b4709a4aef54c5ac0d6f582a9dad
2006-02-08Alot of changes to push towards ISA independence. Highlights are renaming of ↵Gabe Black
the isa_desc files, movement of byte_swap.hh into sim, and the creation of arch/isa_traits.hh SConscript: Moved some files out of targetarch. The either no longer need to be there, never needed to be there, or should be referred to directly in arch/alpha due to there strictly alpha content. arch/alpha/isa_traits.hh: Added alpha's endianness to it's isa_traits.hh arch/mips/isa_traits.hh: Added MIPS endianness to it's isa_traits.hh arch/sparc/isa_traits.hh: Added SPARCs endianess to it's isa_traits.hh build/SConstruct: Added MIPS as a valid architecture cpu/exec_context.hh: Included arch/isa_traits.hh to bring in the endianness of the system. cpu/o3/alpha_cpu.hh: Included arch/isa_traits.hh to bring in the systems endianness, and removed the hardcoding of little endianness cpu/o3/fetch_impl.hh: kern/freebsd/freebsd_system.cc: Included arch/isa_traits.hh to bring in the systems endianness, and removed the hardcoding to little endianness. sim/system.cc: Included arch/isa_traits.hh to bring in the systems endianness, and removed the hardcoding to little endian. --HG-- extra : convert_revision : b1ab34b7569db531cd1c74f273b24222e63f9007
2006-01-24Some stuff aparently didn't get committed which was from before the new ↵Gabe Black
repository was created. SConscript: There is a new SConscript in the arch/alpha directory which has the alpha specific files. To add files for an arch, a similar file should be created. arch/isa_parser.py: The isa parser now supports include directives. These are done with ##include build/SConstruct: The target directory is passed on so that the architecture specific SConscript can have it. Also, sparc was added as a valid architecture type. arch/alpha/SConscript: This SConscript adds the alpha specific source arch/sparc/isa_desc/operands.h: This sets up the operand types that the sparc isa uses arch/sparc/isa_traits.cc: Implementation of sparc specific things, like a register file with windows build/build_options/default/SPARC_SE: The default options for a sparc syscall emulation build. --HG-- extra : convert_revision : 1afedae61dc8cae0d59d3bf1d41420d929be2efd
2005-11-09A couple of FP-related fixes (prompted by Adam having troubleSteve Reinhardt
running SPEC FP codes). arch/alpha/isa_desc: Don't warn about non-standard trapping modes more than once per static instruction. (Had the flag to suppress these but forgot to check it!) build/SConstruct: Add USE_SSE2 option to enable compiling w/SSE2 (important for getting IEEE-compliant FP on x86). --HG-- extra : convert_revision : eac69efb28cce7b48035480d8b7cb004782969f4
2005-11-03Check for MySQL 4.1 or newer onlySteve Reinhardt
(3.23 does not work as we supposed it did). --HG-- extra : convert_revision : d87dbebe0b2387fde1f8aba52625d115d31baf1a
2005-10-01Add default= option to SConstruct.Steve Reinhardt
build/SConstruct: Add 'default=' argument to specify base config to use when setting up a new build dir with a different name, e.g.: scons default=ALPHA_SE USE_MYSQL=no ALPHA_SE_NOSQL/m5.opt --HG-- extra : convert_revision : 0f7ee1414b3e84b36114415182baf54a8adab9b7
2005-09-24Create build_options/current dir when necessary.Steve Reinhardt
build/SConstruct: Need to create build_options/current the first time through. --HG-- extra : convert_revision : 13bf8c69a4a30671283a8b789ed21875b2301f24
2005-09-24Split build options files into a static set of defaultsSteve Reinhardt
for committing to bk and a dynamically updated set which are not under revision control. build/SConstruct: Split build options into static defaults and dynamic "current" settings. --HG-- rename : build/build_options/ALPHA_FS => build/build_options/default/ALPHA_FS rename : build/build_options/ALPHA_FS_TL => build/build_options/default/ALPHA_FS_TL rename : build/build_options/ALPHA_SE => build/build_options/default/ALPHA_SE extra : convert_revision : 8219211a3f2ce955fd6e2c34c169cac3fc704854
2005-09-22Support for compiling and testing on pool via 'qdo' script.Steve Reinhardt
For this to work qdo must be on your path. I've copied it into /usr/local/bin on zizzer. build/SConstruct: Add BATCH and BATCH_CMD options to support compiling/testing on pool via qdo. --HG-- extra : convert_revision : b7fc46465e897f7f15ed4a67f6735886917a6c4b
2005-09-12More minor tweaks for fenv/cygwin.Steve Reinhardt
build/SConstruct: No need to warn about regression failures w/o fenv.h anymore. --HG-- extra : convert_revision : f40efb849f4c3063ebb58f6e277473467916573d
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-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-01Fix to #define True/False option values as 0/1 in header.Steve Reinhardt
--HG-- extra : convert_revision : 7fbae4816a4d0a5ed942e0ad8afed9464dd1ba11
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-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-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-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-06-05Many files:Steve Reinhardt
Update copyright dates and author list SConscript: arch/alpha/alpha_linux_process.cc: arch/alpha/alpha_linux_process.hh: arch/alpha/alpha_memory.cc: arch/alpha/alpha_memory.hh: arch/alpha/alpha_tru64_process.cc: arch/alpha/alpha_tru64_process.hh: arch/alpha/aout_machdep.h: arch/alpha/arguments.cc: arch/alpha/arguments.hh: arch/alpha/ev5.cc: arch/alpha/ev5.hh: arch/alpha/faults.cc: arch/alpha/faults.hh: arch/alpha/isa_desc: arch/alpha/isa_traits.hh: arch/alpha/osfpal.cc: arch/alpha/osfpal.hh: arch/alpha/pseudo_inst.cc: arch/alpha/pseudo_inst.hh: arch/alpha/vptr.hh: arch/alpha/vtophys.cc: arch/alpha/vtophys.hh: base/bitfield.hh: base/callback.hh: base/circlebuf.cc: base/circlebuf.hh: base/cprintf.cc: base/cprintf.hh: base/cprintf_formats.hh: base/crc.hh: base/date.cc: base/dbl_list.hh: base/endian.hh: base/fast_alloc.cc: base/fast_alloc.hh: base/fifo_buffer.cc: base/fifo_buffer.hh: base/hashmap.hh: base/hostinfo.cc: base/hostinfo.hh: base/hybrid_pred.cc: base/hybrid_pred.hh: base/inet.cc: base/inet.hh: base/inifile.cc: base/inifile.hh: base/intmath.cc: base/intmath.hh: base/match.cc: base/match.hh: base/misc.cc: base/misc.hh: base/mod_num.hh: base/mysql.cc: base/mysql.hh: base/output.cc: base/output.hh: base/pollevent.cc: base/pollevent.hh: base/predictor.hh: base/random.cc: base/random.hh: base/range.cc: 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/socket.cc: base/socket.hh: base/statistics.cc: base/statistics.hh: base/compression/lzss_compression.cc: base/compression/lzss_compression.hh: base/compression/null_compression.hh: base/loader/aout_object.cc: base/loader/aout_object.hh: base/loader/ecoff_object.cc: base/loader/ecoff_object.hh: base/loader/elf_object.cc: base/loader/elf_object.hh: base/loader/object_file.cc: base/loader/object_file.hh: base/loader/symtab.cc: base/loader/symtab.hh: base/stats/events.cc: base/stats/events.hh: base/stats/flags.hh: base/stats/mysql.cc: base/stats/mysql.hh: base/stats/mysql_run.hh: base/stats/output.hh: base/stats/statdb.cc: base/stats/statdb.hh: base/stats/text.cc: base/stats/text.hh: base/stats/types.hh: base/stats/visit.cc: base/stats/visit.hh: base/str.cc: base/str.hh: base/time.cc: base/time.hh: base/timebuf.hh: base/trace.cc: base/trace.hh: base/userinfo.cc: base/userinfo.hh: build/SConstruct: 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/exetrace.cc: cpu/exetrace.hh: cpu/inst_seq.hh: cpu/intr_control.cc: cpu/intr_control.hh: cpu/memtest/memtest.cc: cpu/pc_event.cc: cpu/pc_event.hh: cpu/smt.hh: cpu/static_inst.cc: cpu/static_inst.hh: cpu/memtest/memtest.hh: cpu/o3/sat_counter.cc: cpu/o3/sat_counter.hh: cpu/ozone/cpu.hh: cpu/simple/cpu.cc: cpu/simple/cpu.hh: cpu/trace/opt_cpu.cc: cpu/trace/opt_cpu.hh: cpu/trace/reader/ibm_reader.cc: cpu/trace/reader/ibm_reader.hh: cpu/trace/reader/itx_reader.cc: cpu/trace/reader/itx_reader.hh: cpu/trace/reader/m5_reader.cc: cpu/trace/reader/m5_reader.hh: cpu/trace/reader/mem_trace_reader.cc: cpu/trace/reader/mem_trace_reader.hh: cpu/trace/trace_cpu.cc: cpu/trace/trace_cpu.hh: dev/alpha_access.h: dev/alpha_console.cc: dev/alpha_console.hh: dev/baddev.cc: dev/baddev.hh: dev/disk_image.cc: dev/disk_image.hh: dev/etherbus.cc: dev/etherbus.hh: dev/etherdump.cc: dev/etherdump.hh: dev/etherint.cc: dev/etherint.hh: dev/etherlink.cc: dev/etherlink.hh: dev/etherpkt.cc: dev/etherpkt.hh: dev/ethertap.cc: dev/ethertap.hh: dev/ide_ctrl.cc: dev/ide_ctrl.hh: dev/ide_disk.cc: dev/ide_disk.hh: dev/io_device.cc: dev/io_device.hh: dev/ns_gige.cc: dev/ns_gige.hh: dev/ns_gige_reg.h: dev/pciconfigall.cc: dev/pciconfigall.hh: dev/pcidev.cc: dev/pcidev.hh: dev/pcireg.h: dev/pktfifo.cc: dev/pktfifo.hh: dev/platform.cc: dev/platform.hh: dev/simconsole.cc: dev/simconsole.hh: dev/simple_disk.cc: dev/simple_disk.hh: dev/sinic.cc: dev/sinic.hh: dev/sinicreg.hh: dev/tsunami.cc: dev/tsunami.hh: dev/tsunami_cchip.cc: dev/tsunami_cchip.hh: dev/tsunami_io.cc: dev/tsunami_io.hh: dev/tsunami_pchip.cc: dev/tsunami_pchip.hh: dev/tsunamireg.h: dev/uart.cc: dev/uart.hh: dev/uart8250.cc: dev/uart8250.hh: docs/stl.hh: encumbered/cpu/full/op_class.hh: kern/kernel_stats.cc: kern/kernel_stats.hh: kern/linux/linux.hh: kern/linux/linux_syscalls.cc: kern/linux/linux_syscalls.hh: kern/linux/linux_system.cc: kern/linux/linux_system.hh: kern/linux/linux_threadinfo.hh: kern/linux/printk.cc: kern/linux/printk.hh: kern/system_events.cc: kern/system_events.hh: kern/tru64/dump_mbuf.cc: kern/tru64/dump_mbuf.hh: kern/tru64/mbuf.hh: kern/tru64/printf.cc: kern/tru64/printf.hh: kern/tru64/tru64.hh: kern/tru64/tru64_events.cc: kern/tru64/tru64_events.hh: kern/tru64/tru64_syscalls.cc: kern/tru64/tru64_syscalls.hh: kern/tru64/tru64_system.cc: kern/tru64/tru64_system.hh: python/SConscript: python/m5/__init__.py: python/m5/config.py: python/m5/convert.py: python/m5/multidict.py: python/m5/smartdict.py: sim/async.hh: sim/builder.cc: sim/builder.hh: sim/debug.cc: sim/debug.hh: sim/eventq.cc: sim/eventq.hh: sim/host.hh: sim/main.cc: sim/param.cc: sim/param.hh: sim/process.cc: sim/process.hh: sim/root.cc: sim/serialize.cc: sim/serialize.hh: sim/sim_events.cc: sim/sim_events.hh: sim/sim_exit.hh: sim/sim_object.cc: sim/sim_object.hh: sim/startup.cc: sim/startup.hh: sim/stat_control.cc: sim/stat_control.hh: sim/stats.hh: sim/syscall_emul.cc: sim/syscall_emul.hh: sim/system.cc: sim/system.hh: test/bitvectest.cc: test/circletest.cc: test/cprintftest.cc: test/genini.py: test/initest.cc: test/lru_test.cc: test/nmtest.cc: test/offtest.cc: test/paramtest.cc: test/rangetest.cc: test/sized_test.cc: test/stattest.cc: test/strnumtest.cc: test/symtest.cc: test/tokentest.cc: test/tracetest.cc: util/ccdrv/devtime.c: util/m5/m5.c: util/oprofile-top.py: util/rundiff: util/m5/m5op.h: util/m5/m5op.s: util/stats/db.py: util/stats/dbinit.py: util/stats/display.py: util/stats/info.py: util/stats/print.py: util/stats/stats.py: util/tap/tap.cc: Update copyright dates and author list --HG-- extra : convert_revision : 0faba08fc0fc0146f1efb7f61e4b043c020ff9e4
2005-06-05make all of the turbolaser stuff only compile if ALPHA_TLASERNathan Binkert
is defined. build/SConstruct: Default ALPHA_TLASER to false dev/uart8250.cc: fix paths --HG-- extra : convert_revision : 3616b5b4b9060860a73568a4ed4f1e8eb991938f
2005-06-02Rename builds more descriptively:Steve Reinhardt
ALPHA -> ALPHA_SE (for Syscall Emulation) KERNEL -> ALPHA_FS KERN_TLASER -> ALPHA_FS_TL Also renamed configs/kernel dir to configs/fullsys. README: build/SConstruct: Rename builds more descriptively. --HG-- extra : convert_revision : f2bffb3ad0fc5068cc7fa20661ed9e4e7bc5b202
2005-03-28Merge ktlim@zizzer.eecs.umich.edu:/bk/m5Kevin Lim
into zamp.eecs.umich.edu:/z/ktlim2/m5 --HG-- extra : convert_revision : 95e94251150a3eea380b6b3bc3a9596e188df315
2005-03-28If we find the mysql libraries on the machine, just compileNathan Binkert
with mysql and remove the special compile type. SConscript: If we find the mysql libraries on the machine, just compile with mysql. build/SConstruct: we always use mysql, and we got rid of the FS_MEASURE --HG-- extra : convert_revision : a7c4277c890e1b6390ef06288114c9bdde11b178
2005-03-14MergeKevin Lim
--HG-- extra : convert_revision : 22919164108afd74f30207606f59a38992991dae
2005-03-14Move adding SRCDIR/python to sys.path fromSteve Reinhardt
multiple SConscript files to SConstruct. build/SConstruct: Add SRCDIR/python to sys.path here. python/SConscript: Move adding SRCDIR/python to sys.path to SConstruct. --HG-- extra : convert_revision : f598d670650f5b4fd501caaf073fe38b44d21855
2005-03-14- Add capability to auto-generate Param structs fromSteve Reinhardt
.mpy SimObject descriptions. Structs are defined in simobj/param/ObjectName.hh. - Move compile-time python params (from CPPDEFINES) to separate dict from run-time params (from os.environ). The former are needed to generate proper param structs. This also helps prevent users from messing things up by setting the wrong environment vars (which could have overridden compile-time settings in the old system). - Other misc cleanup of m5 python package. SConscript: Include simobj/SConscript build/SConstruct: Fix type in comment python/SConscript: Move CPPDEFINES dict-generating code to m5scons.flatten_defines python/m5/__init__.py: - Generate a build_env SmartDict here to hold compile-time params (passed in via __main__.m5_build_env). - Move panic and env here from config.py. python/m5/config.py: Move panic, env to top level (m5/__init__.py) python/m5/objects/BaseCPU.mpy: Use build_env instead of env for compile-time params python/m5/smartdict.py: Add some comments. sim/sim_object.hh: Include auto-generated Param struct. Not used yet, just here as proof of concept. test/genini.py: Put -E arguments in build_env as well as os.environ --HG-- extra : convert_revision : cf6f4a2565b230c495b33b18612d6030988adac5
2005-01-11Merge changes.Kevin Lim
base/traceflags.py: Merge extra new CPU flags cpu/static_inst.hh: Include all the execute functions in static_inst_impl.hh --HG-- extra : convert_revision : 78eb753bf709d37400e7c2418bb35d842d7c3f63
2005-01-11Slight fixes, add in commit trace flag.Kevin Lim
base/traceflags.py: Add new commit rate trace flag. build/SConstruct: Add extra option for efence. cpu/beta_cpu/alpha_full_cpu_impl.hh: Use function calls instead of direct indexing (avoids confusion). cpu/beta_cpu/commit_impl.hh: Add commit rate trace output (might not be worthwhile in the future). cpu/beta_cpu/decode_impl.hh: Remove some older hacks. Fix it so that the isntruction properly sets its next PC to the one calculated by the branch. cpu/beta_cpu/fetch_impl.hh: Remove old commented code. cpu/beta_cpu/iew_impl.hh: Add extra check to ensure that the instruction is valid. cpu/beta_cpu/regfile.hh: Include trace file. --HG-- extra : convert_revision : 4ee1dc88f8a5ed9b65486c6c111a3718a8040e42
2004-11-13defining SYSTEM_EV5 isn't all that necessaryNathan Binkert
--HG-- extra : convert_revision : 7d39dd9f814434cb95ec769204d7f2426b0290fd
2004-10-22make all signatures go into a single file that's at the topNathan Binkert
of the build directory. This makes it so that scons won't leave the .sconsign turds all over the source tree. --HG-- extra : convert_revision : d530ed3eaed73c7ce2d21c7391f815051a37b500
2004-09-20Clean up network header stuff and make it more generic. UseNathan Binkert
libdnet when we can instead of our own home grown stuff. SConscript: separate the crc code into its own file base/inet.cc: move the crc stuff to crc.cc add generic code for calculating ip/tcp/udp checksums base/inet.hh: - move crc stuff to crc.hh - #include all of the libdnet stuff. (this makes base/inet.hh the only file you need to include if you want to use this kind of stuff.) - Wrap some of the libdnet structs to get easier access to structure members. These wrappers will automatically deal with masking/shifting/ byte-swapping. base/refcnt.hh: If one derives from RefCountingPtr, they should have access to the internal data pointer. build/SConstruct: make #include of dnet stuff work dev/etherlink.cc: dev/ethertap.cc: dev/ethertap.hh: EtherPacket -> PacketData dev/etherpkt.cc: EtherPacket -> PacketData add a function for populating extra info about a packet. Basically just gives pointers to ethernet/ip/tcp/udp headers if they exist. dev/etherpkt.hh: EtherPacket -> PacketData remove most of the packet header stuff from teh PacketData class and just add a few generic functions for grabbing various headers that may exist in the packet. The old functionality is contained in the headers. dev/ns_gige.cc: - IP -> Ip, UDP -> Udp, TCP ->Tcp when used in variable names - get rid of our own byte swapping functions. - whack checksum code and use libdnet version. - Get pointers to the various packet headers and grab info from those headers. (The byte swapping in the headers now.) - Add stats for Udp Checksums dev/ns_gige.hh: use libdnet for checksum code. IP -> Ip, TCP -> Tcp in variable names add stats for UDP checksums --HG-- extra : convert_revision : 96c4160e1967b7c0090acd456df4a76e1f3aab53
2004-08-16Fix SConstruct file to allow you to override the compilersNathan Binkert
build/SConstruct: Make it possible to override the CC and CXX environment variables. --HG-- extra : convert_revision : e1b68ae9b1b7011cc494bfa9ee688aa72929a2e3
2004-08-07Split libelf/SConscript into two parts, one for theSteve Reinhardt
shared build and one for the per-config header file copying. SConscript: Just include libelf/SConscript-local. build/SConstruct: Include libelf/SConscript-global. --HG-- extra : convert_revision : 0a4ae8f1514819f99fec101b898c19dabd4d59bd
2004-08-03Move libelf/SConscript include to m5/SConscript, so elfSteve Reinhardt
headers get created in build tree (under build/FOO/libelf) instead of source tree (m5/libelf). SConscript: Move libelf/SConscript include here. build/SConstruct: Get rid of libelf/SConscript include (moved to m5/SConscript). --HG-- extra : convert_revision : c0acb3bab2afa5079748b907c5917f548582099e
2004-07-02Initial SCons-based build system. See www.scons.org.Steve Reinhardt
'cd build; scons' will build ALPHA/m5.debug. Use e.g. 'scons KERNEL/m5.opt' to build other binaries. Read the comments in build/SConstruct for more details. base/traceflags.py: Take basename of generated cc/hh files from command line instead of hardwiring them. Lets us call the script from a different directory and still have the files end up in the right place (e.g. "base/traceflags.py base/traceflags"). --HG-- extra : convert_revision : ee4dbb59040cf07590929275f6c1c01e8d4e00b4