<commit_before>#include "sim.h"

void warn(const char *fmt, ...)
{
    va_list ap;

    va_start(ap, fmt);
    vprintf(fmt, ap);
    va_end(ap);
}<commit_msg>Adding an unpredictable function for, mostly, cases where the PC is used incorrectly.  And added code to dump registers whenever a warning or unpredictable message is printed.  And, added a prefix string to the warnings and unpredictable messages.<commit_after>#include "sim.h"
#include "arm.h"

void unpredictable(const char *fmt, ...)
{
    va_list ap;

    printf("UNPREDICTABLE INSTRUCTION BEHAVIOR: ");
    va_start(ap, fmt);
    vprintf(fmt, ap);
    va_end(ap);
    printf("\n");
    arm_dump_registers();
}

void warn(const char *fmt, ...)
{
    va_list ap;

    printf("Warning: ");
    va_start(ap, fmt);
    vprintf(fmt, ap);
    va_end(ap);
    printf("\n");
    arm_dump_registers();
}
{'fraction_non_alphanumeric': 0.1366822429906542, 'fraction_numerical': 0.0, 'mean_word_length': 3.486910994764398, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6209405', 'n_tokens_mistral': 302, 'n_tokens_neox': 283, 'n_words': 84}