summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/function-template-specialization.cpp
Commit message (Collapse)AuthorAgeFilesLines
* AST: Fix the linkage of static vars in fn template specializationsDavid Majnemer2014-12-161-0/+19
| | | | | | | | | | | | We that static variables in function template specializations were externally visible. The manglers assumed that externally visible static variables were numbered in Sema. We would end up mangling static variables in the same specialization with the same mangling number which would give all of them the same name. This fixes PR21904. llvm-svn: 224316
* Remove the -cxx-abi command-line flag.Hans Wennborg2014-01-141-1/+1
| | | | | | | | | | | | | | | This makes the C++ ABI depend entirely on the target: MS ABI for -win32 triples, Itanium otherwise. It's no longer possible to do weird combinations. To be able to run a test with a specific ABI without constraining it to a specific triple, new substitutions are added to lit: %itanium_abi_triple and %ms_abi_triple can be used to get the current target triple adjusted to the desired ABI. For example, if the test suite is running with the i686-pc-win32 target, %itanium_abi_triple will expand to i686-pc-mingw32. Differential Revision: http://llvm-reviews.chandlerc.com/D2545 llvm-svn: 199250
* Prepare for using MS ABI by default for Win32: update CodeGenCXX testsHans Wennborg2013-12-131-1/+1
| | | | llvm-svn: 197281
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
* Substitute unscoped template names.Anders Carlsson2009-09-171-7/+5
| | | | llvm-svn: 82119
* Get rid of the last grep.Anders Carlsson2009-09-171-2/+2
| | | | llvm-svn: 82115
* When mangling function template specialization, mangle the type encoding of ↵Anders Carlsson2009-09-171-4/+5
| | | | | | the original function template. Also, port mangle.cpp and function-template-specialization.cpp over to using FileCheck. llvm-svn: 82114
* Add basic substitution to the C++ mangler. It currently only looks at types.Anders Carlsson2009-09-171-3/+3
| | | | llvm-svn: 82102
* Update for LLVM API change.Owen Anderson2009-07-271-1/+1
| | | | llvm-svn: 77249
* Improve code generation for function template specializations:Douglas Gregor2009-06-291-1/+7
| | | | | | | | | | | | | | | | - 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
* Keep track of function template specializations, to eliminateDouglas Gregor2009-06-291-0/+21
redundant, implicit instantiations of function templates and provide a place where we can hang function template specializations. llvm-svn: 74454
OpenPOWER on IntegriCloud