From: Andreas Hansson Date: Thu, 30 Jul 2015 07:41:22 +0000 (-0400) Subject: cpu: Fix issue identified by UBSan X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=85a44e24dcca5282e68935f5804781e5ae312558;p=gem5.git cpu: Fix issue identified by UBSan --- diff --git a/src/cpu/func_unit.cc b/src/cpu/func_unit.cc index 6d009a440..3c2f1049d 100644 --- a/src/cpu/func_unit.cc +++ b/src/cpu/func_unit.cc @@ -42,6 +42,8 @@ using namespace std; // FuncUnit::FuncUnit() { + opLatencies.fill(0); + pipelined.fill(false); capabilityList.reset(); } diff --git a/src/cpu/func_unit.hh b/src/cpu/func_unit.hh index 721a69df1..638195509 100644 --- a/src/cpu/func_unit.hh +++ b/src/cpu/func_unit.hh @@ -31,6 +31,7 @@ #ifndef __CPU_FUNC_UNIT_HH__ #define __CPU_FUNC_UNIT_HH__ +#include #include #include #include @@ -84,8 +85,8 @@ typedef std::vector::const_iterator FUDDiterator; class FuncUnit { private: - unsigned opLatencies[Num_OpClasses]; - bool pipelined[Num_OpClasses]; + std::array opLatencies; + std::array pipelined; std::bitset capabilityList; public: