gem5.git
17 years agoGot rid of some DPRINTFs that were printing raw pointers.
Gabe Black [Sat, 27 Jan 2007 06:49:21 +0000 (01:49 -0500)]
Got rid of some DPRINTFs that were printing raw pointers.

--HG--
extra : convert_revision : a79f5ee225208338594e7c4ecf0a71fef941918c

17 years agoFixed up printReg so that control registers are printed by name. This is possible...
Gabe Black [Sat, 27 Jan 2007 06:47:07 +0000 (01:47 -0500)]
Fixed up printReg so that control registers are printed by name. This is possible now becauase Ctrl_Base_DepTag gets added into control register numbers.

--HG--
extra : convert_revision : d6de3be277127547cd942769cd34a54a4ec8db32

17 years agoFixed the number of integer registers. There are MaxGL+1 sets of globals, not just...
Gabe Black [Fri, 26 Jan 2007 21:38:29 +0000 (16:38 -0500)]
Fixed the number of integer registers. There are MaxGL+1 sets of globals, not just MaxGL.

--HG--
extra : convert_revision : 6fd090f112611db1e72a1f129dff03687d52930a

17 years agoFixed a warning that was breaking compilation.
Gabe Black [Thu, 25 Jan 2007 06:13:56 +0000 (01:13 -0500)]
Fixed a warning that was breaking compilation.

--HG--
extra : convert_revision : 007e83ab452849ce527fe252148e7a1dc423c850

17 years agoMerge zizzer:/bk/newmem
Gabe Black [Thu, 25 Jan 2007 00:57:36 +0000 (19:57 -0500)]
Merge zizzer:/bk/newmem
into  zower.eecs.umich.edu:/eecshome/m5/newmem

--HG--
extra : convert_revision : 2d7ae62a59b91d735bbac093f8a4ab542ea75eee

17 years agouse pstate.am to mask off PC/NPC where it needs to +be
Ali Saidi [Tue, 23 Jan 2007 20:50:03 +0000 (15:50 -0500)]
use pstate.am to mask off PC/NPC where it needs to +be
check writability of tlb cache entry before using
update tagaccess in places I forgot to
move the tlb privileged test up since it is higher priority

src/arch/sparc/faults.cc:
    save only 32 bits of PC/NPC if Pstate.am is set
src/arch/sparc/isa/decoder.isa:
    return only 32 bits of PC/NPC if Pstate.am is set
    increment cleanwin correctly
src/arch/sparc/tlb.cc:
    check writability of cache entry
    update tagaccess in a few more places
    move the privileged test up since it is higher priority
src/cpu/exetrace.cc:
    mask off upper bits of pc if pstate.am is set before comparing to legion

--HG--
extra : convert_revision : 02a51c141ee3f9a2600c28eac018ea7216f3655c

17 years agoUpdate to stats because of minor to branch mispredict accounting.
Gabe Black [Tue, 23 Jan 2007 07:44:44 +0000 (23:44 -0800)]
Update to stats because of minor to branch mispredict accounting.

--HG--
extra : convert_revision : bfb7db6bd118b623f6a38c05a962dc44456160cb

17 years agoFix for slightly garbled hand merge
Gabe Black [Tue, 23 Jan 2007 07:38:17 +0000 (23:38 -0800)]
Fix for slightly garbled hand merge

--HG--
extra : convert_revision : f9be59e94311571d91b6793b1caa1b6136ef864c

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Tue, 23 Jan 2007 06:31:48 +0000 (22:31 -0800)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  ewok.(none):/home/gblack/m5/newmemo3

src/sim/byteswap.hh:
    Hand Merge

--HG--
extra : convert_revision : 640d33ad0c416934e8a5107768e7f1dce6709ca8

17 years agoAdded remote gdb objects to each process
Gabe Black [Tue, 23 Jan 2007 06:22:09 +0000 (22:22 -0800)]
Added remote gdb objects to each process

--HG--
extra : convert_revision : 1b5c1470ffc52b2f7719e469153702dec694f9a3

17 years agofix compiling on x86/Solaris
Ali Saidi [Tue, 23 Jan 2007 02:57:01 +0000 (21:57 -0500)]
fix compiling on x86/Solaris

--HG--
extra : convert_revision : f7d21fc277dd7172c244d83fb012883dc8b67895

17 years agoclean up fault code a little bit
Ali Saidi [Tue, 23 Jan 2007 02:55:43 +0000 (21:55 -0500)]
clean up fault code a little bit
simplify and make complete some asi checks
implement all the twin asis and remove panic checks on their use
soft int is supported, so we don't need to print writes to it

src/arch/sparc/asi.cc:
    make AsiIsLittle() be all the little asis.
    Speed up AsiIsTwin() a bit
src/arch/sparc/faults.cc:
    clean up the do*Fault code.... Make it work like legion, in particular
    pstate.priv is left alone, not set to 0 like the spec says
src/arch/sparc/isa/decoder.isa:
    implement some more twin ASIs
src/arch/sparc/tlb.cc:
    All the twin asis are implemented, no need to say their not supported anymore
src/arch/sparc/ua2005.cc:
    softint is supported now, no more need to

--HG--
extra : convert_revision : aef2a1b93719235edff830a17a8ec52f23ec9f8b

17 years agowe decided to check for .interp instead of .dynamic
Ali Saidi [Tue, 23 Jan 2007 02:45:29 +0000 (21:45 -0500)]
we decided to check for .interp instead of .dynamic

