summaryrefslogtreecommitdiff
path: root/src/arch/arm
diff options
context:
space:
mode:
authorAndreas Sandberg <andreas.sandberg@arm.com>2017-05-18 15:11:23 +0100
committerAndreas Sandberg <andreas.sandberg@arm.com>2017-05-19 08:00:45 +0000
commitc4b85d5f9854abeee6d1dbe15ae65a7a1aada6b2 (patch)
tree521b54e172ab547cd2147502bdb0015be924bb73 /src/arch/arm
parent41ab3e6e7e9b5a5f4427949f9a981cdf2186c88a (diff)
downloadgem5-c4b85d5f9854abeee6d1dbe15ae65a7a1aada6b2.tar.xz
base, sim, arch: Fix clang 5.0 warnings
Compiling gem5 with recent version of clang (4 and 5) triggers warnings that are treated as errors: * Global templatized static functions result in a warning if they are not used. These should either be declared as static inline or without the static identifier to avoid the warning. * Some templatized classes contain static variables. The instantiated versions of these variables / templates need to be explicitly declared to avoid a compiler warning. Change-Id: Ie8261144836e94ebab7ea04ccccb90927672c257 Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Curtis Dunham <curtis.dunham@arm.com> Reviewed-on: https://gem5-review.googlesource.com/3420 Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'src/arch/arm')
-rw-r--r--src/arch/arm/faults.hh3
-rw-r--r--src/arch/arm/insts/vfp.hh2
-rw-r--r--src/arch/arm/isa/insts/fp.isa8
3 files changed, 7 insertions, 6 deletions
diff --git a/src/arch/arm/faults.hh b/src/arch/arm/faults.hh
index ab4c67552..6e7c92cf6 100644
--- a/src/arch/arm/faults.hh
+++ b/src/arch/arm/faults.hh
@@ -567,7 +567,8 @@ class IllegalInstSetStateFault : public ArmFaultVals<IllegalInstSetStateFault>
};
/*
- * Explicitly declare template static member variables avoid warnings in some clang versions
+ * Explicitly declare template static member variables to avoid warnings
+ * in some clang versions
*/
template<> ArmFault::FaultVals ArmFaultVals<Reset>::vals;
template<> ArmFault::FaultVals ArmFaultVals<UndefinedInstruction>::vals;
diff --git a/src/arch/arm/insts/vfp.hh b/src/arch/arm/insts/vfp.hh
index de0c62161..caa22376e 100644
--- a/src/arch/arm/insts/vfp.hh
+++ b/src/arch/arm/insts/vfp.hh
@@ -201,7 +201,7 @@ bitsToFp(uint64_t bits, double junk)
}
template <class fpType>
-static bool
+static inline bool
isSnan(fpType val)
{
const bool single = (sizeof(fpType) == sizeof(float));
diff --git a/src/arch/arm/isa/insts/fp.isa b/src/arch/arm/isa/insts/fp.isa
index 0f10a05af..dc2f30701 100644
--- a/src/arch/arm/isa/insts/fp.isa
+++ b/src/arch/arm/isa/insts/fp.isa
@@ -65,7 +65,7 @@ class VfpMacroRegRegOp : public VfpMacroOp
};
template <class VfpOp>
-static StaticInstPtr
+StaticInstPtr
decodeVfpRegRegOp(ExtMachInst machInst,
IntRegIndex dest, IntRegIndex op1, bool wide)
{
@@ -101,7 +101,7 @@ class VfpMacroRegImmOp : public VfpMacroOp
};
template <class VfpOp>
-static StaticInstPtr
+StaticInstPtr
decodeVfpRegImmOp(ExtMachInst machInst,
IntRegIndex dest, uint64_t imm, bool wide)
{
@@ -137,7 +137,7 @@ class VfpMacroRegRegImmOp : public VfpMacroOp
};
template <class VfpOp>
-static StaticInstPtr
+StaticInstPtr
decodeVfpRegRegImmOp(ExtMachInst machInst, IntRegIndex dest,
IntRegIndex op1, uint64_t imm, bool wide)
{
@@ -173,7 +173,7 @@ class VfpMacroRegRegRegOp : public VfpMacroOp
};
template <class VfpOp>
-static StaticInstPtr
+StaticInstPtr
decodeVfpRegRegRegOp(ExtMachInst machInst, IntRegIndex dest,
IntRegIndex op1, IntRegIndex op2, bool wide)
{