49a9378718
make hver match legion
Ali Saidi
2007-02-12 13:58:03 -05:00
b9005f3562
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-02-12 13:22:36 -05:00
b5a4d95811
rename store conditional stuff as extra data so it can be used for conditional swaps as well Add support for a twin 64 bit int load Add Memory barrier and write barrier flags as appropriate Make atomic memory ops atomic
Ali Saidi
2007-02-12 13:06:30 -05:00
ad17b32651
Merge zizzer.eecs.umich.edu:/bk/newmem into vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt
2007-02-12 09:27:32 -08:00
f78bc80bd7
Move store conditional result checking from SimpleAtomicCpu write function into Alpha ISA description. write now just generically returns a result value if the res pointer is non-null (which means we can only provide a res pointer if we expect a valid result value).
Steve Reinhardt
2007-02-12 09:26:47 -08:00
88c1c20dc3
Get rid of the FetchTrace since it doesn't appear to be used anywhere at all.
Nathan Binkert
2007-02-12 06:24:39 -08:00
184decd196
Clean up tracing stuff more, get rid of the trace log since its not all that useful. Fix a few bugs with python/C++ integration.
Nathan Binkert
2007-02-10 15:14:50 -08:00
63a8240059
Get rid of the Random context and add the support directly to python. We don't currently use randomness much, so I didn't go too far, but in the future, we may want to actually expose the random number values themselves to python. For now, I'll at least let you seed it. While we're at it, clean up a clearly bad way for generating random doubles.
Nathan Binkert
2007-02-09 16:44:02 -08:00
81c5d0e3d8
Clean up from my last commit to the trace stuff.
Nathan Binkert
2007-02-09 16:30:06 -08:00
a24ccc1ef2
Get rid of the Trace ParamContext and give python direct access to enabling/disabling tracing. Command line is unchanged except for the removal of --trace-cycle since it's not so clear what that means.
Nathan Binkert
2007-02-09 14:39:56 -08:00
27c2138882
Use c99 variadic macros for non gnu compilers
Nathan Binkert
2007-02-08 20:59:11 -08:00
1f834b569c
Get rid of the gross operator,()/variadic macro hack that made ccprintf and friends work, turn it into a normal function (though it still has a slightly strange implementation.) All instances of variadic macros are not yet removed, but I know how, and it will happen.
Nathan Binkert
2007-02-07 22:11:30 -08:00
af698e8b05
Quick program to time how long ccprintf takes to write to a stream compared to sprintf to a buffer.
Nathan Binkert
2007-02-07 22:02:09 -08:00
2ec4a6c071
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem into zizzer.eecs.umich.edu:/z/stever/bk/newmem-head
Steve Reinhardt
2007-02-07 22:33:44 -05:00
fdaff2b108
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-02-07 16:43:47 -05:00
6b37bb6710
Merge zizzer.eecs.umich.edu:/bk/newmem into vm1.(none):/home/stever/bk/newmem-head
Steve Reinhardt
2007-02-07 10:55:14 -08:00
997fc505a8
Make memory commands dense again to avoid cache stat table explosion. Created MemCmd class to wrap enum and provide handy methods to check attributes, convert to string/int, etc.
Steve Reinhardt
2007-02-07 10:53:37 -08:00
23d970e6b9
More DPRINTF cleanup.
Steve Reinhardt
2007-02-06 23:53:48 -08:00
a19e9ea5fc
Initialize the variable to something.
Nathan Binkert
2007-02-06 22:32:37 -08:00
38db47005c
Include compiler.hh since we use some of the #defines
Nathan Binkert
2007-02-06 22:31:15 -08:00
51e54f519d
Minor DPRINTF fixes.
Steve Reinhardt
2007-02-06 21:53:05 -08:00
d486700149
Add short memtest run to quick regressions. Caveats: - Even though memtest is ISA-independent, it will only run for the Alpha builds, since there's no way to specify ISA-independent reference files and I didn't want to commit 3 copies since I'm not sure we want to run it for all the different ISAs anyway. - Reference outputs were generated on my laptop, so performance numbers will be low compared to zizzer.
Steve Reinhardt
2007-02-06 21:16:33 -08:00
8ffd12e807
merge my index fix and lisa's fix
Ali Saidi
2007-02-06 18:47:42 -05:00
c7a1fdacd6
mark ldst[0] instrutions at DelayedCommit so we don't take an interrupt in the middle of one
Ali Saidi
2007-02-06 18:22:33 -05:00
310d8f0992
Fix for LL/SC that Ron sent me.
Kevin Lim
2007-02-06 15:54:44 -05:00
ebb6972dd3
more fp fixes fix unaligned accesses in mmaped disk device
Ali Saidi
2007-02-06 15:52:33 -05:00
98ef836ca6
Use perl FindBin package to set path to rundiff to the directory where tracediff is.
Steve Reinhardt
2007-02-06 10:06:11 -08:00
572addee5d
Fix for previous commit: need to ifdef NDEBUG on the definition as well as the declaration.
Steve Reinhardt
2007-02-06 10:04:44 -08:00
f5a803f56e
Use an instance counter to give Events repeatable IDs in debugging mode (especially valuable for tracediff).
Steve Reinhardt
2007-02-05 22:05:00 -08:00
ecef27f172
more sparc fixes
Ali Saidi
2007-02-02 19:02:27 -05:00
665ddde57a
make interrupt code serialize itself and fix indenting
Ali Saidi
2007-02-02 18:05:21 -05:00
592f35ac0f
fix mostly floating point related
Ali Saidi
2007-02-02 18:04:42 -05:00
17cbfe55fd
Merge zizzer:/bk/newmem into zed.eecs.umich.edu:/z/hsul/work/sparc/x86.m5
Lisa Hsu
2007-02-01 15:35:26 -05:00
1e8bbb81cb
only increment numPosted if an interrupt of that type hasn't been posted before.
Lisa Hsu
2007-02-01 15:34:52 -05:00
8a244ef040
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem into zizzer.eecs.umich.edu:/.automount/wexford/x/gblack/m5/newmem
Gabe Black
2007-01-31 19:44:50 -05:00
559460e33a
Create reference outputs for this regression.
Gabe Black
2007-01-31 18:47:23 -05:00
5c7192daed
make sparc fs less chatty
Ali Saidi
2007-01-31 18:32:27 -05:00
36a1912bf0
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-01-30 18:27:16 -05:00
ac36fb6e64
add fsr to the list of registers we are interested in
Ali Saidi
2007-01-30 18:27:04 -05:00
fc79ace502
Make SPARC checkpointing work
Ali Saidi
2007-01-30 18:25:39 -05:00
3fa5816dcf
fix some checkpointing annoyances -m works as you think it should Ctrl-C actually ends the simulation now
Ali Saidi
2007-01-30 18:21:42 -05:00
cf0ba1dfb0
Merge zizzer:/bk/newmem into zower.eecs.umich.edu:/eecshome/m5/newmem
Gabe Black
2007-01-30 16:12:47 -05:00
efb14c585b
Implemented fbfss and fbpfcc instructions, and cleaned up branch code a little.
Gabe Black
2007-01-30 16:12:38 -05:00
8bc4925775
change std::isnan() to a using namespace std and isnan(). We need a better way to do this.
Ali Saidi
2007-01-30 14:43:25 -05:00
e82e5b5084
use std:: for isnan() and fix decoding of fcmpe*
Ali Saidi
2007-01-30 11:22:22 -05:00
0cdcd207ac
sizeof with a pointer to dynamically allocated memory will return the size of the pointer, not the memory.
Gabe Black
2007-01-30 02:45:59 -05:00
a4a87daad1
Make clearSingleStep in SPARC a warning, and rephrase the panic for setSingleStep
Gabe Black
2007-01-30 02:44:24 -05:00
e3fad2dcea
Make the FpUnimpl format actually write the Fsr.
Gabe Black
2007-01-30 00:21:18 -05:00
230fc0a0d1
Added FpUnimpl format for quad precision and other purposefully unimplemented floating point ops.
Gabe Black
2007-01-30 00:08:42 -05:00
a8b8962a4d
Merge zizzer:/bk/newmem into zower.eecs.umich.edu:/eecshome/m5/newmem
Gabe Black
2007-01-29 22:57:18 -05:00
4a16ea95c1
Fix the Frs?s operands to use single width by default, rather than double width.
Gabe Black
2007-01-29 22:54:28 -05:00
1f7db14dd4
Add implementation for the fcmp instructions. These don't behave -quite- right with respect to quite NaNs, but hopefully we don't need to worry about the distinction.
Gabe Black
2007-01-29 22:52:54 -05:00
a5cb9b51be
Fix the FCMPCC bitfield.
Gabe Black
2007-01-29 22:46:01 -05:00
d92f0d370b
timegm() is a gnuism... replace with the code from the timegm() man page
Ali Saidi
2007-01-29 19:04:06 -05:00
716a2dc180
fix some over sights in moving windowing and ccr registers to int reg file
Ali Saidi
2007-01-29 19:03:14 -05:00
b39190cb3a
m5stats.txt shouldn't be committed
Ali Saidi
2007-01-29 14:46:30 -05:00
7545b2b650
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-01-29 14:44:45 -05:00
852f26484f
Process the actual code as well.
Gabe Black
2007-01-29 10:52:13 -05:00
fc7e36553b
Cleaned up disassembly a little.
Gabe Black
2007-01-29 10:49:59 -05:00
e176c7d1ff
A minor hack to get branch prediction to behave like before on Alpha.
Gabe Black
2007-01-29 10:48:20 -05:00
105c336743
Fixed a warning about an unused variable.
Gabe Black
2007-01-29 10:46:54 -05:00
44c6ca84c6
Merge zizzer:/bk/newmem into zower.eecs.umich.edu:/eecshome/m5/newmem
Gabe Black
2007-01-28 18:28:34 -05:00
b37b6e1708
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-01-28 16:18:44 -05:00
6619fcea4e
Merge zizzer:/bk/newmem into pb15.local:/Users/ali/work/m5.newmem.head
Ali Saidi
2007-01-28 15:55:44 -05:00
7494aa8a14
make unimplemented ops fail return correct traps for ua2005 fpops that aren't implemented in hw
Ali Saidi
2007-01-28 15:42:01 -05:00
84c6463c3e
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-01-28 15:30:54 -05:00
a729e4d4b8
fix comparing fp registers between legion and m5 make fp writes also chatty with the Sparc traceflag
Ali Saidi
2007-01-28 15:30:14 -05:00
91ca1b48e2
Merge zizzer:/bk/newmem into zower.eecs.umich.edu:/eecshome/m5/newmem
Gabe Black
2007-01-28 14:46:56 -05:00
37795b104d
Stick the conversion of python to unix time with all of the other param code so that other functions can use it as well.
Nathan Binkert
2007-01-28 10:26:59 -08:00
f9a341f8e7
I missed a couple of things
Ali Saidi
2007-01-27 15:47:18 -05:00
02bd40d552
While I'm waiting for legion to run make m5 compile with a few more compilers
Ali Saidi
2007-01-27 15:38:04 -05:00
0358ccee23
Merge zizzer:/bk/newmem into zower.eecs.umich.edu:/eecshome/m5/newmem
Gabe Black
2007-01-27 01:59:20 -05:00
e41f54f97f
Got rid of some DPRINTFs that were printing raw pointers.
Gabe Black
2007-01-27 01:49:21 -05:00
f48b22f986
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.
Gabe Black
2007-01-27 01:47:07 -05:00
5c7bf74c07
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-01-26 19:00:38 -05:00
de9ac2153e
forgot to include this file
Ali Saidi
2007-01-26 19:00:17 -05:00
5f51fe20de
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.newmem
Ali Saidi
2007-01-26 18:57:35 -05:00
2939d7d061
Make Sparc traceflag even more chatty some fixes to fp instructions to use the single precision registers if this is an fp op emit fp check code add fpregs to m5legion struct
Ali Saidi
2007-01-26 18:57:16 -05:00
6d9d0c68b5
Merge zizzer:/bk/newmem into zeep.pool:/z/saidi/work/m5.suncc
Ali Saidi
2007-01-26 18:50:28 -05:00
fd8a4ff5a8
Merge zeep.pool:/z/saidi/work/m5.newmem into zeep.pool:/z/saidi/work/m5.suncc
Ali Saidi
2007-01-26 18:49:40 -05:00
63fdabf191
make our code a little more standards compliant pretty close to compiling w/ suns compiler
Ali Saidi
2007-01-26 18:48:51 -05:00
47b2aa6346
Fixed the number of integer registers. There are MaxGL+1 sets of globals, not just MaxGL.
Gabe Black
2007-01-26 16:38:29 -05:00
c215d54aac
Merge zizzer:/bk/newmem into zed.eecs.umich.edu:/z/hsul/work/sparc/x86.m5
Lisa Hsu
2007-01-26 12:51:24 -05:00
202d7f62b9
eliminate cpu checkInterrupts bool, it is redundant and unnecessary.
Lisa Hsu
2007-01-26 12:51:07 -05:00
cf72942506
Move time forward to Jan 1, 2009 and update stats
Nathan Binkert
2007-01-25 19:14:05 -05:00
1c2949a2ff
Merge zizzer.eecs.umich.edu:/bk/newmem into zeep.pool:/y/binkertn/research/m5/rtc
Nathan Binkert
2007-01-25 15:00:04 -05:00
73dd0ea357
Instead of passing an int to represent time between python and C++ pass the tuple of python's struct_time and interpret that. Fixes a problem where the local timezone leaked into the time calculation. Also fix things so that the unix, python, and RTC data sheets all get the right time. Provide both years since 1900 and BCD two digit year. Put the date back at 1/1/2006 for now.
Nathan Binkert
2007-01-25 14:59:41 -05:00
8561c8366c
fix smul and sdiv to sign extend, and handle overflow/underflow corretly Only allow writing/reading of 32 bits of Y Only allow writing/reading 32 bits of pc when pstate.am Put any loaded data on the first half of a micro-op in uReg0 so it can't overwrite the register we are using for address calculation only erase a entry from the lookup table if it's valid Put in a temporary check to make sure that lookup table and tlb array stay in sync if we are interrupted in the middle of a mico-op, reset the micropc/nexpc so we start on the first part of it when we come back
Ali Saidi
2007-01-25 13:43:46 -05:00
5407a6bc32
Fixed a warning that was breaking compilation.
Gabe Black
2007-01-25 01:13:56 -05:00
5f50dfa5d0
Merge zizzer:/bk/newmem into zower.eecs.umich.edu:/eecshome/m5/newmem
Gabe Black
2007-01-24 19:57:36 -05:00
4301e4cd08
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
Ali Saidi
2007-01-23 15:50:03 -05:00
b8fc86e28f
Update to stats because of minor to branch mispredict accounting.
Gabe Black
2007-01-22 23:44:44 -08:00
08501b5a35
Fix for slightly garbled hand merge
Gabe Black
2007-01-22 23:38:17 -08:00
1352e55ceb
Merge zizzer.eecs.umich.edu:/bk/newmem into ewok.(none):/home/gblack/m5/newmemo3
Gabe Black
2007-01-22 22:31:48 -08:00
45c3f1747c
Added remote gdb objects to each process
Gabe Black
2007-01-22 22:22:09 -08:00
60eaa03d72
fix compiling on x86/Solaris
Ali Saidi
2007-01-22 21:57:01 -05:00
5f662d451e
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
Ali Saidi
2007-01-22 21:55:43 -05:00
3011fc6311
we decided to check for .interp instead of .dynamic
Ali Saidi
2007-01-22 21:45:29 -05:00