LLVM API Documentation
00001 //===- ValueMapper.h - Interface shared by lib/Transforms/Utils -*- C++ -*-===// 00002 // 00003 // The LLVM Compiler Infrastructure 00004 // 00005 // This file was developed by the LLVM research group and is distributed under 00006 // the University of Illinois Open Source License. See LICENSE.TXT for details. 00007 // 00008 //===----------------------------------------------------------------------===// 00009 // 00010 // This file defines the MapValue interface which is used by various parts of 00011 // the Transforms/Utils library to implement cloning and linking facilities. 00012 // 00013 //===----------------------------------------------------------------------===// 00014 00015 #ifndef VALUEMAPPER_H 00016 #define VALUEMAPPER_H 00017 00018 #include <map> 00019 00020 namespace llvm { 00021 class Value; 00022 class Instruction; 00023 typedef std::map<const Value *, Value *> ValueMapTy; 00024 00025 Value *MapValue(const Value *V, ValueMapTy &VM); 00026 void RemapInstruction(Instruction *I, ValueMapTy &VM); 00027 } // End llvm namespace 00028 00029 #endif