Skip to content

Commit

Permalink
Merge pull request #1480 from dneto0/stringify
Browse files Browse the repository at this point in the history
Use our own SPIRV-Tools message stringifier
  • Loading branch information
johnkslang authored Aug 20, 2018
2 parents 93dbbde + 9fd2a8c commit 1323bf8
Showing 1 changed file with 31 additions and 8 deletions.
39 changes: 31 additions & 8 deletions SPIRV/GlslangToSpv.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,6 @@ namespace spv {

#if ENABLE_OPT
#include "spirv-tools/optimizer.hpp"
#include "message.h"
#endif

#if ENABLE_OPT
Expand Down Expand Up @@ -7032,13 +7031,37 @@ void GlslangToSpv(const glslang::TIntermediate& intermediate, std::vector<unsign
spv_target_env target_env = SPV_ENV_UNIVERSAL_1_2;

spvtools::Optimizer optimizer(target_env);
optimizer.SetMessageConsumer([](spv_message_level_t level,
const char* source,
const spv_position_t& position,
const char* message) {
std::cerr << StringifyMessage(level, source, position, message)
<< std::endl;
});
optimizer.SetMessageConsumer(
[](spv_message_level_t level, const char *source, const spv_position_t &position, const char *message) {
auto &out = std::cerr;
switch (level)
{
case SPV_MSG_FATAL:
case SPV_MSG_INTERNAL_ERROR:
case SPV_MSG_ERROR:
out << "error: ";
break;
case SPV_MSG_WARNING:
out << "warning: ";
break;
case SPV_MSG_INFO:
case SPV_MSG_DEBUG:
out << "info: ";
break;
default:
break;
}
if (source)
{
out << source << ":";
}
out << position.line << ":" << position.column << ":" << position.index << ":";
if (message)
{
out << " " << message;
}
out << std::endl;
});

optimizer.RegisterPass(CreateMergeReturnPass());
optimizer.RegisterPass(CreateInlineExhaustivePass());
Expand Down

0 comments on commit 1323bf8

Please sign in to comment.