summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-03-27First Pass At Cmp/Swap in cachesRon Dreslinski
--HG-- extra : convert_revision : 211bfb7c6a59e9e120dae1600d4754baaf231332
2007-03-12Merge zizzer:/bk/newmemRon Dreslinski
into zazzer.eecs.umich.edu:/z/rdreslin/m5bk/head --HG-- extra : convert_revision : 7d7380a6565cff32470bddadb0158fad897a5cf5
2007-03-12remove the extern C around gdb helper functions. It's need needed for any ↵Ali Saidi
new version of gdb to work and it causes at least mine to segfault --HG-- extra : convert_revision : 5e4c2ec753372fd0569734d3ddb0c8690409ca16
2007-03-12Clean up more memory leaksRon Dreslinski
--HG-- extra : convert_revision : 32d1b23200752fe5fcdcbafb586f50bbe6db3bf3
2007-03-12Merge zizzer:/bk/newmemRon Dreslinski
into zazzer.eecs.umich.edu:/z/rdreslin/m5bk/head --HG-- extra : convert_revision : 8651b2878853c5a6cb15f60ab92cf39d3bc30a07
2007-03-12Fix some of the memory leaks related to writebacksRon Dreslinski
src/cpu/memtest/memtest.cc: Add the [] to a delete to make it work correctly src/mem/cache/cache_impl.hh: Fix one of the memory leaks --HG-- extra : convert_revision : 64c7465c68a084efe38a62419205518b24d852a7
2007-03-12Get rid of those pesky valgrind warnings, Conditional jump or move depends ↵Ali Saidi
on uninitialised value(s), in the stats package --HG-- extra : convert_revision : d3a508fc98df4eb8160a211a306be6ab241a4ce8
2007-03-12Merge zizzer:/bk/newmemAli Saidi
into zeep.pool:/z/saidi/work/m5.newmem --HG-- extra : convert_revision : c6fbe09348b606b94bbb35f911dea94353f076f9
2007-03-12move hver code to ua2005.ccAli Saidi
src/arch/sparc/miscregfile.cc: this code should be in readFSreg src/arch/sparc/ua2005.cc: move code froh miscregfile to ua2005.cc --HG-- extra : convert_revision : fa450b04ad73ab6f6e25d66fa0368054263f09f9
2007-03-10Rework the way SCons recurses into subdirectories, making itNathan Binkert
automatic. The point is that now a subdirectory can be added to the build process just by creating a SConscript file in it. The process has two passes. On the first pass, all subdirs of the root of the tree are searched for SConsopts files. These files contain any command line options that ought to be added for a particular subdirectory. On the second pass, all subdirs of the src directory are searched for SConscript files. These files describe how to build any given subdirectory. I have added a Source() function. Any file (relative to the directory in which the SConscript resides) passed to that function is added to the build. Clean up everything to take advantage of Source(). function is added to the list of files to be built. --HG-- extra : convert_revision : 103f6b490d2eb224436688c89cdc015211c4fd30
2007-03-10Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace-test --HG-- extra : convert_revision : df36efd84d938e0e402648b85b3732ed786aaa29
2007-03-10If you can't get rid of the files you want to make sure are gone, assume ↵Gabe Black
they're already gone. Print a warning and move on. --HG-- extra : convert_revision : 192740b1e1a7a30222c4e79c7e7a5770e682f014
2007-03-10Compilation fixGabe Black
--HG-- extra : convert_revision : 8bfa5e9408d1ead0197aab5078c248876f90ea7a
2007-03-10I thought this code got deleted, but since it hasn't I've moved it to a ↵Ali Saidi
place where it doesn't access freed memory. --HG-- extra : convert_revision : 4d9023f6193004a3e9cbeebd3721bccb50b2aab0
2007-03-09Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace --HG-- extra : convert_revision : 82a956ffc1bedb2c0d05c4ea3469f843f559a475
2007-03-09Use the TheISA namespace in case we're coming from a file that doesn't do ↵Gabe Black
that for us. This should be contained in the scope of the function and not leak elsewhere. --HG-- extra : convert_revision : 0bb0e1457011505a99a871c443bc45f4365e9c7e
2007-03-09Split the syscall table, SPARC specific syscall implementations, and the 32 ↵Gabe Black
bit syscall table into it's own file. Corrected problems with the stat structure. These should be tested on 64 bit x86 and SPARC machines. --HG-- extra : convert_revision : 5d9fe19e031b92e111069c6b89c3dbeb29975b8a
2007-03-09Merge zizzer:/bk/newmemAli Saidi
into zeep.pool:/z/saidi/work/m5.newmem --HG-- extra : convert_revision : 5804298706ac0f04fbe491326af71ce9ab74425a
2007-03-09implement ipi stufff for SPARCAli Saidi
src/arch/alpha/utility.hh: src/arch/mips/utility.hh: src/arch/sparc/utility.hh: src/arch/x86/utility.hh: add hook for system to startup the cpu or not... in the case of FS sparc, only the first cpu would get spunup.. the rest sit in an idle state until they get an ipi src/arch/sparc/isa/decoder.isa: handle writable bits of strandstatus register in miscregfile src/arch/sparc/miscregfile.hh: some constants for the strand status register src/arch/sparc/ua2005.cc: properly implement the strand status register src/dev/sparc/iob.cc: implement ipi generation properly src/sim/system.cc: call into the ISA to start the CPU (or not) --HG-- extra : convert_revision : 0003b2032337d8a031a9fc044da726dbb2a9e36f
2007-03-09fix regress... SPARC_FS may not be in the builds so check for itAli Saidi
--HG-- extra : convert_revision : 16710e4c44bd34496ed31ae8e954544b06e92589
2007-03-09Two fixes:Kevin Lim
1. Make sure connectMemPorts() only gets called when the CPU's peer gets changed. This is done by making setPeer() virtual, and overriding it in the CPU's ports. When it gets called on a CPU's port (dcache specifically), it calls the normal setPeer() function, and also connectMemPorts(). 2. Consolidate redundant code that handles switching in a CPU. src/cpu/base.cc: Move common code of switching over peers to base CPU. src/cpu/base.hh: Move common code of switching over peers to BaseCPU. src/cpu/o3/cpu.cc: Add in function that updates thread context's ports. Also use updated function to takeOverFrom() in BaseCPU. This gets rid of some repeated code. src/cpu/o3/cpu.hh: Include function to update thread context's memory ports. src/cpu/o3/lsq.hh: Add function to dcache port that will update the memory ports upon getting a new peer. Also include a function that will tell the CPU to update those memory ports. src/cpu/o3/lsq_impl.hh: Add function that will update the memory ports upon getting a new peer. src/cpu/simple/atomic.cc: src/cpu/simple/timing.cc: Add function that will update thread context's memory ports upon getting a new peer. Also use the new BaseCPU's take over from function. src/cpu/simple/atomic.hh: Add in function (and dcache port) that will allow the dcache to update memory ports when it gets assigned a new peer. src/cpu/simple/timing.hh: Add function that will update thread context's memory ports upon getting a new peer. src/mem/port.hh: Make setPeer virtual so that other classes can override it. --HG-- extra : convert_revision : 2050f1241dd2e83875d281cfc5ad5c6c8705fdaf
2007-03-08Panic if any CMT registers are accessedAli Saidi
src/arch/sparc/asi.cc: src/arch/sparc/asi.hh: add CMT ASI registers src/arch/sparc/tlb.cc: Panic if any of the CMT registers are being accessed --HG-- extra : convert_revision : b9a94281e2074a576ac21d042b756950d509e758
2007-03-08stop m5 from leaking like a sieveAli Saidi
don't create a new physPort/virtPort every time activateContext() is called add the ability to tell a memory object to delete it's reference to a port and a method to have a port call deletePortRefs() on the port owner as well as delete it's peer still need to stop calling connectMemoPorts() every time activateContext() is called or we'll overflow the bus id and panic src/cpu/thread_state.cc: if we hav ea (phys|virt)Port don't create a new on, have it delete it's peer and then reuse it src/mem/bus.cc: src/mem/bus.hh: add ability to delete a port by usig a hash_map instead of an array to store port ids add a function to do deleting src/mem/cache/cache.hh: src/mem/cache/cache_impl.hh: src/mem/mem_object.cc: src/mem/mem_object.hh: adda function to delete port references from a memory object src/mem/port.cc: src/mem/port.hh: add a removeConn function that tell the owener to delete any references to the port and then deletes its peer --HG-- extra : convert_revision : 272f0c8f80e1cf1ab1750d8be5a6c9aa110b06a4
2007-03-08Fixed an off-by-one error.Gabe Black
--HG-- extra : convert_revision : 498fef18cf339cabc2c00e4758bc8a0da857daca
2007-03-08Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace --HG-- extra : convert_revision : becba8537b11ee4ef33bbf129bef2ca047403df5
2007-03-08Fix up the SPARC initial stack frame to match an actual 32 bit process.Gabe Black
--HG-- extra : convert_revision : 3995744c3bf955a370b18f6e88de1bfb82f79843
2007-03-07I missed a couple of WithEffects, this should do itAli Saidi
--HG-- extra : convert_revision : 19fce78a19b27b7ccb5e3653a64b46e6d5292915
2007-03-07fix compiling of FS after Gabe's last compileAli Saidi
--HG-- extra : convert_revision : a93fa5ad61aa2b8c18bf6c513b617f3425ffb220
2007-03-07Move the magic m5 PageTableFault into sim/faults.[hh,cc] since it's the same ↵Gabe Black
across all architectures. --HG-- extra : convert_revision : 18d441eb7ac44df4df41771bfe3dec69f7fa70ec
2007-03-07Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem --HG-- extra : convert_revision : d764fe37c71269a04fcede6cbf30e24262447e89
2007-03-07Merge zizzer:/bk/newmemAli Saidi
into zeep.pool:/tmp/newmem --HG-- extra : convert_revision : f078a05729b5fe464a06a58bc4adcb374f560572
2007-03-07*MiscReg->*MiscRegNoEffect, *MiscRegWithEffect->*MiscRegAli Saidi
--HG-- extra : convert_revision : f799b65f1b2a6bf43605e6870b0f39b473dc492b
2007-03-07Add setData functions for the new Twin??_t types.Gabe Black
--HG-- extra : convert_revision : 6f4e08e76eb4a95eb08b11632f6e33ba458723b6
2007-03-07Add some constructors and an output operator to the Twin??_t types so that ↵Gabe Black
o3 SPARC will compile again. --HG-- extra : convert_revision : af987aaeac87ee92a3b55cf0839d994cf7dea1af
2007-03-07Make byteswap work correctly on Twin??_t types.Gabe Black
--HG-- extra : convert_revision : a8a14078d62c24e480ffa69591edfc775d1d76cc
2007-03-07Merge zizzer:/bk/newmemAli Saidi
into udhcp-macvpn-108.public.engin.umich.edu:/Users/ali/work/m5.newmem --HG-- extra : convert_revision : c6b11f535cca7fd46f1a3cea3b5a966e8fa80347
2007-03-07If we're running the quick tests, remove the SPARC_FS build since we don't ↵Ali Saidi
have any quick SPARC_FS tests at the moment --HG-- extra : convert_revision : 4505f1600cae5d049560f3b397541e9a9dea0420
2007-03-06CleanupNathan Binkert
--HG-- extra : convert_revision : 31f1b0f760a6eb861652440f9d42aaf123ef4833
2007-03-06Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86 --HG-- extra : convert_revision : 0822fbcc377781b53d2de9ba40ab9d985ccbc039
2007-03-06Merge zizzer:/bk/newmemAli Saidi
into zeep.pool:/z/saidi/work/m5.newmem --HG-- extra : convert_revision : fa1e361fcae10fe7a91118007faeeabe3fecba2a
2007-03-06Add regression for SPARC "hard" instruction test. Only runs in simple-atomic ↵Ali Saidi
right now since we don't have cache support for the atomic instructions. --HG-- extra : convert_revision : b7013e6963885dfe2b4630ac175e24ddad6d42a6
2007-03-06Python parameters types need analogous C++ typesNathan Binkert
--HG-- extra : convert_revision : d068dfec69b28d48fc299a4108e165decfaaace7
2007-03-06Move all of the parameters of the Root SimObject so they areNathan Binkert
directly configured by python. Move stuff from root.(cc|hh) to core.(cc|hh) since it really belogs there now. In the process, simplify how ticks are used in the python code. --HG-- extra : convert_revision : cf82ee1ea20f9343924f30bacc2a38d4edee8df3
2007-03-06Get X86 to load an elf and start a process for it.Gabe Black
src/arch/x86/SConscript: Add in process source files. src/arch/x86/isa_traits.hh: Replace magic constant numbers with the x86 register names. src/arch/x86/miscregfile.cc: Make clear the miscreg file succeed. There aren't any misc regs, so clearing them is very easy. src/arch/x86/process.hh: An X86 process class. src/base/loader/elf_object.cc: Add in code to recognize x86 as an architecture. src/base/traceflags.py: Add an x86 traceflag src/sim/process.cc: Add in code to create an x86 process. src/arch/x86/intregs.hh: A file which declares names for the integer register indices. src/arch/x86/linux/linux.cc: src/arch/x86/linux/linux.hh: A very simple translation of SPARC's linux.cc and linux.hh. It's probably not correct for x86, but it might not be correct for SPARC either. src/arch/x86/linux/process.cc: src/arch/x86/linux/process.hh: An x86 linux process. The syscall table is split out into it's own file. src/arch/x86/linux/syscalls.cc: The x86 Linux syscall table and the uname function. src/arch/x86/process.cc: The x86 process base class. tests/test-progs/hello/bin/x86/linux/hello: An x86 hello world test binary. --HG-- extra : convert_revision : f22919e010c07aeaf5757dca054d9877a537fd08
2007-03-05Python atexit handlers are called in reverse order.Nathan Binkert
Fix things so the stats dump happens last. --HG-- extra : convert_revision : ea842dbcbb77dd1c715c4e5b57d2470e558c4265
2007-03-05Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into zower.eecs.umich.edu:/home/gblack/m5/newmem-statetrace --HG-- extra : convert_revision : 0959fb162253ff1eed8da0a990f58897322f0e1f
2007-03-05Fixing statetrace to work with 32 bit SPARC processes, as well as rewritting ↵Gabe Black
it's single stepping code. --HG-- extra : convert_revision : 69b1668a850519ab98b02c525ec41ff727eb6036
2007-03-05Fill out a stub version of the vtophys header file.Gabe Black
--HG-- extra : convert_revision : 2c10a80a2f73207539e3f98b4a3b864d431f5035
2007-03-05Add in NumGDBRegs so the constructor to the base class can get all it's ↵Gabe Black
arguments. --HG-- extra : convert_revision : fcec1ad134b53a419a952e556ed75cb1559a1127
2007-03-05Reorganize the floating point register file a little.Gabe Black
--HG-- extra : convert_revision : 643c147b77e931d49ac559681d4bbda737f6e1c7