1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * Copyright (C) 2015 Josh Poimboeuf <jpoimboe@redhat.com> 4 */ 5 #ifndef _BUILTIN_H 6 #define _BUILTIN_H 7 8 #include <subcmd/parse-options.h> 9 10 struct opts { 11 /* actions: */ 12 bool dump_orc; 13 bool hack_jump_label; 14 bool hack_noinstr; 15 bool hack_skylake; 16 bool ibt; 17 bool mcount; 18 bool noinstr; 19 bool orc; 20 bool retpoline; 21 bool rethunk; 22 bool unret; 23 bool sls; 24 bool stackval; 25 bool static_call; 26 bool uaccess; 27 int prefix; 28 bool cfi; 29 bool noabs; 30 31 /* options: */ 32 bool backtrace; 33 bool dryrun; 34 bool link; 35 bool mnop; 36 bool module; 37 bool no_unreachable; 38 const char *output; 39 bool sec_address; 40 bool stats; 41 bool verbose; 42 bool werror; 43 }; 44 45 extern struct opts opts; 46 47 int cmd_parse_options(int argc, const char **argv, const char * const usage[]); 48 49 int objtool_run(int argc, const char **argv); 50 51 void print_args(void); 52 53 #endif /* _BUILTIN_H */ 54