--HG--
extra : convert_revision : 4f5c7f9c7653e1e9ebbd488c07426d9f944bb25f

17 years agoMerge zizzer:/bk/newmem
Ali Saidi [Mon, 22 Jan 2007 21:17:11 +0000 (16:17 -0500)]
Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : 21e1bfa49a933f3b39bd2e7bcd873428f9d01a1b

17 years agocheck if an executable is dynamic and die if it is
Ali Saidi [Mon, 22 Jan 2007 21:14:06 +0000 (16:14 -0500)]
check if an executable is dynamic and die if it is
Only implemented for ELf. Someone might want to implement it for ecoff and some point

src/base/loader/elf_object.cc:
src/base/loader/elf_object.hh:
src/base/loader/object_file.cc:
src/base/loader/object_file.hh:
    add a function to check if an executable is dynamic
src/sim/process.cc:
    check if an executable is dynamic and die if it is

--HG--
extra : convert_revision : 830b1b50b08a5abaf895ce6251bbc702c986eebf

17 years agouse writeTagAccess() function to unify writing of Tag access registers
Ali Saidi [Mon, 22 Jan 2007 21:11:49 +0000 (16:11 -0500)]
use writeTagAccess() function to unify writing of Tag access registers
Fix extracting of secondary context to shove into tag access register
properly sign extend va from 59 bits to 63 (SPARC VA hole)

--HG--
extra : convert_revision : 5d0c2b4db63338c31b2d29b4bb68f39e1d4f4c7b

17 years agomake sure that page bits of VA on tlb insert are 0
Ali Saidi [Mon, 22 Jan 2007 01:02:41 +0000 (20:02 -0500)]
make sure that page bits of VA on tlb insert are 0

--HG--
extra : convert_revision : f04af884687e9b8631e910cf62cd4a58d035c744

17 years agoadd dumb time of day device
Ali Saidi [Sun, 21 Jan 2007 23:04:40 +0000 (18:04 -0500)]
add dumb time of day device

--HG--
extra : convert_revision : 52e51ff49f7ed73065f04707ded06dc7254292c4

17 years agofix InterruptLevel code to return the correct level
Ali Saidi [Sun, 21 Jan 2007 04:12:32 +0000 (23:12 -0500)]
fix InterruptLevel code to return the correct level
(the bit positition that is set in softint)

--HG--
extra : convert_revision : ba0e1f4ec1f74aac64c3f9bb7eb1b771e17b013a

17 years agoatually set all 64 bits of the retun value to 0
Ali Saidi [Sun, 21 Jan 2007 04:10:43 +0000 (23:10 -0500)]
atually set all 64 bits of the retun value to 0

--HG--
extra : convert_revision : 77bfdf07a49d41a2392f429fdc632c1461ac504c

17 years agofix flushw implementation
Ali Saidi [Sun, 21 Jan 2007 04:09:28 +0000 (23:09 -0500)]
fix flushw implementation

--HG--
extra : convert_revision : 136b2bddc7cb70cde30e930ad3a13bd56c7162e1

17 years agoRearange tlb code to remove some duplicate
Ali Saidi [Sat, 20 Jan 2007 17:37:02 +0000 (12:37 -0500)]
Rearange tlb code to remove some duplicate
Sparc error register should return ull(0) since it's 64 bits
Fix PS1 pointer creation to use the ps1 page size rather than ps0

--HG--
extra : convert_revision : fb4ef4b90270c8db676ffe53578acfa3c244526e

17 years agoSpill and Fill handlers are actually n*4 + the start address
Ali Saidi [Sat, 20 Jan 2007 17:34:00 +0000 (12:34 -0500)]
Spill and Fill handlers are actually n*4 + the start address

--HG--
extra : convert_revision : a42f01a84e4b7ba9e6029df50e1612d410a8ba22

17 years agoMerge zed.eecs.umich.edu:/.automount/zeep/z/saidi/work/m5.newmem
Lisa Hsu [Sat, 20 Jan 2007 02:34:21 +0000 (21:34 -0500)]
Merge zed.eecs.umich.edu:/.automount/zeep/z/saidi/work/m5.newmem
into  zed.eecs.umich.edu:/z/hsul/work/sparc/x86.m5

--HG--
extra : convert_revision : 9b8567bb775ed6fcc30096f1ab4cc37058bc7376

17 years agosome hstick and hintp changes.
Lisa Hsu [Sat, 20 Jan 2007 02:33:36 +0000 (21:33 -0500)]
some hstick and hintp changes.

src/arch/sparc/interrupts.hh:
    condition hstick matches on HINTP
src/arch/sparc/miscregfile.cc:
    implement HINTP
src/arch/sparc/ua2005.cc:
    don't post interrupt unless it is enabled.

--HG--
extra : convert_revision : f71d1c1d9fd1a898ddafd5a885c3a8d5c75e8ff0

17 years agoAllow ASI_LDTX_REAL
Ali Saidi [Wed, 17 Jan 2007 23:36:12 +0000 (18:36 -0500)]
Allow ASI_LDTX_REAL

--HG--
extra : convert_revision : ba1af012ab8ac61a25058977cb7ec511eb2cf3cb

