diff options
author | shadchin <shadchin@yandex-team.ru> | 2022-02-10 16:44:30 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:44:30 +0300 |
commit | 2598ef1d0aee359b4b6d5fdd1758916d5907d04f (patch) | |
tree | 012bb94d777798f1f56ac1cec429509766d05181 /contrib/libs/llvm12/include/llvm/Target/TargetMachine.h | |
parent | 6751af0b0c1b952fede40b19b71da8025b5d8bcf (diff) | |
download | ydb-2598ef1d0aee359b4b6d5fdd1758916d5907d04f.tar.gz |
Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/llvm12/include/llvm/Target/TargetMachine.h')
-rw-r--r-- | contrib/libs/llvm12/include/llvm/Target/TargetMachine.h | 138 |
1 files changed, 69 insertions, 69 deletions
diff --git a/contrib/libs/llvm12/include/llvm/Target/TargetMachine.h b/contrib/libs/llvm12/include/llvm/Target/TargetMachine.h index 4e934b5d4e..64a9976d26 100644 --- a/contrib/libs/llvm12/include/llvm/Target/TargetMachine.h +++ b/contrib/libs/llvm12/include/llvm/Target/TargetMachine.h @@ -23,36 +23,36 @@ #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Triple.h" #include "llvm/IR/DataLayout.h" -#include "llvm/IR/PassManager.h" +#include "llvm/IR/PassManager.h" #include "llvm/Pass.h" #include "llvm/Support/CodeGen.h" -#include "llvm/Support/Error.h" -#include "llvm/Target/CGPassBuilderOption.h" +#include "llvm/Support/Error.h" +#include "llvm/Target/CGPassBuilderOption.h" #include "llvm/Target/TargetOptions.h" #include <string> namespace llvm { -class AAManager; -template <typename IRUnitT, typename AnalysisManagerT, typename... ExtraArgTs> -class PassManager; -using ModulePassManager = PassManager<Module>; - +class AAManager; +template <typename IRUnitT, typename AnalysisManagerT, typename... ExtraArgTs> +class PassManager; +using ModulePassManager = PassManager<Module>; + class Function; class GlobalValue; -class MachineFunctionPassManager; -class MachineFunctionAnalysisManager; +class MachineFunctionPassManager; +class MachineFunctionAnalysisManager; class MachineModuleInfoWrapperPass; class Mangler; class MCAsmInfo; class MCContext; class MCInstrInfo; class MCRegisterInfo; -class MCStreamer; +class MCStreamer; class MCSubtargetInfo; class MCSymbol; class raw_pwrite_stream; -class PassBuilder; +class PassBuilder; class PassManagerBuilder; struct PerFunctionMIParsingState; class SMDiagnostic; @@ -130,7 +130,7 @@ public: const Triple &getTargetTriple() const { return TargetTriple; } StringRef getTargetCPU() const { return TargetCPU; } StringRef getTargetFeatureString() const { return TargetFS; } - void setTargetFeatureString(StringRef FS) { TargetFS = std::string(FS); } + void setTargetFeatureString(StringRef FS) { TargetFS = std::string(FS); } /// Virtual method implemented by subclasses that returns a reference to that /// target's TargetSubtargetInfo-derived member variable. @@ -261,9 +261,9 @@ public: Options.SupportsDebugEntryValues = Enable; } - bool getAIXExtendedAltivecABI() const { - return Options.EnableAIXExtendedAltivecABI; - } + bool getAIXExtendedAltivecABI() const { + return Options.EnableAIXExtendedAltivecABI; + } bool getUniqueSectionNames() const { return Options.UniqueSectionNames; } @@ -284,16 +284,16 @@ public: return Options.FunctionSections; } - /// Return true if visibility attribute should not be emitted in XCOFF, - /// corresponding to -mignore-xcoff-visibility. - bool getIgnoreXCOFFVisibility() const { - return Options.IgnoreXCOFFVisibility; - } - - /// Return true if XCOFF traceback table should be emitted, - /// corresponding to -xcoff-traceback-table. - bool getXCOFFTracebackTable() const { return Options.XCOFFTracebackTable; } - + /// Return true if visibility attribute should not be emitted in XCOFF, + /// corresponding to -mignore-xcoff-visibility. + bool getIgnoreXCOFFVisibility() const { + return Options.IgnoreXCOFFVisibility; + } + + /// Return true if XCOFF traceback table should be emitted, + /// corresponding to -xcoff-traceback-table. + bool getXCOFFTracebackTable() const { return Options.XCOFFTracebackTable; } + /// If basic blocks should be emitted into their own section, /// corresponding to -fbasic-block-sections. llvm::BasicBlockSection getBBSectionsType() const { @@ -305,19 +305,19 @@ public: return Options.BBSectionsFuncListBuf.get(); } - /// Returns true if a cast between SrcAS and DestAS is a noop. - virtual bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const { - return false; - } - - /// If the specified generic pointer could be assumed as a pointer to a - /// specific address space, return that address space. - /// - /// Under offloading programming, the offloading target may be passed with - /// values only prepared on the host side and could assume certain - /// properties. - virtual unsigned getAssumedAddrSpace(const Value *V) const { return -1; } - + /// Returns true if a cast between SrcAS and DestAS is a noop. + virtual bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const { + return false; + } + + /// If the specified generic pointer could be assumed as a pointer to a + /// specific address space, return that address space. + /// + /// Under offloading programming, the offloading target may be passed with + /// values only prepared on the host side and could assume certain + /// properties. + virtual unsigned getAssumedAddrSpace(const Value *V) const { return -1; } + /// Get a \c TargetIRAnalysis appropriate for the target. /// /// This is used to construct the new pass manager's target IR analysis pass, @@ -335,15 +335,15 @@ public: /// PassManagerBuilder::addExtension. virtual void adjustPassManager(PassManagerBuilder &) {} - /// Allow the target to modify the pass pipeline with New Pass Manager - /// (similar to adjustPassManager for Legacy Pass manager). - virtual void registerPassBuilderCallbacks(PassBuilder &, - bool DebugPassManager) {} - - /// Allow the target to register alias analyses with the AAManager for use - /// with the new pass manager. Only affects the "default" AAManager. - virtual void registerDefaultAliasAnalyses(AAManager &) {} - + /// Allow the target to modify the pass pipeline with New Pass Manager + /// (similar to adjustPassManager for Legacy Pass manager). + virtual void registerPassBuilderCallbacks(PassBuilder &, + bool DebugPassManager) {} + + /// Allow the target to register alias analyses with the AAManager for use + /// with the new pass manager. Only affects the "default" AAManager. + virtual void registerDefaultAliasAnalyses(AAManager &) {} + /// Add passes to the specified pass manager to get the specified file /// emitted. Typically this will involve several steps of code generation. /// This method should return true if emission of this file type is not @@ -383,8 +383,8 @@ public: /// The integer bit size to use for SjLj based exception handling. static constexpr unsigned DefaultSjLjDataSize = 32; virtual unsigned getSjLjDataSize() const { return DefaultSjLjDataSize; } - - static std::pair<int, int> parseBinutilsVersion(StringRef Version); + + static std::pair<int, int> parseBinutilsVersion(StringRef Version); }; /// This class describes a target machine that is implemented with the LLVM @@ -420,21 +420,21 @@ public: bool DisableVerify = true, MachineModuleInfoWrapperPass *MMIWP = nullptr) override; - virtual Error buildCodeGenPipeline(ModulePassManager &, - MachineFunctionPassManager &, - MachineFunctionAnalysisManager &, - raw_pwrite_stream &, raw_pwrite_stream *, - CodeGenFileType, CGPassBuilderOption, - PassInstrumentationCallbacks *) { - return make_error<StringError>("buildCodeGenPipeline is not overriden", - inconvertibleErrorCode()); - } - - virtual std::pair<StringRef, bool> getPassNameFromLegacyName(StringRef) { - llvm_unreachable( - "getPassNameFromLegacyName parseMIRPipeline is not overriden"); - } - + virtual Error buildCodeGenPipeline(ModulePassManager &, + MachineFunctionPassManager &, + MachineFunctionAnalysisManager &, + raw_pwrite_stream &, raw_pwrite_stream *, + CodeGenFileType, CGPassBuilderOption, + PassInstrumentationCallbacks *) { + return make_error<StringError>("buildCodeGenPipeline is not overriden", + inconvertibleErrorCode()); + } + + virtual std::pair<StringRef, bool> getPassNameFromLegacyName(StringRef) { + llvm_unreachable( + "getPassNameFromLegacyName parseMIRPipeline is not overriden"); + } + /// Add passes to the specified pass manager to get machine code emitted with /// the MCJIT. This method returns true if machine code is not supported. It /// fills the MCContext Ctx pointer which can be used to build custom @@ -455,10 +455,10 @@ public: raw_pwrite_stream *DwoOut, CodeGenFileType FileType, MCContext &Context); - Expected<std::unique_ptr<MCStreamer>> - createMCStreamer(raw_pwrite_stream &Out, raw_pwrite_stream *DwoOut, - CodeGenFileType FileType, MCContext &Ctx); - + Expected<std::unique_ptr<MCStreamer>> + createMCStreamer(raw_pwrite_stream &Out, raw_pwrite_stream *DwoOut, + CodeGenFileType FileType, MCContext &Ctx); + /// True if the target uses physical regs (as nearly all targets do). False /// for stack machines such as WebAssembly and other virtual-register /// machines. If true, all vregs must be allocated before PEI. If false, then |