diff options
Diffstat (limited to 'contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp')
| -rw-r--r-- | contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp | 152 | 
1 files changed, 0 insertions, 152 deletions
diff --git a/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp b/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp deleted file mode 100644 index da3ef4b771f3..000000000000 --- a/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp +++ /dev/null @@ -1,152 +0,0 @@ -//===-- llvm/CodeGen/PseudoSourceValue.cpp ----------------------*- 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 implements the PseudoSourceValue class. -// -//===----------------------------------------------------------------------===// - -#include "llvm/CodeGen/PseudoSourceValue.h" -#include "llvm/ADT/STLExtras.h" -#include "llvm/CodeGen/MachineFrameInfo.h" -#include "llvm/CodeGen/TargetInstrInfo.h" -#include "llvm/IR/DerivedTypes.h" -#include "llvm/IR/LLVMContext.h" -#include "llvm/Support/ErrorHandling.h" -#include "llvm/Support/raw_ostream.h" -using namespace llvm; - -static const char *const PSVNames[] = { -    "Stack", "GOT", "JumpTable", "ConstantPool", "FixedStack", -    "GlobalValueCallEntry", "ExternalSymbolCallEntry"}; - -PseudoSourceValue::PseudoSourceValue(unsigned Kind, const TargetInstrInfo &TII) -    : Kind(Kind) { -  AddressSpace = TII.getAddressSpaceForPseudoSourceKind(Kind); -} - - -PseudoSourceValue::~PseudoSourceValue() {} - -void PseudoSourceValue::printCustom(raw_ostream &O) const { -  if (Kind < TargetCustom) -    O << PSVNames[Kind]; -  else -    O << "TargetCustom" << Kind; -} - -bool PseudoSourceValue::isConstant(const MachineFrameInfo *) const { -  if (isStack()) -    return false; -  if (isGOT() || isConstantPool() || isJumpTable()) -    return true; -  llvm_unreachable("Unknown PseudoSourceValue!"); -} - -bool PseudoSourceValue::isAliased(const MachineFrameInfo *) const { -  if (isStack() || isGOT() || isConstantPool() || isJumpTable()) -    return false; -  llvm_unreachable("Unknown PseudoSourceValue!"); -} - -bool PseudoSourceValue::mayAlias(const MachineFrameInfo *) const { -  return !(isGOT() || isConstantPool() || isJumpTable()); -} - -bool FixedStackPseudoSourceValue::isConstant( -    const MachineFrameInfo *MFI) const { -  return MFI && MFI->isImmutableObjectIndex(FI); -} - -bool FixedStackPseudoSourceValue::isAliased(const MachineFrameInfo *MFI) const { -  if (!MFI) -    return true; -  return MFI->isAliasedObjectIndex(FI); -} - -bool FixedStackPseudoSourceValue::mayAlias(const MachineFrameInfo *MFI) const { -  if (!MFI) -    return true; -  // Spill slots will not alias any LLVM IR value. -  return !MFI->isSpillSlotObjectIndex(FI); -} - -void FixedStackPseudoSourceValue::printCustom(raw_ostream &OS) const { -  OS << "FixedStack" << FI; -} - -CallEntryPseudoSourceValue::CallEntryPseudoSourceValue( -    unsigned Kind, const TargetInstrInfo &TII) -    : PseudoSourceValue(Kind, TII) {} - -bool CallEntryPseudoSourceValue::isConstant(const MachineFrameInfo *) const { -  return false; -} - -bool CallEntryPseudoSourceValue::isAliased(const MachineFrameInfo *) const { -  return false; -} - -bool CallEntryPseudoSourceValue::mayAlias(const MachineFrameInfo *) const { -  return false; -} - -GlobalValuePseudoSourceValue::GlobalValuePseudoSourceValue( -    const GlobalValue *GV, -    const TargetInstrInfo &TII) -    : CallEntryPseudoSourceValue(GlobalValueCallEntry, TII), GV(GV) {} -ExternalSymbolPseudoSourceValue::ExternalSymbolPseudoSourceValue( -    const char *ES, const TargetInstrInfo &TII) -    : CallEntryPseudoSourceValue(ExternalSymbolCallEntry, TII), ES(ES) {} - -PseudoSourceValueManager::PseudoSourceValueManager( -    const TargetInstrInfo &TIInfo) -    : TII(TIInfo), -      StackPSV(PseudoSourceValue::Stack, TII), -      GOTPSV(PseudoSourceValue::GOT, TII), -      JumpTablePSV(PseudoSourceValue::JumpTable, TII), -      ConstantPoolPSV(PseudoSourceValue::ConstantPool, TII) {} - -const PseudoSourceValue *PseudoSourceValueManager::getStack() { -  return &StackPSV; -} - -const PseudoSourceValue *PseudoSourceValueManager::getGOT() { return &GOTPSV; } - -const PseudoSourceValue *PseudoSourceValueManager::getConstantPool() { -  return &ConstantPoolPSV; -} - -const PseudoSourceValue *PseudoSourceValueManager::getJumpTable() { -  return &JumpTablePSV; -} - -const PseudoSourceValue * -PseudoSourceValueManager::getFixedStack(int FI) { -  std::unique_ptr<FixedStackPseudoSourceValue> &V = FSValues[FI]; -  if (!V) -    V = llvm::make_unique<FixedStackPseudoSourceValue>(FI, TII); -  return V.get(); -} - -const PseudoSourceValue * -PseudoSourceValueManager::getGlobalValueCallEntry(const GlobalValue *GV) { -  std::unique_ptr<const GlobalValuePseudoSourceValue> &E = -      GlobalCallEntries[GV]; -  if (!E) -    E = llvm::make_unique<GlobalValuePseudoSourceValue>(GV, TII); -  return E.get(); -} - -const PseudoSourceValue * -PseudoSourceValueManager::getExternalSymbolCallEntry(const char *ES) { -  std::unique_ptr<const ExternalSymbolPseudoSourceValue> &E = -      ExternalCallEntries[ES]; -  if (!E) -    E = llvm::make_unique<ExternalSymbolPseudoSourceValue>(ES, TII); -  return E.get(); -}  | 
