86 lines
1.9 KiB
C++
86 lines
1.9 KiB
C++
//===-- MCTargetOptionsCommandFlags.h --------------------------*- C++ -*-===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file contains machine code-specific flags that are shared between
|
|
// different command line tools.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_MC_MCTARGETOPTIONSCOMMANDFLAGS_H
|
|
#define LLVM_MC_MCTARGETOPTIONSCOMMANDFLAGS_H
|
|
|
|
#include "llvm/Support/Compiler.h"
|
|
#include <optional>
|
|
#include <string>
|
|
|
|
namespace llvm {
|
|
|
|
class MCTargetOptions;
|
|
enum class RelocSectionSymType;
|
|
enum class EmitDwarfUnwindType;
|
|
class StringRef;
|
|
|
|
namespace mc {
|
|
|
|
LLVM_ABI bool getRelaxAll();
|
|
LLVM_ABI std::optional<bool> getExplicitRelaxAll();
|
|
|
|
LLVM_ABI bool getIncrementalLinkerCompatible();
|
|
|
|
LLVM_ABI bool getFDPIC();
|
|
|
|
LLVM_ABI int getDwarfVersion();
|
|
|
|
LLVM_ABI bool getDwarf64();
|
|
|
|
LLVM_ABI EmitDwarfUnwindType getEmitDwarfUnwind();
|
|
|
|
LLVM_ABI bool getEmitCompactUnwindNonCanonical();
|
|
|
|
LLVM_ABI bool getEmitSFrameUnwind();
|
|
|
|
LLVM_ABI bool getShowMCInst();
|
|
|
|
LLVM_ABI bool getFatalWarnings();
|
|
|
|
LLVM_ABI bool getNoWarn();
|
|
|
|
LLVM_ABI bool getNoDeprecatedWarn();
|
|
|
|
LLVM_ABI bool getNoTypeCheck();
|
|
|
|
LLVM_ABI bool getSaveTempLabels();
|
|
|
|
LLVM_ABI bool getCrel();
|
|
|
|
LLVM_ABI bool getImplicitMapSyms();
|
|
|
|
LLVM_ABI bool getX86RelaxRelocations();
|
|
|
|
LLVM_ABI bool getX86Sse2Avx();
|
|
|
|
LLVM_ABI RelocSectionSymType getRelocSectionSym();
|
|
|
|
LLVM_ABI StringRef getABIName();
|
|
|
|
LLVM_ABI StringRef getAsSecureLogFile();
|
|
|
|
/// Create this object with static storage to register mc-related command
|
|
/// line options.
|
|
struct RegisterMCTargetOptionsFlags {
|
|
LLVM_ABI RegisterMCTargetOptionsFlags();
|
|
};
|
|
|
|
LLVM_ABI MCTargetOptions InitMCTargetOptionsFromFlags();
|
|
|
|
} // namespace mc
|
|
|
|
} // namespace llvm
|
|
|
|
#endif
|