summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Reinhardt <stever@eecs.umich.edu>2005-09-25 16:48:24 -0400
committerSteve Reinhardt <stever@eecs.umich.edu>2005-09-25 16:48:24 -0400
commita7807792be11dddcec3dbcf2e4092a21b232c3a3 (patch)
treee86bdfa447cf3f909d90768d580a0fe9e8d3b12a
parent663787422520580f3a5aa37481b181ea49076177 (diff)
parent23e75433d385abbcf3729a515e6a05bca671e473 (diff)
downloadgem5-a7807792be11dddcec3dbcf2e4092a21b232c3a3.tar.xz
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/poolfs/z/home/stever/bk/m5 --HG-- extra : convert_revision : c777f18ba8462b7286ec8588b859de8f4091a772
-rw-r--r--arch/alpha/isa_desc53
-rw-r--r--build/SConstruct27
-rw-r--r--build/build_options/default/ALPHA_FS (renamed from build/build_options/ALPHA_FS)0
-rw-r--r--build/build_options/default/ALPHA_FS_TL (renamed from build/build_options/ALPHA_FS_TL)0
-rw-r--r--build/build_options/default/ALPHA_SE (renamed from build/build_options/ALPHA_SE)0
5 files changed, 46 insertions, 34 deletions
diff --git a/arch/alpha/isa_desc b/arch/alpha/isa_desc
index a5b674c11..e80da6091 100644
--- a/arch/alpha/isa_desc
+++ b/arch/alpha/isa_desc
@@ -2660,6 +2660,28 @@ decode OPCODE default Unknown::unknown() {
}
}
+ format HwMoveIPR {
+ 0x19: hw_mfpr({{
+ // this instruction is only valid in PAL mode
+ if (!xc->inPalMode()) {
+ fault = Unimplemented_Opcode_Fault;
+ }
+ else {
+ Ra = xc->readIpr(ipr_index, fault);
+ }
+ }});
+ 0x1d: hw_mtpr({{
+ // this instruction is only valid in PAL mode
+ if (!xc->inPalMode()) {
+ fault = Unimplemented_Opcode_Fault;
+ }
+ else {
+ xc->setIpr(ipr_index, Ra);
+ if (traceData) { traceData->setData(Ra); }
+ }
+ }});
+ }
+
format BasicOperate {
0x1e: hw_rei({{ xc->hwrei(); }}, IsSerializing);
@@ -2700,35 +2722,12 @@ decode OPCODE default Unknown::unknown() {
AlphaPseudo::readfile(xc->xcBase());
}}, IsNonSpeculative);
0x51: m5break({{
- AlphaPseudo::debugbreak(xc->xcBase());
- }}, IsNonSpeculative);
+ AlphaPseudo::debugbreak(xc->xcBase());
+ }}, IsNonSpeculative);
0x52: m5switchcpu({{
- AlphaPseudo::switchcpu(xc->xcBase());
- }}, IsNonSpeculative);
-
+ AlphaPseudo::switchcpu(xc->xcBase());
+ }}, IsNonSpeculative);
}
}
-
- format HwMoveIPR {
- 0x19: hw_mfpr({{
- // this instruction is only valid in PAL mode
- if (!xc->inPalMode()) {
- fault = Unimplemented_Opcode_Fault;
- }
- else {
- Ra = xc->readIpr(ipr_index, fault);
- }
- }});
- 0x1d: hw_mtpr({{
- // this instruction is only valid in PAL mode
- if (!xc->inPalMode()) {
- fault = Unimplemented_Opcode_Fault;
- }
- else {
- xc->setIpr(ipr_index, Ra);
- if (traceData) { traceData->setData(Ra); }
- }
- }});
- }
#endif
}
diff --git a/build/SConstruct b/build/SConstruct
index 7f237ca77..e7ec87a53 100644
--- a/build/SConstruct
+++ b/build/SConstruct
@@ -320,12 +320,25 @@ for build_dir in build_dirs:
# Make a copy of the default environment to use for this config.
env = base_env.Copy()
# Set env according to the build directory config.
- options_file = os.path.join('build_options', build_dir)
- if os.path.isfile(options_file):
- sticky_opts.files = [options_file]
- else:
- print "Options file %s not found, using defaults." % options_file
+ sticky_opts.files = []
+ default_options_file = os.path.join('build_options', 'default', build_dir)
+ if os.path.isfile(default_options_file):
+ sticky_opts.files.append(default_options_file)
+ current_options_file = os.path.join('build_options', 'current', build_dir)
+ if os.path.isfile(current_options_file):
+ sticky_opts.files.append(current_options_file)
+ else:
+ # if file doesn't exist, make sure at least the directory is there
+ # so we can create it later
+ opt_dir = os.path.dirname(current_options_file)
+ if not os.path.isdir(opt_dir):
+ os.mkdir(opt_dir)
+ if not sticky_opts.files:
+ print "%s: No options file found in build_options, using defaults." \
+ % build_dir
+
+ # Apply current option settings to env
sticky_opts.Update(env)
nonsticky_opts.Update(env)
@@ -353,8 +366,8 @@ for build_dir in build_dirs:
env.ParseConfig(mysql_config_libs)
env.ParseConfig(mysql_config_include)
- # Save sticky option settings back to file
- sticky_opts.Save(options_file, env)
+ # Save sticky option settings back to current options file
+ sticky_opts.Save(current_options_file, env)
# Do this after we save setting back, or else we'll tack on an
# extra 'qdo' every time we run scons.
diff --git a/build/build_options/ALPHA_FS b/build/build_options/default/ALPHA_FS
index ddd69b9b3..ddd69b9b3 100644
--- a/build/build_options/ALPHA_FS
+++ b/build/build_options/default/ALPHA_FS
diff --git a/build/build_options/ALPHA_FS_TL b/build/build_options/default/ALPHA_FS_TL
index 4f3e201ec..4f3e201ec 100644
--- a/build/build_options/ALPHA_FS_TL
+++ b/build/build_options/default/ALPHA_FS_TL
diff --git a/build/build_options/ALPHA_SE b/build/build_options/default/ALPHA_SE
index 3fedc22ca..3fedc22ca 100644
--- a/build/build_options/ALPHA_SE
+++ b/build/build_options/default/ALPHA_SE