Commit 0e3d328a by Ben Clayton

SpirvRoutine: Verify create functions are called once per id

Just a safety belt that we're not doing stupid things. Change-Id: I092b0755d151a559f793e1a9f30b17ef52626d10 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28389 Presubmit-Ready: Ben Clayton <bclayton@google.com> Tested-by: 's avatarBen Clayton <bclayton@google.com> Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
parent e6ab01f4
...@@ -667,7 +667,8 @@ namespace sw ...@@ -667,7 +667,8 @@ namespace sw
void createLvalue(SpirvShader::Object::ID id, uint32_t size) void createLvalue(SpirvShader::Object::ID id, uint32_t size)
{ {
lvalues.emplace(id, Value(size)); bool added = lvalues.emplace(id, Value(size)).second;
ASSERT_MSG(added, "Value %d created twice", id.value());
} }
Intermediate& createIntermediate(SpirvShader::Object::ID id, uint32_t size) Intermediate& createIntermediate(SpirvShader::Object::ID id, uint32_t size)
...@@ -675,6 +676,7 @@ namespace sw ...@@ -675,6 +676,7 @@ namespace sw
auto it = intermediates.emplace(std::piecewise_construct, auto it = intermediates.emplace(std::piecewise_construct,
std::forward_as_tuple(id), std::forward_as_tuple(id),
std::forward_as_tuple(size)); std::forward_as_tuple(size));
ASSERT_MSG(it.second, "Intermediate %d created twice", id.value());
return it.first->second; return it.first->second;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment