arch: Collapse unused size parameter from "as" VecPredReg method.

Change-Id: Ibdaf38b2e2d8f37ef76d6b8874ac3620982e78a2
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/42000
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
Gabe Black
2021-02-26 20:58:28 -08:00
parent 2d95f59ece
commit fa505b3e12

View File

@@ -336,33 +336,26 @@ class VecPredRegContainer
/// Create a view of this container.
///
/// If NumElems is provided, the size of the container is bounds-checked,
/// otherwise the size is inferred from the container size.
/// @tparam VecElem Type of the vector elements.
/// @tparam NumElems Number of vector elements making up the view.
/// @{
template <typename VecElem,
size_t NumElems = (Packed ? NumBits : NumBits / sizeof(VecElem))>
VecPredRegT<VecElem, NumElems, Packed, true> as() const
template <typename VecElem>
VecPredRegT<VecElem, NumBits / sizeof(VecElem), Packed, true>
as() const
{
static_assert((Packed && NumElems <= NumBits) ||
(!Packed &&
NumBits % sizeof(VecElem) == 0 &&
sizeof(VecElem) * NumElems <= NumBits),
"Container size incompatible with view size");
return VecPredRegT<VecElem, NumElems, Packed, true>(*this);
static_assert(NumBits % sizeof(VecElem) == 0,
"Container size incompatible with view size.");
return VecPredRegT<VecElem, NumBits / sizeof(VecElem), Packed, true>(
*this);
}
template <typename VecElem,
size_t NumElems = (Packed ? NumBits : NumBits / sizeof(VecElem))>
VecPredRegT<VecElem, NumElems, Packed, false> as()
template <typename VecElem>
VecPredRegT<VecElem, NumBits / sizeof(VecElem), Packed, false>
as()
{
static_assert((Packed && NumElems <= NumBits) ||
(!Packed &&
NumBits % sizeof(VecElem) == 0 &&
sizeof(VecElem) * NumElems <= NumBits),
"Container size incompatible with view size");
return VecPredRegT<VecElem, NumElems, Packed, false>(*this);
static_assert(NumBits % sizeof(VecElem) == 0,
"Container size incompatible with view size.");
return VecPredRegT<VecElem, NumBits / sizeof(VecElem), Packed, false>(
*this);
}
/// @}
};