X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fgmqcc.git;a=blobdiff_plain;f=opts.def;h=92cff1463513ad6e04a05e0f9e21fed3fc5bad24;hp=f39336a8cae13107b57107cb2bb03cd12c7a6aac;hb=b640049912e2a8caa5164a9718ad5a7903600d70;hpb=35ba2dcaf99f4352869ad8519c35fefb1c53dd93 diff --git a/opts.def b/opts.def index f39336a..92cff14 100644 --- a/opts.def +++ b/opts.def @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012 + * Copyright (C) 2012, 2013, 2014 * Wolfgang Bumiller * Dale Weiler * @@ -22,16 +22,17 @@ * SOFTWARE. */ #ifndef GMQCC_DEFINE_FLAG -# define GMQCC_DEFINE_FLAG(x) +# error "bad opts.def usage" #endif /* codegen flags */ #ifdef GMQCC_TYPE_FLAGS - GMQCC_DEFINE_FLAG(OVERLAP_LOCALS) GMQCC_DEFINE_FLAG(DARKPLACES_STRING_TABLE_BUG) GMQCC_DEFINE_FLAG(ADJUST_VECTOR_FIELDS) GMQCC_DEFINE_FLAG(FTEPP) GMQCC_DEFINE_FLAG(FTEPP_PREDEFS) + GMQCC_DEFINE_FLAG(FTEPP_MATHDEFS) + GMQCC_DEFINE_FLAG(FTEPP_INDIRECT_EXPANSION) GMQCC_DEFINE_FLAG(RELAXED_SWITCH) GMQCC_DEFINE_FLAG(SHORT_LOGIC) GMQCC_DEFINE_FLAG(PERL_LOGIC) @@ -45,10 +46,25 @@ GMQCC_DEFINE_FLAG(TRUE_EMPTY_STRINGS) GMQCC_DEFINE_FLAG(FALSE_EMPTY_STRINGS) GMQCC_DEFINE_FLAG(UTF8) + GMQCC_DEFINE_FLAG(BAIL_ON_WERROR) + GMQCC_DEFINE_FLAG(LOOP_LABELS) + GMQCC_DEFINE_FLAG(UNTYPED_NIL) + GMQCC_DEFINE_FLAG(PERMISSIVE) + GMQCC_DEFINE_FLAG(VARIADIC_ARGS) + GMQCC_DEFINE_FLAG(LEGACY_VECTOR_MATHS) + GMQCC_DEFINE_FLAG(EXPRESSIONS_FOR_BUILTINS) + GMQCC_DEFINE_FLAG(RETURN_ASSIGNMENTS) + GMQCC_DEFINE_FLAG(UNSAFE_VARARGS) + GMQCC_DEFINE_FLAG(TYPELESS_STORES) + GMQCC_DEFINE_FLAG(SORT_OPERANDS) + GMQCC_DEFINE_FLAG(EMULATE_STATE) + GMQCC_DEFINE_FLAG(ARITHMETIC_EXCEPTIONS) + GMQCC_DEFINE_FLAG(SPLIT_VECTOR_PARAMETERS) #endif /* warning flags */ #ifdef GMQCC_TYPE_WARNS + GMQCC_DEFINE_FLAG(UNINITIALIZED_GLOBAL) GMQCC_DEFINE_FLAG(DEBUG) GMQCC_DEFINE_FLAG(UNUSED_VARIABLE) GMQCC_DEFINE_FLAG(USED_UNINITIALIZED) @@ -56,7 +72,7 @@ GMQCC_DEFINE_FLAG(EXTENSIONS) GMQCC_DEFINE_FLAG(FIELD_REDECLARED) GMQCC_DEFINE_FLAG(MISSING_RETURN_VALUES) - GMQCC_DEFINE_FLAG(TOO_FEW_PARAMETERS) + GMQCC_DEFINE_FLAG(INVALID_PARAMETER_COUNT) GMQCC_DEFINE_FLAG(LOCAL_SHADOWS) GMQCC_DEFINE_FLAG(LOCAL_CONSTANTS) GMQCC_DEFINE_FLAG(VOID_VARIABLES) @@ -66,7 +82,7 @@ GMQCC_DEFINE_FLAG(EFFECTLESS_STATEMENT) GMQCC_DEFINE_FLAG(END_SYS_FIELDS) GMQCC_DEFINE_FLAG(ASSIGN_FUNCTION_TYPES) - GMQCC_DEFINE_FLAG(PREPROCESSOR) + GMQCC_DEFINE_FLAG(CPP) GMQCC_DEFINE_FLAG(MULTIFILE_IF) GMQCC_DEFINE_FLAG(DOUBLE_DECLARATION) GMQCC_DEFINE_FLAG(CONST_VAR) @@ -74,21 +90,62 @@ GMQCC_DEFINE_FLAG(TERNARY_PRECEDENCE) GMQCC_DEFINE_FLAG(UNKNOWN_PRAGMAS) GMQCC_DEFINE_FLAG(UNREACHABLE_CODE) - GMQCC_DEFINE_FLAG(CPP) GMQCC_DEFINE_FLAG(UNKNOWN_ATTRIBUTE) + GMQCC_DEFINE_FLAG(RESERVED_NAMES) + GMQCC_DEFINE_FLAG(UNINITIALIZED_CONSTANT) + GMQCC_DEFINE_FLAG(DIFFERENT_QUALIFIERS) + GMQCC_DEFINE_FLAG(DIFFERENT_ATTRIBUTES) + GMQCC_DEFINE_FLAG(DEPRECATED) + GMQCC_DEFINE_FLAG(PARENTHESIS) + GMQCC_DEFINE_FLAG(UNSAFE_TYPES) + GMQCC_DEFINE_FLAG(BREAKDEF) + GMQCC_DEFINE_FLAG(CONST_OVERWRITE) + GMQCC_DEFINE_FLAG(DIRECTIVE_INMACRO) + GMQCC_DEFINE_FLAG(BUILTINS) + GMQCC_DEFINE_FLAG(INEXACT_COMPARES) #endif #ifdef GMQCC_TYPE_OPTIMIZATIONS GMQCC_DEFINE_FLAG(PEEPHOLE, 1) - GMQCC_DEFINE_FLAG(LOCAL_TEMPS, 3) GMQCC_DEFINE_FLAG(TAIL_RECURSION, 1) - GMQCC_DEFINE_FLAG(TAIL_CALLS, 2) GMQCC_DEFINE_FLAG(OVERLAP_LOCALS, 3) + GMQCC_DEFINE_FLAG(LOCAL_TEMPS, 3) + GMQCC_DEFINE_FLAG(GLOBAL_TEMPS, 3) GMQCC_DEFINE_FLAG(STRIP_CONSTANT_NAMES, 1) GMQCC_DEFINE_FLAG(OVERLAP_STRINGS, 2) + GMQCC_DEFINE_FLAG(CALL_STORES, 3) + GMQCC_DEFINE_FLAG(VOID_RETURN, 1) + GMQCC_DEFINE_FLAG(VECTOR_COMPONENTS, 1) + GMQCC_DEFINE_FLAG(CONST_FOLD_DCE, 2) + GMQCC_DEFINE_FLAG(CONST_FOLD, 0) /* cannot be turned off */ +#endif + +#ifdef GMQCC_TYPE_OPTIONS + GMQCC_DEFINE_FLAG(O) + GMQCC_DEFINE_FLAG(OUTPUT) + GMQCC_DEFINE_FLAG(QUIET) + GMQCC_DEFINE_FLAG(G) + GMQCC_DEFINE_FLAG(STANDARD) + GMQCC_DEFINE_FLAG(DEBUG) + GMQCC_DEFINE_FLAG(MEMDUMPCOLS) + GMQCC_DEFINE_FLAG(MEMCHK) + GMQCC_DEFINE_FLAG(DUMPFIN) + GMQCC_DEFINE_FLAG(DUMP) + GMQCC_DEFINE_FLAG(FORCECRC) + GMQCC_DEFINE_FLAG(FORCED_CRC) + GMQCC_DEFINE_FLAG(PP_ONLY) + GMQCC_DEFINE_FLAG(MAX_ARRAY_SIZE) + GMQCC_DEFINE_FLAG(ADD_INFO) + GMQCC_DEFINE_FLAG(CORRECTION) + GMQCC_DEFINE_FLAG(STATISTICS) + GMQCC_DEFINE_FLAG(PROGSRC) + GMQCC_DEFINE_FLAG(COVERAGE) + GMQCC_DEFINE_FLAG(STATE_FPS) #endif /* some cleanup so we don't have to */ #undef GMQCC_TYPE_FLAGS #undef GMQCC_TYPE_WARNS +#undef GMQCC_TYPE_OPTIONS +#undef GMQCC_TYPE_OPTIMIZATIONS #undef GMQCC_DEFINE_FLAG