17 years agodo a linear search for matching tlb entries instead of using map because you could...
Ali Saidi [Wed, 17 Jan 2007 22:59:22 +0000 (17:59 -0500)]
do a linear search for matching tlb entries instead of using map because you could be mapping a larger page that intersects many
fix for lookup table to keep it consistant with tlb on a replace of a specific entry

--HG--
extra : convert_revision : 5a14fbcdcfc13156c63fa41ddeca474660143b32

17 years agoImplement reading writing of sync fault status register and address register
Ali Saidi [Wed, 17 Jan 2007 18:09:26 +0000 (13:09 -0500)]
Implement reading writing of sync fault status register and address register

--HG--
extra : convert_revision : c2f60e49683446bcc3afdf911da172de0422b8ad

17 years agoIn the case that we generate a fault (e.g. a tlb miss) on a microcoded instruction...
Ali Saidi [Wed, 17 Jan 2007 00:12:33 +0000 (19:12 -0500)]
In the case that we generate a fault (e.g. a tlb miss) on a microcoded instruction set curMacroStaticInst to null
This way we'll jump immediately to the handler

--HG--
extra : convert_revision : 36218d3a5c2342337e66e1229ea2219533efd41e

17 years agoDon't add symbols for loaded files to symbol table since they are pretty much meaning...
Ali Saidi [Wed, 17 Jan 2007 00:09:27 +0000 (19:09 -0500)]
Don't add symbols for loaded files to symbol table since they are pretty much meaningless with all the copying that goes on

--HG--
extra : convert_revision : 4d2c1bb72c0344d78d9c3d5958feb3de247102a0

17 years agoFix legion lock code a bit so that if we jump out of a micro coded instruction (becau...
Ali Saidi [Wed, 17 Jan 2007 00:08:21 +0000 (19:08 -0500)]
Fix legion lock code a bit so that if we jump out of a micro coded instruction (because of a fault on the first op) we don't lose sync with legion
Only print TLB if there is a tlb difference

--HG--
extra : convert_revision : f3baf667ca466d6b8efcaccd186ecec14498229d

17 years agoIn the case of ASI_P or ASI_LDTX_P set primary and skip the other checks
Ali Saidi [Wed, 17 Jan 2007 00:06:33 +0000 (19:06 -0500)]
In the case of ASI_P or ASI_LDTX_P set primary and skip the other checks

--HG--
extra : convert_revision : e7b21c56eadf4603ab03364741b00c9689492423

17 years agoModify ISA and staticInst to support a IsFirstMicroOp flag
Ali Saidi [Wed, 17 Jan 2007 00:06:05 +0000 (19:06 -0500)]
Modify ISA and staticInst to support a IsFirstMicroOp flag
Increment instruction count on first micro-op instead of last

src/arch/sparc/isa/decoder.isa:
    Implement a twin load for ASI_LDTX_P(0xe2)
src/arch/sparc/isa/formats/mem/blockmem.isa:
    set the new flag IsFirstMicroOp when needed
src/cpu/simple/atomic.cc:
    Increment instruction count on first micro-op instead of last (because if we take a fault on a micro coded instruction it should be counted twice acording to legion)
src/cpu/static_inst.hh:
    Add IsFirstMicroop flag to static insts

--HG--
extra : convert_revision : 02bea93d38c03bbafe4570665eb4c01c11caa2fc

17 years agoMerge zed.eecs.umich.edu:/z/hsul/work/sparc/ali.m5
Lisa Hsu [Thu, 11 Jan 2007 14:48:15 +0000 (09:48 -0500)]
Merge zed.eecs.umich.edu:/z/hsul/work/sparc/ali.m5
into  zed.eecs.umich.edu:/z/hsul/work/sparc/m5

src/arch/sparc/ua2005.cc:
    hand merge between ali and me.

--HG--
extra : convert_revision : 810d63fb484ab26fc30f8130ef32390ba149b267

17 years agoua2005.cc:
Lisa Hsu [Thu, 11 Jan 2007 14:41:34 +0000 (09:41 -0500)]
ua2005.cc:
formatting/indentation for case statements

src/arch/sparc/ua2005.cc:
    formatting/indentation for case statements

--HG--
extra : convert_revision : aeb7d0274d8d22db3fa56aabbb8ab8f5371a32ff

17 years agoua2005.cc:
Lisa Hsu [Thu, 11 Jan 2007 14:29:03 +0000 (09:29 -0500)]
ua2005.cc:
i SWEAR i committed this already, but apparently i didnt.  ust start using HPSTATE::hpriv, etc. to access bitfields.

src/arch/sparc/ua2005.cc:
    i SWEAR i committed this already, but apparently i didnt.  ust start using HPSTATE::hpriv, etc. to access bitfields.

--HG--
extra : convert_revision : e66fac9c63088c0fc1a62bd0fac92df305beadff

17 years agoAdd Trap Level Zero to interrupts, remove some unreachable code that I forgot to...
Lisa Hsu [Thu, 11 Jan 2007 14:18:31 +0000 (09:18 -0500)]
Add Trap Level Zero to interrupts, remove some unreachable code that I forgot to remove last time.

--HG--
extra : convert_revision : 74c4c4591be5a66c21077a6fc5f3f60b0ee9bcc1

17 years agobug fixes to get us to 145m instructions
Ali Saidi [Thu, 11 Jan 2007 03:19:13 +0000 (22:19 -0500)]
bug fixes to get us to 145m instructions

src/arch/sparc/intregfile.cc:
    some checks to make sure that the cwp and global register flattening stuff is working. These things have caught a couple of bugs so I think it would be good to keep them around at least for now
src/arch/sparc/isa/decoder.isa:
    fix smul instruction to write Y correctly
src/arch/sparc/miscregfile.cc:
    legion always returns du and dl set, so we need to emulate that for now at least

--HG--
extra : convert_revision : 82f9276340888f1e43071c69504486efdcfdb3a8

17 years agoquiet/remove some warnings
Ali Saidi [Wed, 10 Jan 2007 03:20:38 +0000 (22:20 -0500)]
quiet/remove some warnings
fix implementation of cwp manipulation
implement PS0 and PS1 IMMU asis

src/arch/sparc/miscregfile.cc:
    get rid of some warnings
    fix implementation of setting cwp to saturate cwp since it appears the os sets it to a large value to see how many there actually are
src/arch/sparc/tlb.cc:
    implement PS0 and PS1 IMMU access ASIs
src/arch/sparc/ua2005.cc:
    make warning less verbose

--HG--
extra : convert_revision : 442b65dfc41ebc32b2ef0e6b80da94eee3be9cd3

17 years agoadd memory mapped disk device
Ali Saidi [Wed, 10 Jan 2007 03:16:49 +0000 (22:16 -0500)]
add memory mapped disk device

configs/common/FSConfig.py:
src/python/m5/objects/T1000.py:
    add configuration for memory mapped disk
src/dev/sparc/SConscript:
    add memory mapped disk to sconscript

--HG--
extra : convert_revision : d8df4a455cf48000042d0ff93a274985f4dbe905

17 years agopagetable.hh:
Lisa Hsu [Tue, 9 Jan 2007 01:50:45 +0000 (20:50 -0500)]
pagetable.hh:
small fix so ALPHA_FS will build on macs
interrupts.hh:
small fix for alpha compile

src/arch/alpha/interrupts.hh:
    small fix for alpha compile
src/arch/alpha/pagetable.hh:
    small fix so ALPHA_FS will build on macs

--HG--
extra : convert_revision : 5fdbc68caa706d652b51807ac8f6bf58bcf72bdc

17 years agothe way i understand it, interrupts in m5 is a little bloated. the usage of CPU...
Lisa Hsu [Mon, 8 Jan 2007 23:18:28 +0000 (18:18 -0500)]
the way i understand it, interrupts in m5 is a little bloated.  the usage of CPU->checkInterrupts bool is inconsistent, and i think should eventually be phased out.  For now, I've just assumed that CPU->checkInterrupts() is the way to fast path a CPU if you have no interrupts by having a simple bitfield in each ISA to determine whether interrupts are pending. getInterrupts has been mostly filled in.

src/arch/sparc/interrupts.hh:
    fill in how we do interrupts on sparc a little bit.

    1) create a bitfield for interrupts, and check that in checkInterrupts() to fast path CPU.
    2) fill in getInterrupts() a little bit.

    also, update the bitfield access to be HPSTATE::hpriv, etc.
