diff options
author | Jay Foad <jay.foad@gmail.com> | 2011-06-22 08:50:06 +0000 |
---|---|---|
committer | Jay Foad <jay.foad@gmail.com> | 2011-06-22 08:50:06 +0000 |
commit | 2a4a6fecf0b8c92223f8fdf19545b564b7d3fcde (patch) | |
tree | 09f247bb053efcc97691d90d131c424a76ba1db3 /include/llvm/InlineAsm.h | |
parent | 4383c282af954e4f65ae3b77c891fa41a4960a2a (diff) | |
download | external_llvm-2a4a6fecf0b8c92223f8fdf19545b564b7d3fcde.zip external_llvm-2a4a6fecf0b8c92223f8fdf19545b564b7d3fcde.tar.gz external_llvm-2a4a6fecf0b8c92223f8fdf19545b564b7d3fcde.tar.bz2 |
Extend ConstantUniqueMap with a new template parameter ValRefType,
representing a constant reference to ValType. Normally this is just
"const ValType &", but when ValType is a std::vector we want to use
ArrayRef as the reference type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133611 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/InlineAsm.h')
-rw-r--r-- | include/llvm/InlineAsm.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/llvm/InlineAsm.h b/include/llvm/InlineAsm.h index ed8f0f7..0d86086 100644 --- a/include/llvm/InlineAsm.h +++ b/include/llvm/InlineAsm.h @@ -25,15 +25,16 @@ class PointerType; class FunctionType; class Module; struct InlineAsmKeyType; -template<class ValType, class TypeClass, class ConstantClass, bool HasLargeKey> +template<class ValType, class ValRefType, class TypeClass, class ConstantClass, + bool HasLargeKey> class ConstantUniqueMap; template<class ConstantClass, class TypeClass, class ValType> struct ConstantCreator; class InlineAsm : public Value { friend struct ConstantCreator<InlineAsm, PointerType, InlineAsmKeyType>; - friend class ConstantUniqueMap<InlineAsmKeyType, PointerType, InlineAsm, - false>; + friend class ConstantUniqueMap<InlineAsmKeyType, const InlineAsmKeyType&, + PointerType, InlineAsm, false>; InlineAsm(const InlineAsm &); // do not implement void operator=(const InlineAsm&); // do not implement |