[gem5-dev] Change in public/gem5[master]: misc: fix build failure in cxx_config example
Paul Rosenfeld has submitted this change and it was merged. ( https://gem5-review.googlesource.com/3000 ) Change subject: misc: fix build failure in cxx_config example .. misc: fix build failure in cxx_config example Fix a missing header in the cxx_config example which is used as a simple example of using libgem5.so without python. Change-Id: I758bfe42ba735ce0c7eaedd49b94a130e3bd21e3 Reviewed-on: https://gem5-review.googlesource.com/3000 Reviewed-by: Andreas SandbergReviewed-by: Jason Lowe-Power Reviewed-by: Curtis Dunham Reviewed-by: Matthias Jung Maintainer: Andreas Sandberg --- M util/cxx_config/main.cc 1 file changed, 1 insertion(+), 0 deletions(-) Approvals: Jason Lowe-Power: Looks good to me, approved Andreas Sandberg: Looks good to me, approved; Looks good to me, approved Curtis Dunham: Looks good to me, approved Matthias Jung: Looks good to me, approved diff --git a/util/cxx_config/main.cc b/util/cxx_config/main.cc index 0356aea..88bdec0 100644 --- a/util/cxx_config/main.cc +++ b/util/cxx_config/main.cc @@ -68,6 +68,7 @@ #include "sim/cxx_manager.hh" #include "sim/init_signals.hh" #include "sim/serialize.hh" +#include "sim/sim_events.hh" #include "sim/simulate.hh" #include "sim/stat_control.hh" #include "sim/system.hh" -- To view, visit https://gem5-review.googlesource.com/3000 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I758bfe42ba735ce0c7eaedd49b94a130e3bd21e3 Gerrit-Change-Number: 3000 Gerrit-PatchSet: 2 Gerrit-Owner: Paul Rosenfeld Gerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Curtis Dunham Gerrit-Reviewer: Jason Lowe-Power Gerrit-Reviewer: Matthias Jung Gerrit-Reviewer: Paul Rosenfeld ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: scons: Get rid of the PHONY_BASE construction variable.
Gabe Black has submitted this change and it was merged. ( https://gem5-review.googlesource.com/2981 ) Change subject: scons: Get rid of the PHONY_BASE construction variable. .. scons: Get rid of the PHONY_BASE construction variable. The value of that variable can be computed more directly and more locally to where it's consumed. Change-Id: I5ca1f732a34e22d4dae2aeb6ee7fc8adebe1caa0 Reviewed-on: https://gem5-review.googlesource.com/2981 Maintainer: Jason Lowe-PowerReviewed-by: Curtis Dunham Reviewed-by: Jason Lowe-Power --- M SConstruct M src/SConscript 2 files changed, 8 insertions(+), 4 deletions(-) Approvals: Jason Lowe-Power: Looks good to me, approved; Looks good to me, approved Curtis Dunham: Looks good to me, approved diff --git a/SConstruct b/SConstruct index d252865..f56c23d 100755 --- a/SConstruct +++ b/SConstruct @@ -1357,7 +1357,6 @@ env.Command(hdr, [], switch_hdr_action) isa_target = Dir('.').up().name.lower().replace('_', '-') -env['PHONY_BASE'] = '#'+isa_target all_isa_deps[isa_target] = None Export('make_switching_dir') @@ -1421,6 +1420,11 @@ # ### +def variant_name(path): +return os.path.basename(path).lower().replace('_', '-') +main['variant_name'] = variant_name +main['VARIANT_NAME'] = '${variant_name(BUILDDIR)}' + for variant_path in variant_paths: if not GetOption('silent'): print "Building in", variant_path diff --git a/src/SConscript b/src/SConscript index 155dcf5..ed59bd2 100755 --- a/src/SConscript +++ b/src/SConscript @@ -1233,9 +1233,9 @@ Builder(action=MakeAction(makeEnvirons, Transform("ENVIRONS", 1)))}) -isa_target = env['PHONY_BASE'] + '-deps' -environs = env['PHONY_BASE'] + '-environs' -env.Depends('#all-deps', isa_target) +isa_target = '#${VARIANT_NAME}-deps' +environs = '#${VARIANT_NAME}-environs' +env.Depends('#all-deps', isa_target) env.Depends('#all-environs', environs) env.ScanISA(isa_target, File('arch/%s/generated/inc.d' % env['TARGET_ISA'])) envSetup = env.MakeEnvirons(environs, isa_target) -- To view, visit https://gem5-review.googlesource.com/2981 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I5ca1f732a34e22d4dae2aeb6ee7fc8adebe1caa0 Gerrit-Change-Number: 2981 Gerrit-PatchSet: 4 Gerrit-Owner: Gabe Black Gerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Curtis Dunham Gerrit-Reviewer: Gabe Black Gerrit-Reviewer: Jason Lowe-Power ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: base: Teach the socket listeners how to bind to the loopback.
Hello Nathan Binkert, Andreas Sandberg, I'd like you to reexamine a change. Please visit https://gem5-review.googlesource.com/3080 to look at the new patch set (#2). Change subject: base: Teach the socket listeners how to bind to the loopback. .. base: Teach the socket listeners how to bind to the loopback. The loopback device will allow access to various services like remote GDB debugging, connecting to the terminal, etc., without letting external agents like port scanners connect and disrupting the simulation. Change-Id: I76dccbf152fa278ae9f342b25f7e345a1329fbe4 --- M src/base/socket.cc M src/base/socket.hh 2 files changed, 17 insertions(+), 1 deletion(-) -- To view, visit https://gem5-review.googlesource.com/3080 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I76dccbf152fa278ae9f342b25f7e345a1329fbe4 Gerrit-Change-Number: 3080 Gerrit-PatchSet: 2 Gerrit-Owner: Gabe BlackGerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Gabe Black Gerrit-Reviewer: Nathan Binkert Gerrit-CC: Rahul Thakur ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: scons: arch: Generalize the switching header code.
Hello Jason Lowe-Power, Curtis Dunham, Andreas Sandberg, I'd like you to reexamine a change. Please visit https://gem5-review.googlesource.com/2983 to look at the new patch set (#3). Change subject: scons: arch: Generalize the switching header code. .. scons: arch: Generalize the switching header code. Factor out the ISA ness of the switching header generating function. Also turn it into a SCons builder which builds a single header, and a wrapping method which uses the builder on a group of header files which all target the same subdirectory. Change-Id: I87705f97b6ebd9baebd4ebcfea19cc1218a64ad0 --- M SConstruct M src/arch/SConscript 2 files changed, 29 insertions(+), 31 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2983 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I87705f97b6ebd9baebd4ebcfea19cc1218a64ad0 Gerrit-Change-Number: 2983 Gerrit-PatchSet: 3 Gerrit-Owner: Gabe BlackGerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Curtis Dunham Gerrit-Reviewer: Jason Lowe-Power ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: config: Fix up some configs to not use CPU aliases.
Hello Jason Lowe-Power, Andreas Sandberg, I'd like you to reexamine a change. Please visit https://gem5-review.googlesource.com/3100 to look at the new patch set (#2). Change subject: config: Fix up some configs to not use CPU aliases. .. config: Fix up some configs to not use CPU aliases. Support for CPU aliases were removed recently. Change-Id: I3c1173dc34170d8639d95e52bf660f248848f77f --- M configs/common/CacheConfig.py M configs/example/apu_se.py M configs/example/etrace_replay.py M configs/example/fs.py M configs/example/se.py M configs/network/Network.py M configs/ruby/Ruby.py 7 files changed, 12 insertions(+), 11 deletions(-) -- To view, visit https://gem5-review.googlesource.com/3100 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I3c1173dc34170d8639d95e52bf660f248848f77f Gerrit-Change-Number: 3100 Gerrit-PatchSet: 2 Gerrit-Owner: Gabe BlackGerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Jason Lowe-Power ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: util: Add the m5_loadsymbol pseudo op to the m5 tool
Andreas Sandberg has uploaded this change for review. ( https://gem5-review.googlesource.com/3122 Change subject: util: Add the m5_loadsymbol pseudo op to the m5 tool .. util: Add the m5_loadsymbol pseudo op to the m5 tool Change-Id: Ib8bf4eac77170db8b2bf44796fd9d46b02217d03 Signed-off-by: Andreas Sandberg--- M util/m5/m5.c M util/m5/m5op.h 2 files changed, 12 insertions(+), 0 deletions(-) diff --git a/util/m5/m5.c b/util/m5/m5.c index ee92134..8e21276 100644 --- a/util/m5/m5.c +++ b/util/m5/m5.c @@ -251,6 +251,16 @@ m5_addsymbol(addr, symbol); } + +void +do_loadsymbol(int argc, char *argv[]) +{ +if (argc > 0) +usage(); + +m5_loadsymbol(); +} + void do_initparam(int argc, char *argv[]) { @@ -321,6 +331,7 @@ { "execfile", do_exec_file,"" }, { "checkpoint", do_checkpoint, "[delay [period]]" }, { "addsymbol", do_addsymbol," " }, +{ "loadsymbol", do_loadsymbol, "" }, { "initparam", do_initparam,"[key] // key must be shorter than 16 chars" }, { "sw99param", do_sw99param,"" }, #ifdef linux diff --git a/util/m5/m5op.h b/util/m5/m5op.h index d9fcb32..f2d85fe 100644 --- a/util/m5/m5op.h +++ b/util/m5/m5op.h @@ -59,6 +59,7 @@ void m5_switchcpu(void); void m5_togglesync(void); void m5_addsymbol(uint64_t addr, char *symbol); +void m5_loadsymbol(); void m5_panic(void); void m5_work_begin(uint64_t workid, uint64_t threadid); void m5_work_end(uint64_t workid, uint64_t threadid); -- To view, visit https://gem5-review.googlesource.com/3122 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ib8bf4eac77170db8b2bf44796fd9d46b02217d03 Gerrit-Change-Number: 3122 Gerrit-PatchSet: 1 Gerrit-Owner: Andreas Sandberg ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: arm: Fix incorrect handling of PMEVTYPERx_EL0 in PMU
Andreas Sandberg has uploaded this change for review. ( https://gem5-review.googlesource.com/3121 Change subject: arm: Fix incorrect handling of PMEVTYPERx_EL0 in PMU .. arm: Fix incorrect handling of PMEVTYPERx_EL0 in PMU The PMU model currently doesn't calculate the PMU event counter index incorrectly for writes to the PMEVTYPER[0-5]_EL0 registers. Fix this obvious mistake. Change-Id: I2913eedddeb98480660e2d63948f6d727adf5ab8 Signed-off-by: Andreas SandbergReviewed-by: Sudhanshu Jha --- M src/arch/arm/pmu.cc 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/arch/arm/pmu.cc b/src/arch/arm/pmu.cc index 3953070..ac2f475 100644 --- a/src/arch/arm/pmu.cc +++ b/src/arch/arm/pmu.cc @@ -163,7 +163,7 @@ return; case MISCREG_PMEVTYPER0_EL0...MISCREG_PMEVTYPER5_EL0: -setCounterTypeRegister(misc_reg - MISCREG_PMEVCNTR0_EL0, val); +setCounterTypeRegister(misc_reg - MISCREG_PMEVTYPER0_EL0, val); return; case MISCREG_PMCCFILTR: -- To view, visit https://gem5-review.googlesource.com/3121 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I2913eedddeb98480660e2d63948f6d727adf5ab8 Gerrit-Change-Number: 3121 Gerrit-PatchSet: 1 Gerrit-Owner: Andreas Sandberg ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: style: Treat PyBind headers as Python headers
Hello Nikos Nikoleris, Curtis Dunham, I'd like you to do a code review. Please visit https://gem5-review.googlesource.com/3120 to review the following change. Change subject: style: Treat PyBind headers as Python headers .. style: Treat PyBind headers as Python headers Some PyBind11 headers need to include Python.h. This means that we need to include PyBind11 headers before any standard library headers. Enforce this by applying the Python.hh rules for anything in pybind11/. Change-Id: Id175a4f613960a17f84f98b81bfd02806e905d5a Signed-off-by: Andreas SandbergReviewed-by: Nikos Nikoleris Reviewed-by: Curtis Dunham --- M util/style/sort_includes.py 1 file changed, 3 insertions(+), 0 deletions(-) diff --git a/util/style/sort_includes.py b/util/style/sort_includes.py index d1a25ee..cb88fec 100644 --- a/util/style/sort_includes.py +++ b/util/style/sort_includes.py @@ -158,6 +158,8 @@ includes_re = ( ('main', '""', _include_matcher_main()), ('python', '<>', _include_matcher_fname("^Python\.h$")), +('pybind', '""', _include_matcher_fname("^pybind11/.*\.h$", +delim='""')), ('c', '<>', _include_matcher_fname("^.*\.h$")), ('stl', '<>', _include_matcher_fname("^\w+$")), ('cc', '<>', _include_matcher_fname("^.*\.(hh|hxx|hpp|H)$")), @@ -170,6 +172,7 @@ block_order = ( ('python', ), +('pybind', ), ('main', ), ('c', ), ('stl', ), -- To view, visit https://gem5-review.googlesource.com/3120 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Id175a4f613960a17f84f98b81bfd02806e905d5a Gerrit-Change-Number: 3120 Gerrit-PatchSet: 1 Gerrit-Owner: Andreas Sandberg Gerrit-Reviewer: Curtis Dunham Gerrit-Reviewer: Nikos Nikoleris ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: util: Fix incorrect return type in m5 writefile
Andreas Sandberg has submitted this change and it was merged. ( https://gem5-review.googlesource.com/2960 ) Change subject: util: Fix incorrect return type in m5 writefile .. util: Fix incorrect return type in m5 writefile Change-Id: Ic24a1c3c1488e970ed27bb6b99262d201f535384 Signed-off-by: Andreas SandbergReviewed-by: Curtis Dunham Reviewed-on: https://gem5-review.googlesource.com/2960 Reviewed-by: Gabe Black --- M util/m5/m5.c 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Gabe Black: Looks good to me, approved Andreas Sandberg: Looks good to me, approved diff --git a/util/m5/m5.c b/util/m5/m5.c index 118ac94..8e6f4fc 100644 --- a/util/m5/m5.c +++ b/util/m5/m5.c @@ -122,7 +122,7 @@ } } -int +void write_file(const char *filename) { fprintf(stderr, "opening %s\n", filename); -- To view, visit https://gem5-review.googlesource.com/2960 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ic24a1c3c1488e970ed27bb6b99262d201f535384 Gerrit-Change-Number: 2960 Gerrit-PatchSet: 3 Gerrit-Owner: Andreas Sandberg Gerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Curtis Dunham Gerrit-Reviewer: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: kvm, arm: Fix incorrect PSTATE sync
Hello Gabe Black, Nikos Nikoleris, Rahul Thakur, I'd like you to reexamine a change. Please visit https://gem5-review.googlesource.com/2963 to look at the new patch set (#2). Change subject: kvm, arm: Fix incorrect PSTATE sync .. kvm, arm: Fix incorrect PSTATE sync The state transfer code wasn't reading back PSTATE correctly from the CPU prior to updating the thread context and was incorreclty writing the register as a 32-bit value when updating KVM. Correctly read back the state before updating gem5's view of PSTATE and cast the value to a uint64_t. Change-Id: I0a6ff5b77b897c756b20a20f65c420f42386360f Signed-off-by: Andreas SandbergReviewed-by: Nikos Nikoleris --- M src/arch/arm/kvm/armv8_cpu.cc 1 file changed, 2 insertions(+), 2 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2963 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I0a6ff5b77b897c756b20a20f65c420f42386360f Gerrit-Change-Number: 2963 Gerrit-PatchSet: 2 Gerrit-Owner: Andreas Sandberg Gerrit-Reviewer: Gabe Black Gerrit-Reviewer: Nikos Nikoleris Gerrit-Reviewer: Rahul Thakur ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: util: Correctly handle short writes in m5 (read|exec)file
Hello Gabe Black, Nikos Nikoleris, I'd like you to reexamine a change. Please visit https://gem5-review.googlesource.com/2962 to look at the new patch set (#2). Change subject: util: Correctly handle short writes in m5 (read|exec)file .. util: Correctly handle short writes in m5 (read|exec)file The m5 tool has subcommands that writes a file to the simulated file system. The implementation of this command currently doesn't check the return value from write, which leads to compiler warnings and potentially incorrect behavior. Add the necessary checks. Change-Id: If558534d3245aa24cf15edf06bd0af4c6ba3908c Signed-off-by: Andreas SandbergReviewed-by: Nikos Nikoleris --- M util/m5/m5.c 1 file changed, 20 insertions(+), 4 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2962 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: If558534d3245aa24cf15edf06bd0af4c6ba3908c Gerrit-Change-Number: 2962 Gerrit-PatchSet: 2 Gerrit-Owner: Andreas Sandberg Gerrit-Reviewer: Gabe Black Gerrit-Reviewer: Nikos Nikoleris ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: scons: Replace str(foo.get_contents()) with foo.get_text_con...
Gabe Black has submitted this change and it was merged. ( https://gem5-review.googlesource.com/3084 ) Change subject: scons: Replace str(foo.get_contents()) with foo.get_text_contents(). .. scons: Replace str(foo.get_contents()) with foo.get_text_contents(). For Value() nodes, the get_contents() method and the get_text_contents() method are just aliases to the same thing, both of which return a value which has already been converted using str(). The str() which was included explicitly in the SConscript was redundant, except that it showed that the value from get_contents was being treated as a string. To avoid the redundancy but to still leave a hint to the value's type, this change converts those bits of code to use get_text_contents() and removes the str(). Change-Id: I8f7da9b652f749e741b553c9a0e2248ae15ec3ca Reviewed-on: https://gem5-review.googlesource.com/3084 Reviewed-by: Andreas SandbergMaintainer: Andreas Sandberg --- M src/SConscript 1 file changed, 4 insertions(+), 4 deletions(-) Approvals: Andreas Sandberg: Looks good to me, approved; Looks good to me, approved diff --git a/src/SConscript b/src/SConscript index c15da03..155dcf5 100755 --- a/src/SConscript +++ b/src/SConscript @@ -610,7 +610,7 @@ def createSimObjectParamStruct(target, source, env): assert len(target) == 1 and len(source) == 1 -name = str(source[0].get_contents()) +name = source[0].get_text_contents() obj = sim_objects[name] code = code_formatter() @@ -632,7 +632,7 @@ def createEnumStrings(target, source, env): assert len(target) == 1 and len(source) == 2 -name = str(source[0].get_contents()) +name = source[0].get_text_contents() use_python = source[1].read() obj = all_enums[name] @@ -645,7 +645,7 @@ def createEnumDecls(target, source, env): assert len(target) == 1 and len(source) == 1 -name = str(source[0].get_contents()) +name = source[0].get_text_contents() obj = all_enums[name] code = code_formatter() @@ -653,7 +653,7 @@ code.write(target[0].abspath) def createSimObjectPyBindWrapper(target, source, env): -name = source[0].get_contents() +name = source[0].get_text_contents() obj = sim_objects[name] code = code_formatter() -- To view, visit https://gem5-review.googlesource.com/3084 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I8f7da9b652f749e741b553c9a0e2248ae15ec3ca Gerrit-Change-Number: 3084 Gerrit-PatchSet: 3 Gerrit-Owner: Gabe Black Gerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: scons: Make env['USE_PYTHON'] a source for createEnumStrings.
Gabe Black has submitted this change and it was merged. ( https://gem5-review.googlesource.com/3083 ) Change subject: scons: Make env['USE_PYTHON'] a source for createEnumStrings. .. scons: Make env['USE_PYTHON'] a source for createEnumStrings. That clues scons in to the fact that the contents of the target of that function depends on the value of that construction variable. Change-Id: I803322ea1a178152da3d95de20acd4271c88 Reviewed-on: https://gem5-review.googlesource.com/3083 Reviewed-by: Jason Lowe-PowerReviewed-by: Paul Rosenfeld Reviewed-by: Andreas Sandberg Maintainer: Andreas Sandberg --- M src/SConscript 1 file changed, 4 insertions(+), 3 deletions(-) Approvals: Jason Lowe-Power: Looks good to me, but someone else must approve Andreas Sandberg: Looks good to me, approved; Looks good to me, approved Paul Rosenfeld: Looks good to me, approved diff --git a/src/SConscript b/src/SConscript index fd67533..c15da03 100755 --- a/src/SConscript +++ b/src/SConscript @@ -630,14 +630,15 @@ return body def createEnumStrings(target, source, env): -assert len(target) == 1 and len(source) == 1 +assert len(target) == 1 and len(source) == 2 name = str(source[0].get_contents()) +use_python = source[1].read() obj = all_enums[name] code = code_formatter() obj.cxx_def(code) -if env['USE_PYTHON']: +if use_python: obj.pybind_def(code) code.write(target[0].abspath) @@ -732,7 +733,7 @@ extra_deps = [ py_source.tnode ] cc_file = File('enums/%s.cc' % name) -env.Command(cc_file, Value(name), +env.Command(cc_file, [Value(name), Value(env['USE_PYTHON'])], MakeAction(createEnumStrings, Transform("ENUM STR"))) env.Depends(cc_file, depends + extra_deps) Source(cc_file) -- To view, visit https://gem5-review.googlesource.com/3083 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I803322ea1a178152da3d95de20acd4271c88 Gerrit-Change-Number: 3083 Gerrit-PatchSet: 2 Gerrit-Owner: Gabe Black Gerrit-Reviewer: Andreas Sandberg Gerrit-Reviewer: Gabe Black Gerrit-Reviewer: Jason Lowe-Power Gerrit-Reviewer: Paul Rosenfeld ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: config: Fix up some configs to not use CPU aliases.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/3100 Change subject: config: Fix up some configs to not use CPU aliases. .. config: Fix up some configs to not use CPU aliases. Support for CPU aliases were removed recently. Change-Id: I3c1173dc34170d8639d95e52bf660f248848f77f --- M configs/common/CacheConfig.py M configs/example/apu_se.py M configs/example/arm/fs_power.py M configs/example/etrace_replay.py M configs/example/fs.py M configs/example/se.py M configs/network/Network.py M configs/ruby/Ruby.py 8 files changed, 14 insertions(+), 13 deletions(-) diff --git a/configs/common/CacheConfig.py b/configs/common/CacheConfig.py index 52659e8..d9d0ae7 100644 --- a/configs/common/CacheConfig.py +++ b/configs/common/CacheConfig.py @@ -53,7 +53,7 @@ if options.external_memory_system: ExternalCache = ExternalCacheFactory(options.external_memory_system) -if options.cpu_type == "arm_detailed": +if options.cpu_type == "O3_ARM_v7a_3": try: from O3_ARM_v7a import * except: diff --git a/configs/example/apu_se.py b/configs/example/apu_se.py index 28ba92b..f93442d 100644 --- a/configs/example/apu_se.py +++ b/configs/example/apu_se.py @@ -181,9 +181,9 @@ fatal("GPU model requires ruby") # Currently the gpu model requires only timing or detailed CPU -if not (options.cpu_type == "timing" or - options.cpu_type == "detailed"): -fatal("GPU model requires timing or detailed CPU") +if not (options.cpu_type == "TimingSimpleCPU" or + options.cpu_type == "DerivO3CPU"): +fatal("GPU model requires TimingSimpleCPU or DerivO3CPU") # This file can support multiple compute units assert(options.num_compute_units >= 1) diff --git a/configs/example/arm/fs_power.py b/configs/example/arm/fs_power.py index 14dbae0..1bef00d 100644 --- a/configs/example/arm/fs_power.py +++ b/configs/example/arm/fs_power.py @@ -75,8 +75,8 @@ bL.addOptions(parser) options = parser.parse_args() -if options.cpu_type != "timing": -m5.fatal("The power example script requires 'timing' CPUs.") +if options.cpu_type != "TimingSimpleCPU": +m5.fatal("The power example script requires TimingSimpleCPUs.") root = bL.build(options) diff --git a/configs/example/etrace_replay.py b/configs/example/etrace_replay.py index 0b0e37f..385a2d1 100644 --- a/configs/example/etrace_replay.py +++ b/configs/example/etrace_replay.py @@ -65,9 +65,9 @@ numThreads = 1 -if options.cpu_type != "trace": +if options.cpu_type != "TraceCPU": fatal("This is a script for elastic trace replay simulation, use "\ -"--cpu-type=trace\n"); +"--cpu-type=TraceCPU\n"); if options.num_cpus > 1: fatal("This script does not support multi-processor trace replay.\n") diff --git a/configs/example/fs.py b/configs/example/fs.py index 8102edc..36365af 100644 --- a/configs/example/fs.py +++ b/configs/example/fs.py @@ -147,7 +147,8 @@ if options.ruby: # Check for timing mode because ruby does not support atomic accesses -if not (options.cpu_type == "detailed" or options.cpu_type == "timing"): +if not (options.cpu_type == "DerivO3CPU" or +options.cpu_type == "TimingSimpleCPU"): print >> sys.stderr, "Ruby requires TimingSimpleCPU or O3CPU!!" sys.exit(1) diff --git a/configs/example/se.py b/configs/example/se.py index b26bc91..0fc7d74 100644 --- a/configs/example/se.py +++ b/configs/example/se.py @@ -115,7 +115,7 @@ idx += 1 if options.smt: -assert(options.cpu_type == "detailed") +assert(options.cpu_type == "DerivO3CPU") return multiprocesses, idx else: return multiprocesses, 1 diff --git a/configs/network/Network.py b/configs/network/Network.py index 1fbb381..567e6b0 100644 --- a/configs/network/Network.py +++ b/configs/network/Network.py @@ -34,7 +34,7 @@ def define_options(parser): # By default, ruby uses the simple timing cpu -parser.set_defaults(cpu_type="timing") +parser.set_defaults(cpu_type="TimingSimpleCPU") parser.add_option("--topology", type="string", default="Crossbar", help="check configs/topologies for complete set") diff --git a/configs/ruby/Ruby.py b/configs/ruby/Ruby.py index 50b5ba9..8f5edb8 100644 --- a/configs/ruby/Ruby.py +++ b/configs/ruby/Ruby.py @@ -52,7 +52,7 @@ def define_options(parser): # By default, ruby uses the simple timing cpu -parser.set_defaults(cpu_type="timing") +parser.set_defaults(cpu_type="TimingSimpleCPU") parser.add_option("--ruby-clock", action="store", type="string", default='2GHz', @@ -212,6 +212,6 @@ # currently, 2 scenarios warrant forwarding evictions to the CPU: # 1. The O3 model must keep the LSQ coherent with the caches # 2. The x86 mwait instruction is built on
[gem5-dev] Cron <m5test@zizzer> /z/m5/regression/do-regression quick
* build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing-ruby: FAILED! * build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing-ruby: FAILED! * build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-timing-ruby: FAILED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/simple-timing-ruby: FAILED!*** gem5: OK * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/simple-timing-ruby: FAILED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64d/simple-timing-ruby: FAILED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64i/simple-timing-ruby: FAILED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64f/simple-timing-ruby: FAILED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64m/simple-timing-ruby: FAILED! * build/HSAIL_X86/tests/opt/quick/se/60.gpu-randomtest/x86/linux/gpu-randomtest-ruby-GPU_RfO: FAILED! * build/HSAIL_X86/tests/opt/quick/se/04.gpu/x86/linux/gpu-ruby-GPU_RfO: FAILED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/simple-atomic: CHANGED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/minor-timing: CHANGED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/o3-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64d/minor-timing: CHANGED!*** diff[simerr]: SKIPPED* build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64d/simple-atomic: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64d/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/simple-atomic: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/minor-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64f/minor-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64f/o3-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64f/simple-atomic: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64f/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64m/minor-timing: CHANGED!--- quick/se/02.insttest/riscv/linux-rv64m/o3-timing --- * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64m/o3-timing: CHANGED!--- quick/se/02.insttest/riscv/linux-rv64m/simple-atomic --- * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64m/simple-atomic: CHANGED!*** gem5 stderr *** *** diff[config.ini]: SKIPPED* build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64m/simple-timing: CHANGED! scons: *** [build/ALPHA/encumbered/eio/libexo.do] Error 1 scons: *** [build/ALPHA/encumbered/eio/eio.do] Error 1 scons: *** [build/ALPHA/encumbered/eio/libexo.fo] Error 1 scons: *** [build/ALPHA/encumbered/eio/eio.fo] Error 1 scons: *** [build/ALPHA/encumbered/eio/libexo.o] Error 1 scons: *** [build/ALPHA/encumbered/eio/eio.o] Error 1 * build/MIPS/tests/opt/quick/se/00.hello/mips/linux/o3-timing: passed. * build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing: passed. * build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-atomic: passed. * build/MIPS/tests/opt/quick/se/03.learning-gem5/mips/linux/learning-gem5-p1-simple: passed. * build/MIPS/tests/opt/quick/se/03.learning-gem5/mips/linux/learning-gem5-p1-two-level: passed. * build/NULL/tests/opt/quick/se/50.memtest/null/none/memtest: passed. * build/NULL/tests/opt/quick/se/50.memtest/null/none/memtest-filter: passed.* build/NULL/tests/opt/quick/se/51.memcheck/null/none/memcheck: passed. * build/NULL/tests/opt/quick/se/70.tgen/null/none/tgen-simple-mem: passed. * build/NULL/tests/opt/quick/se/70.tgen/null/none/tgen-dram-ctrl: passed. * build/NULL/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby: passed. * build/NULL_MOESI_hammer/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MOESI_hammer: passed. * build/NULL_MESI_Two_Level/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MESI_Two_Level: passed. * build/NULL_MOESI_CMP_directory/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MOESI_CMP_directory: passed. * build/NULL_MOESI_CMP_token/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MOESI_CMP_token: passed. * build/POWER/tests/opt/quick/se/00.hello/power/linux/simple-atomic: passed. * build/POWER/tests/opt/quick/se/00.hello/power/linux/o3-timing: passed. * build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-atomic: passed. * build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing: passed. * build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/o3-timing: passed. *