src/arch/sparc/ua2005.cc:
    1) update formatting
    2) change the way interrupts are done to use the new way to tickle the CPU.
src/cpu/base.cc:
src/cpu/base.hh:
    overload the post_interrupt function for SPARC interrupts - which are only denoted by a single int value.

--HG--
extra : convert_revision : 9074a003eff37a40dcce78f56d20f6cbcc453eb5

17 years agosome formatting changes, and update how I do bitfields for HPSTATE and PSTATE to...
Lisa Hsu [Mon, 8 Jan 2007 23:07:17 +0000 (18:07 -0500)]
some formatting changes, and update how I do bitfields for HPSTATE and PSTATE to avoid name confusion.

src/arch/sparc/faults.cc:
    1) s/Resumeable/Resumable/gc
    2) s/if(/if (/gc
    3) keep variables lowercase
    4) change the way fields are accessed - instead of hard coding bitvectors, use masks (like HPSTATE::hpriv).
src/arch/sparc/faults.hh:
    s/Resumeable/Resumable/
src/arch/sparc/isa_traits.hh:
    This is unused and unnecessary.
src/arch/sparc/miscregfile.hh:
    add bitfield masks for some important ASRs (HPSTATE, PSTATE).

--HG--
extra : convert_revision : f0ffaf48de298758685266dfb90f43aff42e0a2c

17 years agochange when legion-lock causes the simulation to die. It now happens after two consuc...
Ali Saidi [Mon, 8 Jan 2007 22:11:10 +0000 (17:11 -0500)]
change when legion-lock causes the simulation to die. It now happens after two consuctive differences since we compare stuff
at slightly different times interrupts are seen the cycle before they happen in m5 so the pc gets changed early.

--HG--
extra : convert_revision : f237363eababb2aad67e5b41670cf40be048a042

17 years agofix softint and partially implement hstick interrupts need to figure out how to do...
Ali Saidi [Mon, 8 Jan 2007 22:09:48 +0000 (17:09 -0500)]
fix softint and partially implement hstick interrupts need to figure out how to do the acutal interrupting still

src/arch/sparc/miscregfile.cc:
    fix softint and fprs in miscregfile

--HG--
extra : convert_revision : cf98bd9c172e20f328f18e07dd05f63f37f14c87

17 years agoset the softint appropriately on an timer compare interrupt
Ali Saidi [Fri, 5 Jan 2007 20:04:17 +0000 (15:04 -0500)]
set the softint appropriately on an timer compare interrupt
there is no interrupt_level_0 interrupt, so start the list at 0x40 so the adding is done correctly

