Fix virtual overriding

faster-single-tables
Andrew Cassidy 3 years ago
parent 0c6846f630
commit ec7df5727e

@ -23,7 +23,7 @@
#include "../blocks.h"
namespace rgbcx {
void BC1Decoder::DecodeBlock(Color4x4 dest, BC1Block *const block) const {
void BC1Decoder::DecodeBlock(Color4x4 dest, BC1Block *const block) const noexcept(ndebug) {
const auto l = block->GetLowColor();
const auto h = block->GetHighColor();
const auto selectors = block->UnpackSelectors();

@ -26,6 +26,7 @@
#include "ColorBlock.h"
#include "util.h"
#include "ndebug.h"
namespace rgbcx {
@ -36,7 +37,7 @@ template <class B, size_t M, size_t N> class BlockDecoder {
BlockDecoder() noexcept = default;
virtual ~BlockDecoder() noexcept = default;
virtual void DecodeBlock(DecodedBlock dest, EncodedBlock *const block) const = 0;
virtual void DecodeBlock(DecodedBlock dest, EncodedBlock *const block) const noexcept(ndebug) = 0;
void DecodeRow(std::span<DecodedBlock> dests, std::span<const EncodedBlock> blocks) {
assert(dests.size() == blocks.size());

Loading…
Cancel
Save