<commit_before>MODULE_DIR=lib
FORTH_MODULES=$(shell find $(MODULE_DIR) -name "*.fs")
FORTH_OBJECTS := $(FORTH_MODULES:%.fs=%.o)

LIBS=-lreadline
INCLUDES=-Iinclude

CC?=gcc

CFLAGS+=-std=c99 -Wall -Wextra -O0 -fomit-frame-pointer -g
ifeq ($(ACCOUNTING), yes)
  CFLAGS+=-DACCOUNTING
endif

ifneq ($(SUPERINSTRUCTIONS), no)
  CFLAGS+=-DENABLE_SUPERINSTRUCTIONS
endif

ifeq ($(SUPERINSTRUCTION_DEBUG), yes)
  CFLAGS+=-DSUPERINSTRUCTION_DEBUG
endif<commit_msg>Optimization: Adding all the named flags from -O1. -O1 itself still crashes.<commit_after>MODULE_DIR=lib
FORTH_MODULES=$(shell find $(MODULE_DIR) -name "*.fs")
FORTH_OBJECTS := $(FORTH_MODULES:%.fs=%.o)

LIBS=-lreadline
INCLUDES=-Iinclude

CC?=gcc

CFLAGS+=-std=c99 -Wall -Wextra -fomit-frame-pointer
ifeq ($(ACCOUNTING), yes)
  CFLAGS+=-DACCOUNTING
endif

ifneq ($(SUPERINSTRUCTIONS), no)
  CFLAGS+=-DENABLE_SUPERINSTRUCTIONS
endif

ifeq ($(SUPERINSTRUCTION_DEBUG), yes)
  CFLAGS+=-DSUPERINSTRUCTION_DEBUG
endif

ifneq ($(OPT), no)
  # This is all the flags mentioned on -O1. -O1 itself fails, however.
  # TODO: Figure out why, someday. For now, these help.
  # TODO: Actually set up benchmarks.
  CFLAGS+=-fbranch-count-reg -fcombine-stack-adjustments -fcompare-elim \
      -fcprop-registers -fdefer-pop -fforward-propagate \
      -fguess-branch-probability -fif-conversion2 -fif-conversion \
      -finline-functions-called-once -fipa-profile  -fipa-pure-const \
      -fipa-reference -fmove-loop-invariants -fshrink-wrap -fsplit-wide-types \
      -fssa-phiopt -ftree-bit-ccp -ftree-ccp -ftree-ch -ftree-copy-prop \
      -ftree-copyrename -ftree-dce -ftree-dominator-opts -ftree-dse -ftree-fre \
      -ftree-pta -ftree-sink -ftree-slsr -ftree-sra -ftree-ter
endif

ifeq ($(DEBUG), yes)
  CFLAGS+=-g
endif
{'fraction_non_alphanumeric': 0.14527981910684, 'fraction_numerical': 0.005652911249293386, 'mean_word_length': 4.042735042735043, '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': '4693605', 'n_tokens_mistral': 721, 'n_tokens_neox': 694, 'n_words': 138}