src/arch/sparc/faults.cc:
    there is no interrupt_level_0 interrupt, so start the list at 0x40 so the adding is done correctly
src/arch/sparc/faults.hh:
    correct protection defines
src/arch/sparc/ua2005.cc:
    set the softint appropriately on an timer compare interrupt

--HG--
extra : convert_revision : f41c10ec78db973b3f856c70b58a17f83b60bbe2

17 years agoMerge zizzer:/bk/newmem
Ali Saidi [Fri, 5 Jan 2007 01:22:56 +0000 (20:22 -0500)]
Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : e8ac13e1222796ab362fabb9b19694682538da29

17 years agoFix stick compare to work correctly and set checkInterrupts to true at the appropriat...
Ali Saidi [Fri, 5 Jan 2007 01:22:45 +0000 (20:22 -0500)]
Fix stick compare to work correctly and set checkInterrupts to true at the appropriate time
turn warnings into dprintfs

src/arch/sparc/miscregfile.cc:
    turn dprintfn into dprintfs

--HG--
extra : convert_revision : cd313e9037c8f040d837de4c7ddbcf98534e60ad

17 years agoset __name__ in the root m5 script to __m5_main__ so we can
Nathan Binkert [Wed, 3 Jan 2007 18:16:22 +0000 (10:16 -0800)]
set __name__ in the root m5 script to __m5_main__ so we can
tell if the script is run from m5 as the m5 script

--HG--
extra : convert_revision : 06f646cbb8c82444ef345115aa49324a4d3a2c9f

17 years agoFormatting
Nathan Binkert [Wed, 3 Jan 2007 18:13:45 +0000 (10:13 -0800)]
Formatting

--HG--
extra : convert_revision : bf1eae73995f772a4343c8ebcb254818eeb5d949

17 years agoAdd 'Time' as a parameter type that can accept various
Nathan Binkert [Wed, 3 Jan 2007 18:12:55 +0000 (10:12 -0800)]
Add 'Time' as a parameter type that can accept various
formats for time (strings, datetime objects, etc.)
Advance system time to 1/1/2009
Clean up time management code a little bit

--HG--
extra : convert_revision : 28ebecc7ea6b12f4345c77a9a6b4bdf2e752c4f8

17 years agoMerge zizzer:/bk/newmem
Gabe Black [Wed, 3 Jan 2007 05:52:30 +0000 (00:52 -0500)]
Merge zizzer:/bk/newmem
into  zower.eecs.umich.edu:/eecshome/m5/newmem

--HG--
extra : convert_revision : f4a05accb8fa24d425dd818b1b7f268378180e99

17 years agoFix up previous commit to proper logic.
Kevin Lim [Sat, 30 Dec 2006 18:21:25 +0000 (13:21 -0500)]
Fix up previous commit to proper logic.

src/cpu/o3/commit_impl.hh:
    Oops, changed the logic a little bit.  Fix it up to how it used to be.

