Age | Commit message (Collapse) | Author |
|
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
|
|
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
|
|
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
|
|
--HG--
extra : convert_revision : 19fce78a19b27b7ccb5e3653a64b46e6d5292915
|
|
--HG--
extra : convert_revision : a93fa5ad61aa2b8c18bf6c513b617f3425ffb220
|
|
across all architectures.
--HG--
extra : convert_revision : 18d441eb7ac44df4df41771bfe3dec69f7fa70ec
|
|
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem
--HG--
extra : convert_revision : d764fe37c71269a04fcede6cbf30e24262447e89
|
|
into zeep.pool:/tmp/newmem
--HG--
extra : convert_revision : f078a05729b5fe464a06a58bc4adcb374f560572
|
|
--HG--
extra : convert_revision : f799b65f1b2a6bf43605e6870b0f39b473dc492b
|
|
--HG--
extra : convert_revision : 6f4e08e76eb4a95eb08b11632f6e33ba458723b6
|
|
o3 SPARC will compile again.
--HG--
extra : convert_revision : af987aaeac87ee92a3b55cf0839d994cf7dea1af
|
|
--HG--
extra : convert_revision : a8a14078d62c24e480ffa69591edfc775d1d76cc
|
|
--HG--
extra : convert_revision : 31f1b0f760a6eb861652440f9d42aaf123ef4833
|
|
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision : 0822fbcc377781b53d2de9ba40ab9d985ccbc039
|
|
--HG--
extra : convert_revision : d068dfec69b28d48fc299a4108e165decfaaace7
|
|
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
|
|
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
|
|
Fix things so the stats dump happens last.
--HG--
extra : convert_revision : ea842dbcbb77dd1c715c4e5b57d2470e558c4265
|
|
--HG--
extra : convert_revision : 2c10a80a2f73207539e3f98b4a3b864d431f5035
|
|
arguments.
--HG--
extra : convert_revision : fcec1ad134b53a419a952e556ed75cb1559a1127
|
|
--HG--
extra : convert_revision : 643c147b77e931d49ac559681d4bbda737f6e1c7
|
|
--HG--
extra : convert_revision : 94f3f19eb91b7f54918640b7605008eb1fe75fc7
|
|
--HG--
extra : convert_revision : a39a158fec4560f6eb7a6987592c473677c0b1ba
|
|
--HG--
extra : convert_revision : 3bdbc415a73c6bb4d723f68714a96c9f922ba5e6
|
|
--HG--
extra : convert_revision : bb799dcea58b51d6e1d3d744581ea48c5c1490fe
|
|
--HG--
extra : convert_revision : bc8c5e78aac0e9033d6cbc756d8092369ac29072
|
|
--HG--
extra : convert_revision : 9d00209e5c0ae8aa5ac37f9558627ee212a72c9b
|
|
--HG--
extra : convert_revision : 5570a595b9adbe9c35f9b4f8dd3b50533b5beb97
|
|
--HG--
extra : convert_revision : 3eccbf699bb62139a06a9b249e56bd205bc316ed
|
|
--HG--
extra : convert_revision : dd6b4d14070a2e99c179c5f780c9935847da8eda
|
|
The page table fault should be moved into sim/faults.hh because it's a "fake" m5 fault for se mode and shouldn't vary between architectures.
--HG--
extra : convert_revision : cafe25befd64f83a424c1a09f5e62a16df5408ad
|
|
--HG--
extra : convert_revision : 2317e9bb0bcf8010ab5d02019f7a14eeb7b1459c
|
|
--HG--
extra : convert_revision : c0170eae8aeae130f81618ae49a60f879c2b523f
|
|
--HG--
extra : convert_revision : 712480fef36bf7a34c2c0b8d19dd82689eb78a1d
|
|
--HG--
extra : convert_revision : f0a2cdf7d669834b90444fc390b0aceede474737
|
|
what this is for, and it probably doesn't work on anything but Alpha.
--HG--
extra : convert_revision : 9bc3833628d31799a7b578c450dac096a19aead3
|
|
--HG--
extra : convert_revision : 6289181697142f672548a4d4cf6e010171cb98e1
|
|
--HG--
extra : convert_revision : 1e8ef87ddb28873045a08bd104afc8ce129c4299
|
|
--HG--
extra : convert_revision : 9d572651fc1722b15ae7dbc59c108d680c911f04
|
|
--HG--
extra : convert_revision : 19ff30d969a46adbd256f674582a9e7d398b56ed
|
|
--HG--
extra : convert_revision : 15a1b49ff9e0a1a15bd2500bec9ec9bc95ee5898
|
|
--HG--
extra : convert_revision : 62583e5a5647913fb36e1aae265e8ac52a165829
|
|
Alpha does.
--HG--
extra : convert_revision : b75dbdd95ceb4ec71275588a5cf8e6b614cf4539
|
|
--HG--
extra : convert_revision : c00a077dd7ae8f6b48c6939034be244bcf48d715
|
|
--HG--
extra : convert_revision : bcf448aedd832022527cc972f7a1f0433987c564
|
|
--HG--
extra : convert_revision : abfcf4005ec636b1e6c085515b63c1d8e69e3370
|
|
object?
--HG--
extra : convert_revision : 51757435bb0b20132f3ec5782db31382bb2cca18
|
|
from some other include.
--HG--
extra : convert_revision : adbd4899508e3d30959a504a48402f01d1187099
|
|
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision : b585cea2221377eb2fceea8976c46a17c0034f51
|
|
--HG--
extra : convert_revision : 099e380395fc1fdaef993b019d3d4e596e8076c2
|