From 35d488e972a9dd75ce3867c000405f128b79c615 Mon Sep 17 00:00:00 2001 From: Ash Wolf Date: Sun, 15 Jan 2023 12:14:05 +0000 Subject: reorganise things a bit to align further with the actual names/structure --- includes/compiler/CParser.h | 149 ++++++++++++++++++++++---------------------- 1 file changed, 74 insertions(+), 75 deletions(-) (limited to 'includes/compiler/CParser.h') diff --git a/includes/compiler/CParser.h b/includes/compiler/CParser.h index 7312e33..65d046a 100644 --- a/includes/compiler/CParser.h +++ b/includes/compiler/CParser.h @@ -53,82 +53,81 @@ enum { }; -// not sure how many of these are char and how many are unsigned char or Boolean -typedef struct COpts { - Boolean little_endian; +typedef struct CompilerLinkerOptions { + Boolean littleendian; Boolean codegen_dynamic; Boolean codegen_pic; Boolean no_common; Boolean no_implicit_templates; Boolean absolutepath; // determines the path written to debug info char x06; // linker/objgen related - short cpu; - char schedule_cpu; - char schedule_mode; // may be an enum?? + short processor; + char scheduling; + char schedule_factor; SInt32 debuglisting; Boolean profile; Boolean traceback; Boolean disable_registers; Boolean fp_contract; Boolean no_register_save_helpers; - Boolean ppc_unroll_speculative; - short ppc_unroll_instructions_limit; - short ppc_unroll_factor_limit; + Boolean unroll_speculative; + short unroll_instr_limit; + short unroll_factor_limit; Boolean altivec_model; UInt8 altivec_vrsave; - UInt8 code_alignment; + UInt8 function_align; UInt8 x1D; - UInt8 x1E; // some register used in TOC_use_isel + UInt8 gen_isel; UInt8 gen_fsel; - Boolean ppc_opt_bclr_bcctr; + Boolean opt_bcc_lr_ctr; Boolean use_lmw_stmw; char report_heap_info; Boolean misaligned_mem_access; Boolean switch_tables; - char prepare_compress; - char some_alignment; // used in CMach_AllocationAlignment + Boolean prepare_compress; + char min_struct_alignment; // used in CMach_AllocationAlignment Boolean asmsemicolcomment; Boolean asmpoundcomment; StringPtr oldprefixname; short inlinelevel; - int inline_max_size; - int inline_max_total_size; + int inlinemaxsize; + int inlinemaxtotalsize; Boolean inline_bottom_up; Boolean cplusplus; Boolean ecplusplus; Boolean objective_c; Boolean objc_strict; - Boolean ARM_conform; - Boolean ARM_scoping; - Boolean require_prototypes; + Boolean ARMconform; + Boolean ARMscoping; + Boolean checkprotos; Boolean trigraphs; - Boolean only_std_keywords; + Boolean onlystdkeywords; Boolean enumsalwaysint; - Boolean ANSI_strict; + Boolean ANSIstrict; Boolean mpwc_relax; Boolean mpwc_newline; Boolean ignore_oldstyle; Boolean cpp_extensions; Boolean pointercast_lvalue; - Boolean useRTTI; + Boolean RTTI; Boolean delete_exception; - char _4B; + Boolean test_dummy; Boolean oldalignment; - Boolean unsignedchars; + Boolean unsigned_char; Boolean multibyteaware; - Boolean autoinline; + Boolean auto_inline; Boolean defer_codegen; Boolean direct_to_som; Boolean som_env_check; - Boolean som_call_opt; + Boolean som_call_optimize; Boolean booltruefalse; - char old_enum_mangler; + Boolean old_enum_mangler; Boolean longlong; Boolean longlong_enums; - char no_tfuncinline; - Boolean _59; + Boolean no_tfuncinline; + Boolean always_vdispatch; Boolean flat_include; - char syspath_once; + Boolean syspath_once; Boolean always_import; Boolean simple_class_byval; Boolean wchar_type; @@ -136,16 +135,16 @@ typedef struct COpts { Boolean vbase_abi_v2; Boolean def_inherited; Boolean template_patch; - char template_friends; + Boolean template_friends; Boolean faster_pch_gen; Boolean array_new_delete; Boolean dollar_identifiers; - char def_inline_tfuncs; + Boolean def_inline_tfuncs; Boolean arg_dep_lookup; Boolean simple_prepdump; Boolean line_prepdump; Boolean fullpath_prepdump; - char old_mtemplparser; + Boolean old_mtemplparser; Boolean suppress_init_code; Boolean reverse_bitfields; Boolean c9x; @@ -153,20 +152,20 @@ typedef struct COpts { Boolean no_static_dtors; Boolean longlong_prepeval; Boolean const_strings; - char dumpir; + Boolean dumpir; Boolean experimental; Boolean gcc_extensions; - char stdc_fp_contract; - char stdc_fenv_access; - char stdc_cx_limitedr; + Boolean stdc_fp_contract; + Boolean stdc_fenv_access; + Boolean stdc_cx_limitedr; Boolean old_argmatch; Boolean optEH; Boolean optEH2; Boolean new_mangler; - char microsoft; + Boolean microsoft_EH; Boolean warningerrors; Boolean pedantic; - Boolean check_header_flags; + Boolean checkprecompflags; Boolean supress_warnings; Boolean warn_illpragma; Boolean warn_emptydecl; @@ -183,51 +182,51 @@ typedef struct COpts { Boolean warn_no_side_effect; Boolean warn_resultnotused; Boolean warn_ptr_int_conv; - char align_mode; - Boolean align_array_members; + char structalignment; + Boolean alignarraymembers; Boolean dont_reuse_strings; - Boolean pool_strings; + Boolean poolstrings; Boolean explicit_zero_data; Boolean readonly_strings; Boolean exceptions; - char _99; - Boolean dont_inline; - Boolean always_inline; + Boolean dddummy; + Boolean dontinline; + Boolean alwaysinline; Boolean peephole; - Boolean global_optimizer; - char side_effects; - Boolean internal; - Boolean import; - Boolean export; - Boolean lib_export; + Boolean globaloptimizer; + Boolean sideeffects; + Boolean cfm_internal; + Boolean cfm_import; + Boolean cfm_export; + Boolean cfm_lib_export; Boolean nosyminline; - char force_active; + Boolean force_active; char optimizationlevel; - Boolean optimize_for_size; + Boolean optimizesize; Boolean optimizewithasm; Boolean crippled; - Boolean opt_common_subs; - Boolean opt_loop_invariants; - Boolean opt_propagation; - Boolean opt_dead_assignments; - Boolean opt_strength_reduction; - Boolean opt_strength_reduction_strict; - Boolean opt_dead_code; - Boolean opt_lifetimes; - char _B1; // unused? - Boolean opt_unroll_loops; - char opt_vectorize_loops; - Boolean _B4; // amount of IRO passes? + Boolean commonsubs; + Boolean loopinvariants; + Boolean propagation; + Boolean deadstore; + Boolean strengthreduction; + Boolean strengthreductionstrict; + Boolean deadcode; + Boolean lifetimes; + Boolean logopts; + Boolean unrolling; + Boolean vectorizeloops; + Boolean multiplepasses; Boolean opt_pointer_analysis; - unsigned char opt_pointer_analysis_mode; - char loop_unroll_count; - char loop_unroll_size_threshold; - Boolean isGeneratingDebugInfo; - CWDataType pchCreator; - CWDataType pchType; - CWDataType text; - HashNameNode *forcedSegment; // when set by #pragma segment -} COpts; + UInt8 opt_pointer_analysis_mode; + char unrollfactor; + char unrollinstrfactor; + Boolean filesyminfo; + CWDataType appltype; + CWDataType headtype; + CWDataType texttype; + HashNameNode *cursegmentname; // when set by #pragma segment +} CompilerLinkerOptions; typedef struct ParserTryBlock { struct ParserTryBlock *next; @@ -290,7 +289,7 @@ extern Object *Xthrw_func; extern Object *Xicth_func; extern Object *Xecth_func; extern Object *Xunex_func; -extern COpts copts; +extern CompilerLinkerOptions copts; extern struct GList name_mangle_list; extern HashNameNode *no_name_node; extern HashNameNode *temp_argument_name; -- cgit v1.2.3