diff -r e34eea5811bd -r 820b33041411 SConstruct --- a/SConstruct Thu Feb 14 09:59:02 2013 +0000 +++ b/SConstruct Thu Feb 14 09:59:24 2013 +0000 @@ -528,7 +528,8 @@ main.Append(CCFLAGS=['-pipe']) main.Append(CCFLAGS=['-fno-strict-aliasing']) main.Append(CCFLAGS=['-Wall', '-Wno-sign-compare', '-Wundef']) - main.Append(CXXFLAGS=['-Wmissing-field-initializers']) + main.Append(CXXFLAGS=['-Wmissing-field-initializers', + '-Woverloaded-virtual']) main.Append(CXXFLAGS=['-std=c++0x']) # Check for versions with bugs @@ -578,7 +579,8 @@ # Ruby makes frequent use of extraneous parantheses in the printing # of if-statements main.Append(CCFLAGS=['-Wno-parentheses']) - main.Append(CXXFLAGS=['-Wmissing-field-initializers']) + main.Append(CXXFLAGS=['-Wmissing-field-initializers', + '-Woverloaded-virtual']) main.Append(CXXFLAGS=['-std=c++0x']) # On Mac OS X/Darwin we need to also use libc++ (part of XCode) as # opposed to libstdc++ to make the transition from TR1 to diff -r e34eea5811bd -r 820b33041411 src/arch/alpha/isa/branch.isa --- a/src/arch/alpha/isa/branch.isa Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/alpha/isa/branch.isa Thu Feb 14 09:59:24 2013 +0000 @@ -83,6 +83,9 @@ AlphaISA::PCState branchTarget(const AlphaISA::PCState &branchPC) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; @@ -108,6 +111,9 @@ AlphaISA::PCState branchTarget(ThreadContext *tc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; diff -r e34eea5811bd -r 820b33041411 src/arch/alpha/process.hh --- a/src/arch/alpha/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/alpha/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -49,6 +49,8 @@ public: AlphaISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; void setSyscallArg(ThreadContext *tc, int i, AlphaISA::IntReg val); void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value); }; diff -r e34eea5811bd -r 820b33041411 src/arch/arm/isa/templates/branch.isa --- a/src/arch/arm/isa/templates/branch.isa Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/arm/isa/templates/branch.isa Thu Feb 14 09:59:24 2013 +0000 @@ -74,6 +74,9 @@ ConditionCode _condCode); %(BasicExecDeclare)s ArmISA::PCState branchTarget(const ArmISA::PCState &branchPC) const; + + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; }; }}; diff -r e34eea5811bd -r 820b33041411 src/arch/arm/linux/process.hh --- a/src/arch/arm/linux/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/arm/linux/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -45,6 +45,8 @@ void initState(); ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using ArmLiveProcess::getSyscallArg; void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val); /// The target system's hostname. diff -r e34eea5811bd -r 820b33041411 src/arch/arm/process.hh --- a/src/arch/arm/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/arm/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -53,7 +53,7 @@ public: void argsInit(int intSize, int pageSize); - uint64_t getSyscallArg(ThreadContext *tc, int &i, int width); + ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width); ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i); void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val); void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value); diff -r e34eea5811bd -r 820b33041411 src/arch/mips/isa/formats/branch.isa --- a/src/arch/mips/isa/formats/branch.isa Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/mips/isa/formats/branch.isa Thu Feb 14 09:59:24 2013 +0000 @@ -91,6 +91,9 @@ MipsISA::PCState branchTarget(const MipsISA::PCState &branchPC) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; @@ -118,6 +121,9 @@ MipsISA::PCState branchTarget(ThreadContext *tc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; diff -r e34eea5811bd -r 820b33041411 src/arch/mips/process.hh --- a/src/arch/mips/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/mips/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -53,6 +53,8 @@ public: MipsISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; void setSyscallArg(ThreadContext *tc, int i, MipsISA::IntReg val); void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value); }; diff -r e34eea5811bd -r 820b33041411 src/arch/power/insts/branch.hh --- a/src/arch/power/insts/branch.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/power/insts/branch.hh Thu Feb 14 09:59:24 2013 +0000 @@ -88,6 +88,9 @@ PowerISA::PCState branchTarget(const PowerISA::PCState &pc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; @@ -114,6 +117,9 @@ PowerISA::PCState branchTarget(const PowerISA::PCState &pc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; @@ -189,6 +195,9 @@ PowerISA::PCState branchTarget(const PowerISA::PCState &pc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; @@ -215,6 +224,9 @@ PowerISA::PCState branchTarget(const PowerISA::PCState &pc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; @@ -233,6 +245,9 @@ PowerISA::PCState branchTarget(ThreadContext *tc) const; + /// Explicitly import the otherwise hidden branchTarget + using StaticInst::branchTarget; + std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; }; diff -r e34eea5811bd -r 820b33041411 src/arch/power/linux/process.hh --- a/src/arch/power/linux/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/power/linux/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -46,6 +46,8 @@ void initState(); PowerISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; void setSyscallArg(ThreadContext *tc, int i, PowerISA::IntReg val); /// Array of syscall descriptors, indexed by call number. diff -r e34eea5811bd -r 820b33041411 src/arch/power/process.hh --- a/src/arch/power/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/power/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -52,6 +52,8 @@ public: void argsInit(int intSize, int pageSize); PowerISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; void setSyscallArg(ThreadContext *tc, int i, PowerISA::IntReg val); void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value); }; diff -r e34eea5811bd -r 820b33041411 src/arch/sparc/process.hh --- a/src/arch/sparc/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/sparc/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -94,6 +94,9 @@ void flushWindows(ThreadContext *tc); SparcISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; + void setSyscallArg(ThreadContext *tc, int i, SparcISA::IntReg val); }; @@ -122,6 +125,9 @@ void flushWindows(ThreadContext *tc); SparcISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; + void setSyscallArg(ThreadContext *tc, int i, SparcISA::IntReg val); }; diff -r e34eea5811bd -r 820b33041411 src/arch/x86/process.hh --- a/src/arch/x86/process.hh Thu Feb 14 09:59:02 2013 +0000 +++ b/src/arch/x86/process.hh Thu Feb 14 09:59:24 2013 +0000 @@ -103,6 +103,8 @@ void initState(); X86ISA::IntReg getSyscallArg(ThreadContext *tc, int &i); + /// Explicitly import the otherwise hidden getSyscallArg + using LiveProcess::getSyscallArg; void setSyscallArg(ThreadContext *tc, int i, X86ISA::IntReg val); };