- { 0, "--pno-banksel", &pic16_options.no_banksel, "do not generate BANKSEL assembler directives"},
-
- /* optimization options */
- { 0, OPT_BANKSEL, NULL, "set banksel optimization level (default=0 no)"},
- { 0, "--denable-peeps", &pic16_enable_peeps, "explicit enable of peepholes"},
- { 0, OPTIMIZE_GOTO, NULL, "try to use (conditional) BRA instead of GOTO"},
- { 0, OPTIMIZE_CMP, NULL, "try to optimize some compares"},
- { 0, OPTIMIZE_DF, NULL, "thoroughly analyze data flow (memory and time intensive!)"},
-
- /* assembling options */
- { 0, ALT_ASM, NULL, "Use alternative assembler"},
- { 0, MPLAB_COMPAT, &pic16_mplab_comp, "enable compatibility mode for MPLAB utilities (MPASM/MPLINK)"},
-
- /* linking options */
- { 0, ALT_LINK, NULL, "Use alternative linker"},
- { 0, REP_UDATA, NULL, "Place udata variables at another section: udata_acs, udata_ovr, udata_shr"},
- { 0, IVT_LOC, NULL, "Set address of interrupt vector table."},
- { 0, NO_DEFLIBS, &pic16_options.nodefaultlibs, "do not link default libraries when linking"},
- { 0, USE_CRT, NULL, "use <crt-o> run-time initialization module"},
- { 0, "--no-crt", &pic16_options.no_crt, "do not link any default run-time initialization module"},
-
- /* debugging options */
- { 0, "--debug-xtra", &pic16_debug_verbose, "show more debug info in assembly output"},
- { 0, "--debug-ralloc", &pic16_ralloc_debug, "dump register allocator debug file *.d"},
- { 0, "--pcode-verbose", &pic16_pcode_verbose, "dump pcode related info"},
- { 0, "--calltree", &pic16_options.dumpcalltree, "dump call tree in .calltree file"},
- { 0, "--gstack", &pic16_options.gstack, "trace stack pointer push/pop to overflow"},
- { 0, NULL, NULL, NULL}
+ { 0, "--pno-banksel", &pic16_options.no_banksel, "do not generate BANKSEL assembler directives"},
+
+ /* optimization options */
+ { 0, OPT_BANKSEL, &pic16_options.opt_banksel, "set banksel optimization level (default=0 no)", CLAT_INTEGER },
+ { 0, "--denable-peeps", &pic16_enable_peeps, "explicit enable of peepholes"},
+ { 0, NO_OPTIMIZE_GOTO, NULL, "do NOT use (conditional) BRA instead of GOTO"},
+ { 0, OPTIMIZE_CMP, NULL, "try to optimize some compares"},
+ { 0, OPTIMIZE_DF, NULL, "thoroughly analyze data flow (memory and time intensive!)"},
+
+ /* assembling options */
+ { 0, ALT_ASM, &alt_asm, "Use alternative assembler", CLAT_STRING},
+ { 0, MPLAB_COMPAT, &pic16_mplab_comp, "enable compatibility mode for MPLAB utilities (MPASM/MPLINK)"},
+
+ /* linking options */
+ { 0, ALT_LINK, &alt_link, "Use alternative linker", CLAT_STRING },
+ { 0, REP_UDATA, &pic16_sectioninfo.at_udata, "Place udata variables at another section: udata_acs, udata_ovr, udata_shr", CLAT_STRING },
+ { 0, IVT_LOC, NULL, "Set address of interrupt vector table."},
+ { 0, NO_DEFLIBS, &pic16_options.nodefaultlibs, "do not link default libraries when linking"},
+ { 0, USE_CRT, NULL, "use <crt-o> run-time initialization module"},
+ { 0, "--no-crt", &pic16_options.no_crt, "do not link any default run-time initialization module"},
+
+ /* debugging options */
+ { 0, "--debug-xtra", &pic16_debug_verbose, "show more debug info in assembly output"},
+ { 0, "--debug-ralloc", &pic16_ralloc_debug, "dump register allocator debug file *.d"},
+ { 0, "--pcode-verbose", &pic16_pcode_verbose, "dump pcode related info"},
+ { 0, "--calltree", &pic16_options.dumpcalltree, "dump call tree in .calltree file"},
+ { 0, "--gstack", &pic16_options.gstack, "trace stack pointer push/pop to overflow"},
+ { 0, NULL, NULL, NULL}