Add a new PseudoSourceValue class, which will be used to help track

memory reference information in the backend. Most of this was written by
Florian Brander, cleanup and updating to TOT by me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46556 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2008-01-30 16:35:31 +00:00
parent b4b0417220
commit f38dc192dd
3 changed files with 96 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
//===-- llvm/CodeGen/PseudoSourceValue.cpp ----------------------*- C++ -*-===//
//
// 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 PseudoSourceValue class.
//
//===----------------------------------------------------------------------===//
#include "llvm/CodeGen/PseudoSourceValue.h"
#include "llvm/DerivedTypes.h"
namespace llvm {
const PseudoSourceValue PseudoSourceValue::FPRel("FPRel");
const PseudoSourceValue PseudoSourceValue::SPRel("SPRel");
const PseudoSourceValue PseudoSourceValue::GPRel("GPRel");
const PseudoSourceValue PseudoSourceValue::TPRel("TPRel");
const PseudoSourceValue PseudoSourceValue::CPRel("CPRel");
const PseudoSourceValue PseudoSourceValue::JTRel("JTRel");
PseudoSourceValue::PseudoSourceValue(const char *_name) :
Value(PointerType::getUnqual(Type::Int8Ty), PseudoSourceValueVal),
name(_name) {
}
void PseudoSourceValue::print(std::ostream &OS) const {
OS << name;
}
}