<commit_before>package som;

import java.util.Arrays;

import som.interpreter.TruffleCompiler;
import som.interpreter.actors.Actor;
import som.interpreter.actors.SFarReference;
import som.interpreter.actors.SPromise;
import som.interpreter.actors.SPromise.SResolver;
import som.vm.Bootstrap;
import som.vmobjects.SObjectWithoutFields;

import com.oracle.truffle.api.CompilerAsserts;
import com.oracle.truffle.api.CompilerDirectives.CompilationFinal;
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;


public final class VM {

  @CompilationFinal private static VM vm;
  private final boolean avoidExitForTesting;
  private int lastExitCode = 0;
  private volatile boolean shouldExit = false;
  private Options options;
  private boolean usesActors;
  private Thread mainThread;

  public static boolean DebugMode = false;

  public static void needsToBeOptimized(final String msg) {
    CompilerAsserts.neverPartOfCompilation(msg);
  }

  public VM(final boolean avoidExitForTesting) {<commit_msg>Put compiler assert behind a flag, and disable it<commit_after>package som;

import java.util.Arrays;

import som.interpreter.TruffleCompiler;
import som.interpreter.actors.Actor;
import som.interpreter.actors.SFarReference;
import som.interpreter.actors.SPromise;
import som.interpreter.actors.SPromise.SResolver;
import som.vm.Bootstrap;
import som.vmobjects.SObjectWithoutFields;

import com.oracle.truffle.api.CompilerAsserts;
import com.oracle.truffle.api.CompilerDirectives.CompilationFinal;
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;


public final class VM {

  @CompilationFinal private static VM vm;
  private final boolean avoidExitForTesting;
  private int lastExitCode = 0;
  private volatile boolean shouldExit = false;
  private Options options;
  private boolean usesActors;
  private Thread mainThread;

  public static final boolean DebugMode = false;
  public static final boolean FailOnMissingOptimizations = false;

  public static void needsToBeOptimized(final String msg) {
    if (FailOnMissingOptimizations) {
      CompilerAsserts.neverPartOfCompilation(msg);
    }
  }

  public VM(final boolean avoidExitForTesting) {
{'fraction_non_alphanumeric': 0.07103574702108158, 'fraction_numerical': 0.0009165902841429881, 'mean_word_length': 5.635258358662614, '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': '2920413', 'n_tokens_mistral': 647, 'n_tokens_neox': 637, 'n_words': 159}