diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-06-29 22:39:32 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-06-29 22:39:32 +0000 |
commit | e8925dbc1d66285c4909e51d76ef61421be55d03 (patch) | |
tree | c4c51db7c92b60b686b6b9decc66ed51cfb9b2cd /clang/lib/CodeGen/CodeGenModule.h | |
parent | 2be8bf44cd0cc8719d01e947beda7640406b4db4 (diff) | |
download | bcm5719-llvm-e8925dbc1d66285c4909e51d76ef61421be55d03.tar.gz bcm5719-llvm-e8925dbc1d66285c4909e51d76ef61421be55d03.zip |
Improve code generation for function template specializations:
- Track implicit instantiations vs. the not-yet-supported explicit
specializations
- Give implicit instantiations of function templates (and member
functions of class templates) linkonce_odr linkage.
- Improve name mangling for function template specializations,
including the template arguments of the instantiation and the return
type of the function.
Note that our name-mangling is improved, but not correct: we still
don't mangle substitutions, although the manglings we produce can be
demangled.
llvm-svn: 74466
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index 4d50e8946bd..ba9f1b28a07 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -373,7 +373,8 @@ public: GVA_Internal, GVA_C99Inline, GVA_CXXInline, - GVA_StrongExternal + GVA_StrongExternal, + GVA_TemplateInstantiation }; private: |