1//===-- MCTargetOptionsCommandFlags.h --------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file contains machine code-specific flags that are shared between
10// different command line tools.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_MC_MCTARGETOPTIONSCOMMANDFLAGS_H
15#define LLVM_MC_MCTARGETOPTIONSCOMMANDFLAGS_H
16
17#include <optional>
18#include <string>
19
20namespace llvm {
21
22class MCTargetOptions;
23enum class EmitDwarfUnwindType;
24
25namespace mc {
26
27bool getRelaxAll();
28std::optional<bool> getExplicitRelaxAll();
29
30bool getIncrementalLinkerCompatible();
31
32int getDwarfVersion();
33
34bool getDwarf64();
35
36EmitDwarfUnwindType getEmitDwarfUnwind();
37
38bool getEmitCompactUnwindNonCanonical();
39
40bool getShowMCInst();
41
42bool getFatalWarnings();
43
44bool getNoWarn();
45
46bool getNoDeprecatedWarn();
47
48bool getNoTypeCheck();
49
50std::string getABIName();
51
52std::string getAsSecureLogFile();
53
54/// Create this object with static storage to register mc-related command
55/// line options.
56struct RegisterMCTargetOptionsFlags {
57 RegisterMCTargetOptionsFlags();
58};
59
60MCTargetOptions InitMCTargetOptionsFromFlags();
61
62} // namespace mc
63
64} // namespace llvm
65
66#endif
67

source code of llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h