diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2006-01-16 21:06:01 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2006-01-16 21:06:01 +0000 |
commit | e86bf519e1ea57a84d37422ec364f89c322e3ef4 (patch) | |
tree | 297da20423cca7cd83e39f79aa03b80fcaf281bb /include/llvm/Assembly/AutoUpgrade.h | |
parent | 84a0605feb92b085b5cf4758b5b14d632fdd8974 (diff) |
For PR411:
This file makes the helper functions for auto-upgrade of llvm assembly and
bytecode more accessible. This is part of de-overloading of intrinsic
functions to support the flat symbol table (no type planes).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25365 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Assembly/AutoUpgrade.h')
-rw-r--r-- | include/llvm/Assembly/AutoUpgrade.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/include/llvm/Assembly/AutoUpgrade.h b/include/llvm/Assembly/AutoUpgrade.h new file mode 100644 index 0000000000..fbbc7b5e8e --- /dev/null +++ b/include/llvm/Assembly/AutoUpgrade.h @@ -0,0 +1,33 @@ +//===-- llvm/Assembly/AutoUpgrade.h - AutoUpgrade Helpers --------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file was developed by Reid Spencer is distributed under the University +// of Illinois Open Source License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// These functions are implemented by the lib/VMCore/AutoUpgrade.cpp. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_ASSEMBLY_AUTOUPGRADE_H +#define LLVM_ASSEMBLY_AUTOUPGRADE_H + +namespace llvm { + class Function; + + /// This function inspects the Function \p F to see if it is an old overloaded + /// intrinsic. If it is, the Function's name is changed to add a suffix that + /// indicates the kind of arguments or result that it accepts. In LLVM release + /// 1.7, the overloading of intrinsic functions was replaced with separate + /// functions for each of the various argument sizes. This function implements + /// the auto-upgrade feature from the old overloaded names to the new + /// non-overloaded names. + /// @param F The Function to potentially auto-upgrade. + /// @brief Remove overloaded intrinsic function names. + bool UpgradeIntrinsicFunction(Function* F); + +} // End llvm namespace + +#endif |