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
10struct 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
30	/* options: */
31	bool backtrace;
32	bool backup;
33	bool dryrun;
34	bool link;
35	bool mnop;
36	bool module;
37	bool no_unreachable;
38	bool sec_address;
39	bool stats;
40	bool verbose;
41};
42
43extern struct opts opts;
44
45extern int cmd_parse_options(int argc, const char **argv, const char * const usage[]);
46
47extern int objtool_run(int argc, const char **argv);
48
49#endif /* _BUILTIN_H */
50