#define OFMSG_LRSUPPORT "--flr-support"
+#define OPTIMIZE_GOTO "--optimize-goto"
+
char *alt_asm=NULL;
char *alt_link=NULL;
{ 0, "--no-crt", &pic16_options.no_crt, "do not link any default run-time initialization module"},
{ 0, "--gstack", &pic16_options.gstack, "trace stack pointer push/pop to overflow"},
// { 0, OFMSG_LRSUPPORT, NULL, "use support functions for local register store/restore"},
+ { 0, OPTIMIZE_GOTO, NULL, "try to use (conditional) BRA instead of GOTO"},
{ 0, NULL, NULL, NULL}
};
return TRUE;
}
#endif
-
+
+#if 1
+ if (ISOPT(OPTIMIZE_GOTO)) {
+ pic16_options.opt_flags |= OF_OPTIMIZE_GOTO;
+ return TRUE;
+ }
+#endif
+
return FALSE;
}
pic16_options.no_crt = 0; /* use crt by default */
pic16_options.ip_stack = 1; /* set to 1 to enable ipop/ipush for stack */
pic16_options.gstack = 0;
+ pic16_options.debgen = 0;
}
static const char *