LLVM
8.0.1
|
#include "X86TargetMachine.h"
#include "MCTargetDesc/X86MCTargetDesc.h"
#include "X86.h"
#include "X86CallLowering.h"
#include "X86LegalizerInfo.h"
#include "X86MacroFusion.h"
#include "X86Subtarget.h"
#include "X86TargetObjectFile.h"
#include "X86TargetTransformInfo.h"
#include "llvm/ADT/Optional.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Triple.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/CodeGen/ExecutionDomainFix.h"
#include "llvm/CodeGen/GlobalISel/CallLowering.h"
#include "llvm/CodeGen/GlobalISel/IRTranslator.h"
#include "llvm/CodeGen/GlobalISel/InstructionSelect.h"
#include "llvm/CodeGen/GlobalISel/Legalizer.h"
#include "llvm/CodeGen/GlobalISel/RegBankSelect.h"
#include "llvm/CodeGen/MachineScheduler.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Function.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/Pass.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Target/TargetLoweringObjectFile.h"
#include "llvm/Target/TargetOptions.h"
#include <memory>
#include <string>
Go to the source code of this file.
Functions | |
void | LLVMInitializeX86Target () |
static std::unique_ptr< TargetLoweringObjectFile > | createTLOF (const Triple &TT) |
static std::string | computeDataLayout (const Triple &TT) |
static Reloc::Model | getEffectiveRelocModel (const Triple &TT, bool JIT, Optional< Reloc::Model > RM) |
static CodeModel::Model | getEffectiveX86CodeModel (Optional< CodeModel::Model > CM, bool JIT, bool Is64Bit) |
INITIALIZE_PASS_BEGIN (X86ExecutionDomainFix, "x86-execution-domain-fix", "X86 Execution Domain Fix", false, false) INITIALIZE_PASS_END(X86ExecutionDomainFix | |
Variables | |
static cl::opt< bool > | EnableMachineCombinerPass ("x86-machine-combiner", cl::desc("Enable the machine combiner pass"), cl::init(true), cl::Hidden) |
static cl::opt< bool > | EnableCondBrFoldingPass ("x86-condbr-folding", cl::desc("Enable the conditional branch " "folding pass"), cl::init(false), cl::Hidden) |
static cl::opt< bool > | UseVZeroUpper ("x86-use-vzeroupper", cl::Hidden, cl::desc("Minimize AVX to SSE transition penalty"), cl::init(true)) |
x86 execution domain | fix |
x86 execution domain X86 Execution Domain | Fix |
x86 execution domain X86 Execution Domain | false |
Definition at line 107 of file X86TargetMachine.cpp.
References llvm::Triple::getEnvironment(), llvm::DataLayout::getManglingComponent(), llvm::Triple::GNUX32, llvm::Triple::isArch64Bit(), llvm::Triple::isOSDarwin(), llvm::Triple::isOSIAMCU(), llvm::Triple::isOSNaCl(), llvm::Triple::isOSWindows(), and llvm::MipsISD::Ret.
|
static |
Definition at line 85 of file X86TargetMachine.cpp.
References llvm::Triple::getArch(), llvm::Triple::isOSBinFormatCOFF(), llvm::Triple::isOSBinFormatELF(), llvm::Triple::isOSBinFormatMachO(), llvm::Triple::isOSFreeBSD(), llvm::Triple::isOSFuchsia(), llvm::Triple::isOSIAMCU(), llvm::Triple::isOSLinux(), llvm::Triple::isOSNaCl(), llvm::Triple::isOSSolaris(), llvm_unreachable, and llvm::Triple::x86_64.
|
static |
Definition at line 152 of file X86TargetMachine.cpp.
References llvm::Reloc::DynamicNoPIC, llvm::Triple::getArch(), llvm::Optional< T >::hasValue(), is64Bit(), llvm::Triple::isOSDarwin(), llvm::Triple::isOSWindows(), llvm::Reloc::PIC_, llvm::NVPTX::PTXCvtMode::RM, llvm::Reloc::Static, and llvm::Triple::x86_64.
|
static |
Definition at line 194 of file X86TargetMachine.cpp.
References llvm::CodeModel::Large, llvm::report_fatal_error(), llvm::CodeModel::Small, and llvm::CodeModel::Tiny.
INITIALIZE_PASS_BEGIN | ( | X86ExecutionDomainFix | , |
"x86-execution-domain-fix" | , | ||
"X86 Execution Domain Fix" | , | ||
false | , | ||
false | |||
) |
Referenced by llvm::X86TargetMachine::getTargetTransformInfo().
void LLVMInitializeX86Target | ( | ) |
Definition at line 63 of file X86TargetMachine.cpp.
References llvm::PassRegistry::getPassRegistry(), llvm::getTheX86_32Target(), llvm::getTheX86_64Target(), llvm::initializeEvexToVexInstPassPass(), llvm::initializeFixupBWInstPassPass(), llvm::initializeFixupLEAPassPass(), llvm::initializeGlobalISel(), llvm::initializeShadowCallStackPass(), llvm::initializeWinEHStatePassPass(), llvm::initializeX86AvoidSFBPassPass(), llvm::initializeX86CallFrameOptimizationPass(), llvm::initializeX86CmovConverterPassPass(), llvm::initializeX86CondBrFoldingPassPass(), llvm::initializeX86DomainReassignmentPass(), llvm::initializeX86ExecutionDomainFixPass(), llvm::initializeX86FlagsCopyLoweringPassPass(), llvm::initializeX86SpeculativeLoadHardeningPassPass(), X, and Y.
|
static |
Referenced by llvm::X86TargetMachine::createPassConfig().
|
static |
Referenced by llvm::X86TargetMachine::createPassConfig().
x86 execution domain X86 Execution Domain false |
Definition at line 392 of file X86TargetMachine.cpp.
x86 execution domain fix |
Definition at line 392 of file X86TargetMachine.cpp.
x86 execution domain X86 Execution Domain Fix |
Definition at line 392 of file X86TargetMachine.cpp.
|
static |
Referenced by llvm::X86TargetMachine::createPassConfig(), and llvm::X86TargetMachine::getSubtargetImpl().