--HG--
extra : convert_revision : df7f69b0997207b611374c3c92880f3a405e88be

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Nathan Binkert [Sat, 30 Dec 2006 00:58:08 +0000 (16:58 -0800)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  iceaxe.:/Volumes/work/m5/incoming

--HG--
extra : convert_revision : dad5311afaaf40c1378017514c8b3f73852f13f5

17 years agoFormatting
Nathan Binkert [Sat, 30 Dec 2006 00:57:45 +0000 (16:57 -0800)]
Formatting

--HG--
extra : convert_revision : f5a940a8b9aaba0703781b398cf29be581907c21

17 years agoFixes to get non-delay slot ISAs (Alpha) working again, and pulling some debug output...
Gabe Black [Thu, 28 Dec 2006 19:35:31 +0000 (14:35 -0500)]
Fixes to get non-delay slot ISAs (Alpha) working again, and pulling some debug output out of ifdefs.

--HG--
extra : convert_revision : 29d0969e2d3e809aac32262ba20907e6e4ef1a42

17 years agoPhased out DelaySlotInfo.
Gabe Black [Thu, 28 Dec 2006 19:33:45 +0000 (14:33 -0500)]
Phased out DelaySlotInfo.

--HG--
extra : convert_revision : ab48db10caf38137300da63078aa9360f46b9631

17 years agoSome fixes for decode stage branches without delay slots. This will need some work...
Gabe Black [Thu, 28 Dec 2006 19:32:41 +0000 (14:32 -0500)]
Some fixes for decode stage branches without delay slots. This will need some work to be compatible with delay slots too. Also changed some direct variable uses to use an accessor function.

--HG--
extra : convert_revision : b291292600e9d3e7e4a8255daf54342b736c7e35

17 years agoMake sure the value of PC is actually updated now that the instruction target isn...
Gabe Black [Thu, 28 Dec 2006 19:29:17 +0000 (14:29 -0500)]
Make sure the value of PC is actually updated now that the instruction target isn't set explicitly.

--HG--
extra : convert_revision : 4c00a219ac1d82abea78e4e8d70f529a435fdfe2

17 years agoImplement a stub nnpc for alpha that is read only as npc+4.
Gabe Black [Thu, 28 Dec 2006 19:27:45 +0000 (14:27 -0500)]
Implement a stub nnpc for alpha that is read only as npc+4.

--HG--
extra : convert_revision : d08b740d32757fa5471c9bcde9084d59a1d8102d

17 years agoFixed NumMiscArchRegs. This is still a magic number, and it should be set automatical...
Gabe Black [Thu, 28 Dec 2006 19:23:30 +0000 (14:23 -0500)]
Fixed NumMiscArchRegs. This is still a magic number, and it should be set automatically by the miscreg enum. I need to figure out how to do that without including the whole miscregfile.hh and making header spaghetti.

--HG--
extra : convert_revision : eb640c9ef10a188b96f6a079f91abc8f67b9d38c

17 years agoMerge zizzer:/bk/newmem
Ali Saidi [Wed, 27 Dec 2006 19:38:22 +0000 (14:38 -0500)]
Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : afd4266bd494bb8f127c06985f343219ded4f637

17 years agoBug fixes in the TLB
Ali Saidi [Wed, 27 Dec 2006 19:38:07 +0000 (14:38 -0500)]
Bug fixes in the TLB
Make our replacement algorithm same as legion (although not same as the spec)
itb should be 64 entries not 48

src/arch/sparc/tlb.cc:
    Bug fixes in the TLB
    Make our replacement algorithm same as legion (although not same as the spec)
src/arch/sparc/tlb.hh:
    Make our replacement algorithm same as legion (although not same as the spec)
src/python/m5/objects/SparcTLB.py:
    itb should be 64 entries too

--HG--
extra : convert_revision : 1b5cb3597091e3cfe293e94f6f2219b1e621c35f

17 years agoCompare legion and m5 tlbs for differences
Ali Saidi [Wed, 27 Dec 2006 19:35:23 +0000 (14:35 -0500)]
Compare legion and m5 tlbs for differences
Only print faults instructions that aren't traps or faulting loads

src/cpu/exetrace.cc:
    Compare the legion and m5 tlbs and printout any differences
    Only show differences if the instruction isn't a trap and isn't a memory
    operation that changes the trap level (a fault)
src/cpu/m5legion_interface.h:
    update the m5<->legion interface to add tlb data

--HG--
extra : convert_revision : 6963b64ca1012604e6b1d3c5e0e5f5282fd0164e

17 years agoChange MemoryAccess dprintfs to print the data as well
Ali Saidi [Wed, 27 Dec 2006 19:32:26 +0000 (14:32 -0500)]
Change MemoryAccess dprintfs to print the data as well

--HG--
extra : convert_revision : 51336fffa5e51a810ad2f6eb29b91c1bfd67824b

17 years agoNo need to use NULL, just use 0
Nathan Binkert [Wed, 27 Dec 2006 18:52:25 +0000 (10:52 -0800)]
No need to use NULL, just use 0
The result of operator= cannot be an l-value

--HG--
extra : convert_revision : df97a57f466e3498bd5a29638cb9912c7f3e1bd4

17 years agoRemove some #if FULL_SYSTEMs so MP stuff works even in SE mode.
Kevin Lim [Tue, 26 Dec 2006 06:43:18 +0000 (01:43 -0500)]
Remove some #if FULL_SYSTEMs so MP stuff works even in SE mode.

--HG--
extra : convert_revision : 5c334ec806305451b3883c7fd0ed9cd695c038bc

17 years agoMake sure that all of the bits in the result are set
Nathan Binkert [Sun, 24 Dec 2006 23:15:12 +0000 (15:15 -0800)]
Make sure that all of the bits in the result are set
to some value.

--HG--
extra : convert_revision : 1f1700fd77531cbb8cfad7f04ce2b573fcdefdab

17 years agoremove some output formatting stuff that we don't use
Nathan Binkert [Sun, 24 Dec 2006 22:06:56 +0000 (14:06 -0800)]
remove some output formatting stuff that we don't use

--HG--
extra : convert_revision : 367917499d3d7aebd0a91dad28c915bc85def624

17 years agoAdd options for setting the kernel to run and the
Nathan Binkert [Sat, 23 Dec 2006 05:51:19 +0000 (21:51 -0800)]
Add options for setting the kernel to run and the
script to run

--HG--
extra : convert_revision : 32ad8e08ca74edf042d8606ca4876cbe1193e932

17 years agoFix copyright
Nathan Binkert [Fri, 22 Dec 2006 06:41:08 +0000 (22:41 -0800)]
Fix copyright

--HG--
extra : convert_revision : 8ad7824885a5c4da80175c47ba5288aab55b06ca

17 years agoExpose the C++ event queue to python via the python function
Nathan Binkert [Fri, 22 Dec 2006 06:38:50 +0000 (22:38 -0800)]
Expose the C++ event queue to python via the python function
m5.internal.event.create().  It takes a python object and a
Tick and calls process() when the Tick occurs.

--HG--
extra : convert_revision : 5e4c9728982b206163ff51e6850a1497d85ad7a3

17 years agostyle
Nathan Binkert [Fri, 22 Dec 2006 06:34:19 +0000 (22:34 -0800)]
style

--HG--
extra : convert_revision : 6bbaaa88a608081eebf706ff30293f38729415aa

17 years agoStub for SE mode gdb support for MIPS.
Gabe Black [Fri, 22 Dec 2006 01:42:40 +0000 (20:42 -0500)]
Stub for SE mode gdb support for MIPS.

--HG--
extra : convert_revision : 2166b511c3615f7a2355f058a624e9ffe8259e65

17 years agoCreate a wrapper function to more easily add swig stuff to the build
Nathan Binkert [Thu, 21 Dec 2006 23:58:38 +0000 (15:58 -0800)]
Create a wrapper function to more easily add swig stuff to the build

--HG--
extra : convert_revision : 3aaf540a9e314a88a8945579398f0d79aa85d5cf

17 years agomove the swig initialization calls from src/sim/main.cc to
Nathan Binkert [Thu, 21 Dec 2006 23:49:16 +0000 (15:49 -0800)]
move the swig initialization calls from src/sim/main.cc to
src/python/swig/init.cc so that it's not as easy to forget
about it when you add a new swig module.

--HG--
extra : convert_revision : 5cc4ec0838e636aa761901effb8986de58d23e03

17 years agodon't use (*activeThreads).begin(), use activeThreads->blah().
Nathan Binkert [Thu, 21 Dec 2006 06:20:11 +0000 (22:20 -0800)]
don't use (*activeThreads).begin(), use activeThreads->blah().
Also don't call (*activeThreads).end() over and over.  Just
call activeThreads->end() once and save the result.
Make sure we always check that there are elements in the list
before we grab the first one.

--HG--
extra : convert_revision : d769d8ed52da99532d57a9bbc93e92ddf22b7e58

17 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Nathan Binkert [Thu, 21 Dec 2006 05:46:39 +0000 (21:46 -0800)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  iceaxe.:/Volumes/work/m5/incoming

--HG--
extra : convert_revision : c1724538f27091e16ca495c8fdf2df06f55f7668

17 years ago<scold> Make sure that variables are always initalized! </scold>
Nathan Binkert [Thu, 21 Dec 2006 05:46:16 +0000 (21:46 -0800)]
<scold> Make sure that variables are always initalized! </scold>

--HG--
extra : convert_revision : 1e946d9b1e1def36f9b8a73986dabf1b77096327

17 years agoFixes to get MIPS_SE to compile.
Gabe Black [Thu, 21 Dec 2006 03:14:40 +0000 (22:14 -0500)]
Fixes to get MIPS_SE to compile.

--HG--
extra : convert_revision : d173f212841341e436e9a38dcd3006d27886c1b8

17 years agoFixes to get ALPHA_FS and ALPHA_SE to compile again.
Gabe Black [Thu, 21 Dec 2006 01:44:06 +0000 (20:44 -0500)]
Fixes to get ALPHA_FS and ALPHA_SE to compile again.

--HG--
extra : convert_revision : 6e0913903d4cbda6f31bec3b5d725b9c08dc1419

17 years agoInitial work to make remote gdb available in SE mode. This is completely untested.
Gabe Black [Wed, 20 Dec 2006 23:39:40 +0000 (18:39 -0500)]
Initial work to make remote gdb available in SE mode. This is completely untested.

--HG--
extra : convert_revision : 3ad9a3368961d5e9e71f702da84ffe293fe8adc8

17 years agoMake sure the "stack_min" variable is page aligned.
Gabe Black [Wed, 20 Dec 2006 20:44:37 +0000 (15:44 -0500)]
Make sure the "stack_min" variable is page aligned.

--HG--
extra : convert_revision : e78c53778de83bdb2eca13d98d418b17b386ab29

17 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
Steve Reinhardt [Tue, 19 Dec 2006 07:11:48 +0000 (02:11 -0500)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
into  zizzer.eecs.umich.edu:/z/stever/bk/newmem-head

--HG--
extra : convert_revision : 4bd4f8bb8e48e09562a2d9ae6eb7d061be973c5e

17 years agoMerge zizzer:/bk/newmem
Ali Saidi [Tue, 19 Dec 2006 07:11:47 +0000 (02:11 -0500)]
Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem

--HG--
extra : convert_revision : fa8ce7149973245a73bb562b9378db13be647a14

17 years agofix twinx loads a little bit
Ali Saidi [Tue, 19 Dec 2006 07:11:33 +0000 (02:11 -0500)]
fix twinx loads a little bit
bugfixes and demap implementation in tlb
ignore some more differencs for one cycle

src/arch/sparc/isa/formats/mem/blockmem.isa:
    twinx has 2 micro-ops
src/arch/sparc/isa/formats/mem/util.isa:
    fix the fault check for twinx
src/arch/sparc/tlb.cc:
    tlb bugfixes and write demapping code
src/cpu/exetrace.cc:
    don't halt on a couple more instruction (ldx, stx) when things differ
    beacuse of the way tlb faults are handled in legion.

--HG--
extra : convert_revision : 1e156dead6ebd58b257213625ed63c3793ef4b71

17 years agoStreamline Cache/Tags interface: get rid of redundant functions,
Steve Reinhardt [Tue, 19 Dec 2006 07:07:52 +0000 (23:07 -0800)]
Streamline Cache/Tags interface: get rid of redundant functions,
don't regenerate address from block in cache so that tags can
turn around and use address to look up block again.

--HG--
extra : convert_revision : 171018aa6e331d98399c4e5ef24e173c95eaca28

17 years agoNo need to template prefetcher on cache TagStore type.
Steve Reinhardt [Tue, 19 Dec 2006 05:53:06 +0000 (21:53 -0800)]
No need to template prefetcher on cache TagStore type.

--HG--
rename : src/mem/cache/prefetch/tagged_prefetcher_impl.hh => src/mem/cache/prefetch/tagged_prefetcher.cc
extra : convert_revision : 56c0b51e424a3a6590332dba4866e69a1ad19598

17 years agoGet rid of generic CacheTags object (fold back into Cache).
Steve Reinhardt [Tue, 19 Dec 2006 04:47:12 +0000 (20:47 -0800)]
Get rid of generic CacheTags object (fold back into Cache).

--HG--
extra : convert_revision : 8769bd8cc358ab3cbbdbbcd909b2e0f1515e09da

17 years agoFix a place where the wrong width parameter was used, and set the nextNPC correctly...
Gabe Black [Mon, 18 Dec 2006 23:20:13 +0000 (18:20 -0500)]
Fix a place where the wrong width parameter was used, and set the nextNPC correctly on memory squashes.

--HG--
extra : convert_revision : 7914a48ea953607c48f93984e3b043098f0d7c62

17 years agoMake sure you only handle branch delay slots specially when there actually was a...
Gabe Black [Mon, 18 Dec 2006 23:18:37 +0000 (18:18 -0500)]
Make sure you only handle branch delay slots specially when there actually was a branch.

--HG--
extra : convert_revision : ea6d33b1b9c2ba5c24225af4b10a9bd25558f1dd

17 years agoFixing the extended twin format to go with the new isa parser interface.
Gabe Black [Mon, 18 Dec 2006 23:17:30 +0000 (18:17 -0500)]
Fixing the extended twin format to go with the new isa parser interface.

--HG--
extra : convert_revision : f41183cfa011b21e7ab8cbcdef0ac1d464692362

17 years agoFix unittest compiles
Nathan Binkert [Mon, 18 Dec 2006 22:08:42 +0000 (14:08 -0800)]
Fix unittest compiles

--HG--
extra : convert_revision : 1163437081e1f1eab3f4512d04317dc94a673b9b

17 years agocast chars to int when we want to print integers so we get a number
Nathan Binkert [Mon, 18 Dec 2006 22:07:52 +0000 (14:07 -0800)]
cast chars to int when we want to print integers so we get a number
instead of a character

--HG--
extra : convert_revision : 7bfa88ba23ad057b751eb01a80416d9f72cfe81a

17 years agoMerge zizzer.eecs.umich.edu:/.automount/zower/eecshome/m5/newmem
Gabe Black [Mon, 18 Dec 2006 17:19:30 +0000 (12:19 -0500)]
Merge zizzer.eecs.umich.edu:/.automount/zower/eecshome/m5/newmem
into  zizzer.eecs.umich.edu:/z/m5/Bitkeeper/sparco3

--HG--
extra : convert_revision : f17800685609d8353ec14676f45fbb123fc4e6c3

17 years agomove the twinx loads to the correct opcode and add asis 0x24 and 0x27
Ali Saidi [Mon, 18 Dec 2006 08:37:52 +0000 (03:37 -0500)]
move the twinx loads to the correct opcode and add asis 0x24 and 0x27
Make the TLB ok to translate QUAD_LDD

src/arch/sparc/isa/decoder.isa:
    move the twinx loads to the correct opcode.
src/arch/sparc/tlb.cc:
    Make QUAD_LDD asi ok to execute

--HG--
extra : convert_revision : 2a44d1c9e4edb627079fc05776c28d918c8508ce

17 years agoMinor cleanup of new snippet/subst code.
Steve Reinhardt [Mon, 18 Dec 2006 07:09:36 +0000 (23:09 -0800)]
Minor cleanup of new snippet/subst code.

--HG--
extra : convert_revision : d81e0d1356f3433e8467e407d66d4afb95614748

17 years agoConvert Alpha (and finish converting MIPS) to new
Steve Reinhardt [Mon, 18 Dec 2006 03:27:50 +0000 (19:27 -0800)]
Convert Alpha (and finish converting MIPS) to new
InstObjParam interface.

src/arch/alpha/isa/branch.isa:
src/arch/alpha/isa/fp.isa:
src/arch/alpha/isa/int.isa:
src/arch/alpha/isa/main.isa:
src/arch/alpha/isa/mem.isa:
src/arch/alpha/isa/pal.isa:
src/arch/mips/isa/formats/mem.isa:
src/arch/mips/isa/formats/util.isa:
    Get rid of CodeBlock calls to adapt to new InstObjParam interface.
src/arch/isa_parser.py:
    Check template code for operands (in addition to snippets).
src/cpu/o3/alpha/dyn_inst.hh:
    Add (read|write)MiscRegOperand calls to Alpha DynInst.

--HG--
extra : convert_revision : 332caf1bee19b014cb62c1ed9e793e793334c8ee

17 years agoNate's utility for compiling m5
Nathan Binkert [Mon, 18 Dec 2006 02:58:50 +0000 (18:58 -0800)]
Nate's utility for compiling m5

--HG--
extra : convert_revision : 84b21f667736dfe07891323dcc810437ccb3c7c0

17 years agoUtilities for doing a format check for some elements of proper
Nathan Binkert [Mon, 18 Dec 2006 02:58:05 +0000 (18:58 -0800)]
Utilities for doing a format check for some elements of proper
m5 style and fixing whitespace.  For whitespace, any tabs in
leading whitespace on a line are converted to spaces, and any
trailing whitespace is removed.

--HG--
extra : convert_revision : d0591663c028a388635fc71c6c1d31f700748cf6