Hi folks. I have all of the preprocessor FULL_SYSTEMs replaced with C++ constant FullSystems (except the one where FULL_SYSTEM is assigned to FullSystem) and have passed all the quick regressions. I just started a run of all the regressions, and expect it will take a day to run at minimum. I'll then turn all the patches I have into commits, push them into my SE/FS repo, and pull in the dev repo and merge. The merge commit will go in the SE/FS repo. At this point, SE and FS could theoretically be run from the same binary if FullSystem was changed from a constant to a variable/parameter, but since it isn't they can't. The scripts would also have to be updated significantly for that to happen. Because all functions, classes, and member variables are available in SE and FS mode but not all will do something sensible/work/not segfault in both modes, there are a few more possibilities to shoot yourself in the foot in my repository.
Does this seem like a good point to get feedback and fold things into the main repository? My next step(s) will probably involve making FullSystem a global variable (or function?) set with a parameter and make the scripts set it, but not to go all the way and get rid of separate builds for SE and FS even though they'll be the same thing. There are going to be details like the regressions/regression scripts which will need to be updated first, and probably the mode will need to be worked into the quick/long/opt/fast/debug path scheme. The next good spot will likely be in there somewhere. If this is a bad time for logistical reasons (looming conference deadline, other large change nearly ready, etc) I can hold off for a little while but still use this as a merge point. Gabe _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
