diff options
| author | 2020-08-03 15:06:44 +0000 | |
|---|---|---|
| committer | 2020-08-03 15:06:44 +0000 | |
| commit | b64793999546ed8adebaeebd9d8345d18db8927d (patch) | |
| tree | 4357c27b561d73b0e089727c6ed659f2ceff5f47 /gnu/llvm/lib/Target/ARC/ARCTargetMachine.cpp | |
| parent | Add support for UTF-8 DISPLAY-HINTs with octet length. For now only (diff) | |
| download | wireguard-openbsd-b64793999546ed8adebaeebd9d8345d18db8927d.tar.xz wireguard-openbsd-b64793999546ed8adebaeebd9d8345d18db8927d.zip | |
Remove LLVM 8.0.1 files.
Diffstat (limited to 'gnu/llvm/lib/Target/ARC/ARCTargetMachine.cpp')
| -rw-r--r-- | gnu/llvm/lib/Target/ARC/ARCTargetMachine.cpp | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/gnu/llvm/lib/Target/ARC/ARCTargetMachine.cpp b/gnu/llvm/lib/Target/ARC/ARCTargetMachine.cpp deleted file mode 100644 index 6f5bbd3b4ef..00000000000 --- a/gnu/llvm/lib/Target/ARC/ARCTargetMachine.cpp +++ /dev/null @@ -1,88 +0,0 @@ -//===- ARCTargetMachine.cpp - Define TargetMachine for ARC ------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// -//===----------------------------------------------------------------------===// - -#include "ARCTargetMachine.h" -#include "ARC.h" -#include "ARCTargetTransformInfo.h" -#include "llvm/CodeGen/Passes.h" -#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h" -#include "llvm/CodeGen/TargetPassConfig.h" -#include "llvm/Support/TargetRegistry.h" - -using namespace llvm; - -static Reloc::Model getRelocModel(Optional<Reloc::Model> RM) { - if (!RM.hasValue()) - return Reloc::Static; - return *RM; -} - -/// ARCTargetMachine ctor - Create an ILP32 architecture model -ARCTargetMachine::ARCTargetMachine(const Target &T, const Triple &TT, - StringRef CPU, StringRef FS, - const TargetOptions &Options, - Optional<Reloc::Model> RM, - Optional<CodeModel::Model> CM, - CodeGenOpt::Level OL, bool JIT) - : LLVMTargetMachine(T, - "e-m:e-p:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-" - "f32:32:32-i64:32-f64:32-a:0:32-n32", - TT, CPU, FS, Options, getRelocModel(RM), - getEffectiveCodeModel(CM, CodeModel::Small), OL), - TLOF(make_unique<TargetLoweringObjectFileELF>()), - Subtarget(TT, CPU, FS, *this) { - initAsmInfo(); -} - -ARCTargetMachine::~ARCTargetMachine() = default; - -namespace { - -/// ARC Code Generator Pass Configuration Options. -class ARCPassConfig : public TargetPassConfig { -public: - ARCPassConfig(ARCTargetMachine &TM, PassManagerBase &PM) - : TargetPassConfig(TM, PM) {} - - ARCTargetMachine &getARCTargetMachine() const { - return getTM<ARCTargetMachine>(); - } - - bool addInstSelector() override; - void addPreEmitPass() override; - void addPreRegAlloc() override; -}; - -} // end anonymous namespace - -TargetPassConfig *ARCTargetMachine::createPassConfig(PassManagerBase &PM) { - return new ARCPassConfig(*this, PM); -} - -bool ARCPassConfig::addInstSelector() { - addPass(createARCISelDag(getARCTargetMachine(), getOptLevel())); - return false; -} - -void ARCPassConfig::addPreEmitPass() { addPass(createARCBranchFinalizePass()); } - -void ARCPassConfig::addPreRegAlloc() { addPass(createARCExpandPseudosPass()); } - -// Force static initialization. -extern "C" void LLVMInitializeARCTarget() { - RegisterTargetMachine<ARCTargetMachine> X(getTheARCTarget()); -} - -TargetTransformInfo -ARCTargetMachine::getTargetTransformInfo(const Function &F) { - return TargetTransformInfo(ARCTTIImpl(this, F)); -} |
