You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.205
Former-commit-id: 7f59f7e792705db773f1caecdaa823092f4e2927
This commit is contained in:
parent
5cd5df71cc
commit
8e12397d70
55
external/llvm/lib/Target/BPF/BPFSubtarget.cpp
vendored
Normal file
55
external/llvm/lib/Target/BPF/BPFSubtarget.cpp
vendored
Normal file
@ -0,0 +1,55 @@
|
||||
//===-- BPFSubtarget.cpp - BPF Subtarget Information ----------------------===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file implements the BPF specific subclass of TargetSubtargetInfo.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "BPFSubtarget.h"
|
||||
#include "BPF.h"
|
||||
#include "llvm/Support/Host.h"
|
||||
#include "llvm/Support/TargetRegistry.h"
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
#define DEBUG_TYPE "bpf-subtarget"
|
||||
|
||||
#define GET_SUBTARGETINFO_TARGET_DESC
|
||||
#define GET_SUBTARGETINFO_CTOR
|
||||
#include "BPFGenSubtargetInfo.inc"
|
||||
|
||||
void BPFSubtarget::anchor() {}
|
||||
|
||||
BPFSubtarget &BPFSubtarget::initializeSubtargetDependencies(StringRef CPU,
|
||||
StringRef FS) {
|
||||
initializeEnvironment();
|
||||
initSubtargetFeatures(CPU, FS);
|
||||
return *this;
|
||||
}
|
||||
|
||||
void BPFSubtarget::initializeEnvironment() {
|
||||
HasJmpExt = false;
|
||||
}
|
||||
|
||||
void BPFSubtarget::initSubtargetFeatures(StringRef CPU, StringRef FS) {
|
||||
if (CPU == "probe")
|
||||
CPU = sys::detail::getHostCPUNameForBPF();
|
||||
if (CPU == "generic" || CPU == "v1")
|
||||
return;
|
||||
if (CPU == "v2") {
|
||||
HasJmpExt = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
BPFSubtarget::BPFSubtarget(const Triple &TT, const std::string &CPU,
|
||||
const std::string &FS, const TargetMachine &TM)
|
||||
: BPFGenSubtargetInfo(TT, CPU, FS), InstrInfo(),
|
||||
FrameLowering(initializeSubtargetDependencies(CPU, FS)),
|
||||
TLInfo(TM, *this) {}
|
Reference in New Issue
Block a user