summaryrefslogtreecommitdiffstats
path: root/test/CodeGenCXX/mangle-exprs.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Richard Smith pointed out that there already is a proposal for init list ↵Sebastian Redl2012-02-251-4/+3
| | | | | | mangling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151462 91177308-0d34-0410-b5e6-96231b3b80d8
* Better mangling for new-expressions. Also, although we can't mangle ↵Sebastian Redl2012-02-251-0/+60
| | | | | | arbitrary initializer lists yet (we will need this), turn the crash into a controlled error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151455 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement name mangling for scalar value initialization. Reported on IRC by Xeo.Richard Smith2012-02-061-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149854 91177308-0d34-0410-b5e6-96231b3b80d8
* Update all tests other than Driver/std.cpp to use -std=c++11 rather thanRichard Smith2011-10-131-1/+1
| | | | | | | -std=c++0x. Patch by Ahmed Charles! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141900 91177308-0d34-0410-b5e6-96231b3b80d8
* Add name mangling for expr .* expr. Fixes PR9983 / <rdar://problem/9486332>.Douglas Gregor2011-06-051-0/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132659 91177308-0d34-0410-b5e6-96231b3b80d8
* Store a parameter index and function prototype depth in everyJohn McCall2011-05-011-0/+44
| | | | | | | | | | | | parameter node and use this to correctly mangle parameter references in function template signatures. A follow-up patch will improve the storage usage of these fields; here I've just done the lazy thing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130669 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the mangling for non-ADL call expressions that we justJohn McCall2011-04-281-0/+16
| | | | | | | | worked out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130376 91177308-0d34-0410-b5e6-96231b3b80d8
* Mangling of undeduced 'auto' types, as specified by Itanium C++ ABI.Richard Smith2011-02-211-1/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126140 91177308-0d34-0410-b5e6-96231b3b80d8
* fix PR5179 and correctly fix PR5831 to not miscompile.Chris Lattner2010-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | The X86-64 ABI code didn't handle the case when a struct would get classified and turn up as "NoClass INTEGER" for example. This is perfectly possible when the first slot is all padding (e.g. due to empty base classes). In this situation, the first 8-byte doesn't take a register at all, only the second 8-byte does. This fixes this by enhancing the x86-64 abi stuff to allow and handle this case, reverts the broken fix for PR5831, and enhances the target independent stuff to be able to handle an argument value in registers being accessed at an offset from the memory value. This is the last x86-64 calling convention related miscompile that I'm aware of. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109848 91177308-0d34-0410-b5e6-96231b3b80d8
* pass/return structs of char and short as i8/i16 to avoidChris Lattner2010-06-281-1/+1
| | | | | | | aweful through-memory coersion, just like we do for i32 now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107078 91177308-0d34-0410-b5e6-96231b3b80d8
* Give explicit template instantiations weak ODR linkage. FormerDouglas Gregor2010-03-131-5/+5
| | | | | | | | | | iterations of this patch gave explicit template instantiation link-once ODR linkage, which permitted the back end to eliminate unused symbols. Weak ODR linkage still requires the symbols to be generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98441 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-revert the explicit template instantiation linkage patch. I am beginning ↵Douglas Gregor2010-03-131-5/+5
| | | | | | to look incompetent git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98425 91177308-0d34-0410-b5e6-96231b3b80d8
* Reinstate patch to turn explicit template instantiations into weak symbolsDouglas Gregor2010-03-131-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98424 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert the linkage change for explicit template instantiations; something is ↵Douglas Gregor2010-03-121-5/+5
| | | | | | amiss git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98332 91177308-0d34-0410-b5e6-96231b3b80d8
* Give explicit template instantiations weak linkage (but don't deferDouglas Gregor2010-03-121-5/+5
| | | | | | | them). Fixes PR6578. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98328 91177308-0d34-0410-b5e6-96231b3b80d8
* Name mangling for cast expressions, from Matthias Schiffer! Fixes PR5876.Douglas Gregor2010-01-291-0/+44
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94811 91177308-0d34-0410-b5e6-96231b3b80d8