summaryrefslogtreecommitdiff
path: root/src/sim
AgeCommit message (Collapse)Author
2008-10-09eventq: Don't use inline friend function when a static function will do.Nathan Binkert
Another good reason to avoid this is that swig will try to wrap the friend, but it won't try to wrap a private static function.
2008-10-09SCons: add code to provide a libm5 shared library.Nathan Binkert
Targets look like libm5_debug.so. This target can be dynamically linked into another C++ program and provide just about all of the M5 features. Additionally, this library is a standalone module that can be imported into python with an "import libm5_debug" type command line.
2008-10-09eventq: I'm sick of the warning about MaxTick being unused.Nathan Binkert
2008-10-02Output: Verify output files are open after opening them.Ali Saidi
2008-09-29Fix EVENTQ_DEBUG vs DEBUG_EVENTQ #define inconsistency.Steve Reinhardt
2008-09-19We're using the static keyword improperly in some cases.Nathan Binkert
2008-09-19Use the proper version of C++ headersNathan Binkert
2008-09-10style: Remove non-leading tabs everywhere they shouldn't be. Developers ↵Ali Saidi
should configure their editors to not insert tabs
2008-08-11params: Get rid of the remnants of the old style parameter configuration stuff.Nathan Binkert
2008-08-11params: Convert the CPU objects to use the auto generated param structs.Nathan Binkert
A whole bunch of stuff has been converted to use the new params stuff, but the CPU wasn't one of them. While we're at it, make some things a bit more stylish. Most of the work was done by Gabe, I just cleaned stuff up a bit more at the end.
2008-08-04Get rid of outputStream... wasn't really being usedSteve Reinhardt
(except for warn()) and new -r/-e options make it not worth fixing.
2008-08-03libm5: Create a libm5 static library for embedding m5.Nathan Binkert
This should allow m5 to be more easily embedded into other simulators. The m5 binary adds a simple main function which then calls into the m5 libarary to start the simulation. In order to make this work correctly, it was necessary embed python code directly into the library instead of the zipfile hack. This is because you can't just append the zipfile to the end of a library the way you can a binary. As a result, Python files that are part of the m5 simulator are now compile, marshalled, compressed, and then inserted into the library's data section with a certain symbol name. Additionally, a new Importer was needed to allow python to get at the embedded python code. Small additional changes include: - Get rid of the PYTHONHOME stuff since I don't think anyone ever used it, and it just confuses things. Easy enough to add back if I'm wrong. - Create a few new functions that are key to initializing and running the simulator: initSignals, initM5Python, m5Main. The original code for creating libm5 was inspired by a patch Michael Adler, though the code here was done by me.
2008-08-03syscall: Avoid a compiler warning which turns into a bug.Nathan Binkert
Simply cast the result to an int and life is good.
2008-07-24syscall: Fix TTY emulation in fstat() user-mode simulation for fd 1 (stdout).Michael Adler
The code didn't set S_IFCHR in the st_mode
2008-07-23process: separate stderr from stdoutMichael Adler
- Add the option of redirecting stderr to a file. With the old behaviour, stderr would follow stdout if stdout was to a file, but stderr went to the host stderr if stdout went to the host stdout. The new default maintains stdout and stderr going to the host. Now the two can specify different files, but they will share a file descriptor if the name of the files is the same. - Add --output and --errout options to se.py to go with --input.
2008-07-23syscalls: Add a bunch of missing system calls.Michael Adler
readlink, umask, truncate, ftruncate, mkdir, and getcwd.
2008-07-23RemoteGDB: add an m5 command line option for setting or disabling remote gdb.Michael Adler
2008-07-11m5ops: clean up the m5ops stuff.Nathan Binkert
- insert warnings for deprecated m5ops - reserve opcodes for Ali's stuff - remove code for stuff that has been deprecated forever - simplify m5op_alpha
2008-07-11style: fix indentation and formatting of the pseudo insts.Nathan Binkert
2008-07-11eventq: change the event datastructure back to LIFO.Nathan Binkert
The status quo is preferred since it is less likely that people will rely on LIFO than FIFO, and when we move to a parallelized M5, no ordering between events of the same time/priority will be guaranteed.
2008-07-11eventq: new eventq data structure. The new data structure is singlyNathan Binkert
linked list sorted by time and priority. For things of the same time and priority, a second, circularly linked list maintains the data structure. Events of the same time and priority are now inserted in FIFO order instead of LIFO order. This dramatically improves the performance of systems that schedule multiple events at the same time. The FIFO order version is not preferred to LIFO (because it may cause people to rely on it), but I'm going to commit it anyway and immediately commit the preferred LIFO version on top.
2008-07-10eventq: Clean up the Event class so that it uses fewer bytes. ThisNathan Binkert
will hopefullly allow it to fit in a cache line.
2008-07-01Remove delVirtPort() and make getVirtPort() only return cached version.Ali Saidi
2008-07-01Change everything to use the cached virtPort rather than created their own ↵Ali Saidi
each time. This appears to work, but I don't want to commit it until it gets tested a lot more. I haven't deleted the functionality in this patch that will come later, but one question is how to enforce encourage objects that call getVirtPort() to not cache the virtual port since if the CPU changes out from under them it will be worse than useless. Perhaps a null function like delVirtPort() is still useful in that case.
2008-06-21SimObject: Add in missing includes of <string> and fix minor style problem.Gabe Black
2008-06-18imported patch sim_object_params.diffNathan Binkert
2008-06-15add compile flags to m5Nathan Binkert
2008-02-27Configs: Make using Simpoints easier with some config files that support ↵Rick Strong
them easily --HG-- extra : convert_revision : 0f21829306eb68b332f03da410e6c341c8595bdd
2008-02-26TLB: Make a TLB base class and put a virtual demapPage function in it.Gabe Black
--HG-- extra : convert_revision : cc0e62a5a337fd5bf332ad33bed61c0d505a936f
2008-02-06Make the Event::description() a const functionStephen Hines
--HG-- extra : convert_revision : c7768d54d3f78685e93920069f5485083ca989c0
2008-02-05Add base ARM code to M5Stephen Hines
--HG-- extra : convert_revision : d811bf87d1a0bfc712942ecd3db1b48fc75257af
2008-01-02Additional comments and helper functions for PrintReq.Steve Reinhardt
--HG-- extra : convert_revision : 7eadf9b7db8c0289480f771271b6efe2400006d4
2008-01-02Add functional PrintReq command for memory-system debugging.Steve Reinhardt
--HG-- extra : convert_revision : 73b753e57c355b7e6873f047ddc8cb371c3136b7
2007-11-29Serialization: Fix serialization of file descriptors. Make sure openRick Strong
file descriptors are reopened and the file pointer is in the same place as when the checkpoint occured. Signed-off by: Ali Saidi --HG-- extra : convert_revision : d9d2cd388c9c02f60e1269d6845891c35f94fc47
2007-11-15put the flattenIndex stuff back in O3 AND put fatal() back in faultsKorey Sewell
--HG-- extra : convert_revision : 16fb8d7f3fbc5f8f1fc3ed34427c3d90a3125ad0
2007-11-14Get MIPS_SE actually working again by actually by fixing TLB stuff and ↵Korey Sewell
running hello world --HG-- extra : convert_revision : 0944e7661934baddca1f1a895af0b75be2d96b10
2007-11-13Add in files from merge-bare-iron, get them compiling in FS and SE modeKorey Sewell
--HG-- extra : convert_revision : d4e19afda897bc3797868b40469ce2ec7ec7d251
2007-11-02SE: fix stat64 syscall on os xAli Saidi
--HG-- extra : convert_revision : 40b62ef73d8e408cdd35b22147860f33533db57f
2007-10-31String constant const-ness changes to placate g++ 4.2.Steve Reinhardt
Also some bug fixes in MIPS ISA uncovered by g++ warnings (Python string compares don't work in C++!). --HG-- extra : convert_revision : b347cc0108f23890e9b73b3ee96059f0cea96cf6
2007-10-31Traceflags: Add SCons function to created a traceflag instead of having one ↵Ali Saidi
file with them all. --HG-- extra : convert_revision : 427f6bd8f050861ace3bc0d354a1afa5fc8319e6
2007-10-31Linux Support: Finally update vptr for new memory system.Ali Saidi
--HG-- extra : convert_revision : 8b4927431189abc12201d13428a31b746cdb7dee
2007-10-25TLB: Fix serialization issues with the tlb entries and make the page table ↵Gabe Black
store the process, not the system. --HG-- extra : convert_revision : 2421af11f62f60fb48faeee6bddadac2987df0e8
2007-10-25SE: Fix page table and system serialization, don't reinit process if this is ↵Ali Saidi
a checkpoint restore. --HG-- extra : convert_revision : 03dcf3c088e57b7abab60efe700d947117888306
2007-10-16Make the process objects use the Params structs in their constructors, and ↵Gabe Black
use a limit to check if access are on the stack. --HG-- extra : convert_revision : af40a7acf424c4c4f62d0d76db1001a714ae0474
2007-10-02Remote GDB: Turn on remote gdb in SE mode.Gabe Black
--HG-- extra : convert_revision : e17eb629071edd0dbcb09dd6a6a2220d2c83d33f
2007-09-28Rename cycles() function to ticks()Ali Saidi
--HG-- extra : convert_revision : 790eddb793d4f5ba35813d001037bd8601bd76a5
2007-09-25Loader: Only complain about TLS sections if you're using Alpha.Gabe Black
--HG-- extra : convert_revision : 125d19ad3fa1847752e455fa248ca3b2a55a2067
2007-09-13Syscall Emulation: Add stat64 syscall.Ali Saidi
Patch submitted by: Jonas Diemer [diemer (a) ida.ing.tu-bs.de] --HG-- extra : convert_revision : 07638c05bb3f79aacce49457bbb8c17d0a3a7238
2007-09-11Loader: Error if a TLS section is found in the binary.Ali Saidi
--HG-- extra : convert_revision : d763c0382f3cbcc9786510f5a8e521ec9d55eff1
2007-08-30params: Deprecate old-style constructors; update most SimObject constructors.Miles Kaufmann
SimObjects not yet updated: - Process and subclasses - BaseCPU and subclasses The SimObject(const std::string &name) constructor was removed. Subclasses that still rely on that behavior must call the parent initializer as : SimObject(makeParams(name)) --HG-- extra : convert_revision : d6faddde76e7c3361ebdbd0a7b372a40941c12ed