}
break;
case 'q':
+ if (log_errfile == stderr)
+ log_quiet_warnings = true;
log_errfile = stderr;
break;
case 'v':
fprintf(stderr, " suppress printing of footer (log hash, version, timing statistics)\n");
fprintf(stderr, "\n");
fprintf(stderr, " -q\n");
- fprintf(stderr, " quiet operation. only write error messages to console\n");
+ fprintf(stderr, " quiet operation. only write warnings and error messages to console\n");
+ fprintf(stderr, " use this option twice to also quiet warning messages\n");
fprintf(stderr, "\n");
fprintf(stderr, " -v <level>\n");
fprintf(stderr, " print log headers up to level <level> to the console. (implies -q)\n");
bool log_time = false;
bool log_cmd_error_throw = false;
+bool log_quiet_warnings = false;
int log_verbose_level;
std::vector<int> header_count;
void logv_warning(const char *format, va_list ap)
{
- if (log_errfile != NULL)
+ if (log_errfile != NULL && !log_quiet_warnings)
log_files.push_back(log_errfile);
log("Warning: ");
logv(format, ap);
log_flush();
- if (log_errfile != NULL)
+ if (log_errfile != NULL && !log_quiet_warnings)
log_files.pop_back();
}
extern bool log_time;
extern bool log_cmd_error_throw;
+extern bool log_quiet_warnings;
extern int log_verbose_level;
void logv(const char *format, va_list ap);
for ((i = 0; i < 100; i++)); do
echo -n "[$i]"
idx=$( printf "%05d" $i )
- ../../../yosys -q uut_${idx}.ys
+ ../../../yosys -qq uut_${idx}.ys
iverilog -o uut_${idx}_tb uut_${idx}_tb.v uut_${idx}.v uut_${idx}_syn.v
./uut_${idx}_tb | tee uut_${idx}.err
if test -s uut_${idx}.err; then