285baac67d722beb6854f5faa45ee1aa62a7ce92 |
|
17-Jul-2012 |
Joao Matos <ripzonetriton@gmail.com> |
[Windows] Abstract pure virtual method calls in the ABI. Fix the Windows ABI to forward to the correct function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
9ee494f98610dcd79441dce469d7bf609fcd7b92 |
|
24-Jun-2012 |
Charles Davis <cdavis@mines.edu> |
IRGen: Factor v-table generation into the CGCXXABI object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
20bb175cb8ae5844034828db094fb948c0e3454a |
|
01-May-2012 |
John McCall <rjmccall@apple.com> |
Abstract the emission of global destructors into ABI-specific code and only consider using __cxa_atexit in the Itanium logic. The default logic is to use atexit(). Emit "guarded" initializers in Microsoft mode unconditionally. This is definitely not correct, but it's closer to correct than just not emitting the initializer. Based on a patch by Timur Iskhodzhanov! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
e2b45e2a43ae46bc00026b63ba7c04ef2b78c3ff |
|
01-May-2012 |
John McCall <rjmccall@apple.com> |
Refactor the C++ ABI code a little bit to take advantage of what I'm going to treat as basically universal properties of array-cookie code. Implement MS array cookies on top of that. Based on a patch by Timur Iskhodzhanov! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
beeb460aa571d23318fc0f6b8abcd868def791fa |
|
04-Apr-2012 |
John McCall <rjmccall@apple.com> |
ErrorUnsupported on array cookies in the MS C++ ABI code; patch by Timur Iskhodzhanov. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
5f9e272e632e951b1efe824cd16acb4d96077930 |
|
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports them into the clang namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
fc8f0e14ad142ed811e90fbd9a30e419e301c717 |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
fix a bunch of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
fd708265e3b1dcfaae6a6832186aabb0de0c0aef |
|
27-Jan-2011 |
John McCall <rjmccall@apple.com> |
Notes on dynamic array cookies in MSVC. My thanks to chapuni for his help in investigating this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124351 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
14110477887e3dc168ffc6c191e72d705051f99e |
|
13-Jan-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Move name mangling support from CodeGen to AST. In the process, perform a number of refactorings: - Move MiscNameMangler member functions to MangleContext - Remove GlobalDecl dependency from MangleContext - Make MangleContext abstract and move Itanium/Microsoft functionality to their own classes/files - Implement ASTContext::createMangleContext and have CodeGen use it No (intended) functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123386 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
3f59c975aa5d047f7edd1b900b5e885c38af0ef7 |
|
26-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
The -fshort-wchar option causes wchar_t to become unsigned, in addition to being 16-bits in size. Implement this by splitting WChar into two enums, like we have for char. This fixes a miscompmilation of XULRunner, PR8856. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
7536dd5e6c99584481b7dab68b7e7d8df9c54054 |
|
20-Dec-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new type, PackExpansionType, to capture types that are pack expansions, e.g. given template<typename... Types> struct tuple; template<typename... Types> struct tuple_of_refs { typedef tuple<Types&...> types; }; the type of the "types" typedef is a PackExpansionType whose pattern is Types&. This commit introduces support for creating pack expansions for template type arguments, as above, but not for any other kind of pack expansion, nor for any form of instantiation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
ee743f903858e337434ac0335f147f4de4ecae05 |
|
09-Nov-2010 |
Charles Davis <cdavis@mines.edu> |
Use the right calling convention when mangling names in the Microsoft C++ mangler. Now member functions and pointers thereof have their calling convention mangled as __thiscall if they have the default CC (even though, they technically still have the __cdecl CC). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
5cd91b513455fd7753e8815b54f0a49bbca6602d |
|
08-Sep-2010 |
John McCall <rjmccall@apple.com> |
Implement ARM static local initialization guards, which are more compact than Itanium guards and use a slightly different compiled-in API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113330 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
52fc314e1b5e1baee6305067cf831763d02bd243 |
|
03-Sep-2010 |
Dawn Perchik <dawn@burble.org> |
Add symantic support for the Pascal calling convention via "__attribute((pascal))" or "__pascal" (and "_pascal" under -fborland-extensions). Support still needs to be added to llvm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112939 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
4c40d98ab7acf5f27fa89b17bd8fc0ef7683df37 |
|
31-Aug-2010 |
John McCall <rjmccall@apple.com> |
Teach IR generation to return 'this' from constructors and destructors under the ARM ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112588 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
d608cdb7c044365cf4e8764ade1e11e99c176078 |
|
22-Aug-2010 |
John McCall <rjmccall@apple.com> |
Experiment with using first-class aggregates to represent member function pointers. I find the resulting code to be substantially cleaner, and it makes it very easy to use the same APIs for data member pointers (which I have conscientiously avoided here), and it avoids a plethora of potential inefficiencies due to excessive memory copying, but we'll have to see if it actually works. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
9b7d6701dabc24387cc152e4d13bf9aec6aa461a |
|
18-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
zap dead code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111365 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
071cc7deffad608165b1ddd5263e8bf181861520 |
|
16-Aug-2010 |
Charles Davis <cdavis@mines.edu> |
Implement support for member pointers under the Microsoft C++ ABI in the AST library. This also adds infrastructure for supporting multiple C++ ABIs in the AST. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111117 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
4d254836f4a6a03fb3c77d0636c3cb5475540eb0 |
|
03-Jul-2010 |
Charles Davis <cdavis@mines.edu> |
Mangle Objective-C pointers and block pointers in the Microsoft C++ Mangler. ObjC pointers were easy enough (as far as the ABI is concerned, they're just pointers to structs), but I had to invent a new mangling for block pointers. This is particularly worrying with the Microsoft ABI, because it is a vendor-specific ABI; extending it could come back to bite us later when MS extends it on their own (and you know they will). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107572 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
08778269cfbf803fb216870060c60eb2adb25ef6 |
|
03-Jul-2010 |
Charles Davis <cdavis@mines.edu> |
Fix mangling of array dimensions in the Microsoft C++ Mangler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107568 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
cd712cb5711b597bf3a2a67a4027e2238c8b9828 |
|
03-Jul-2010 |
Charles Davis <cdavis@mines.edu> |
Mangle member pointer types in the Microsoft C++ Mangler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
1139da148e44193a71585f418be96ef9c5f6defa |
|
03-Jul-2010 |
Charles Davis <cdavis@mines.edu> |
Fix mangling of function pointers in the Microsoft C++ Mangler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
4f0a3376a5e5c9028b0c736ac935895aabdb5fcd |
|
03-Jul-2010 |
Charles Davis <cdavis@mines.edu> |
Fix mangling of array parameters for functions in the Microsoft C++ Mangler. Only actual functions get mangled correctly; I don't know how to fix it for function pointers yet. Thanks to John McCall for the hint. Also, mangle anonymous tag types. I don't have a suitable testcase yet; I have a feeling that that's going to need support for static locals, and I haven't figured out exactly how MSVC's scheme for mangling those works. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
0b8fe8c68eb503b9955f13c0c27b18b1f8321158 |
|
30-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Mangle arrays in the Microsoft C++ Mangler. It's not quite finished (it doesn't mangle array parameters right), but I think that should be fixed in Sema (Doug, John, what do you think?). Also, stub out the remaining mangleType() routines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107264 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
3a0d41d29192ff42870310e33800939f4e34bb55 |
|
26-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Mangle pointer and (lvalue) reference types in the Microsoft C++ Mangler. Also, fix mangling of throw specs. Turns out MSVC totally ignores throw specs when mangling names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
564360be450b319aeafc26698be9811837bfb826 |
|
24-Jun-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Patch to correctly mangle block helper functions when block literal is declared inside a ctor/dtor. Fixes radr 8096995. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
c62458f6aead5e4c0d0f4534d52142e7864ba02b |
|
18-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Mangle tag types (unions, structs, classes, enums) in the Microsoft C++ Mangler. Also, test that static members with default visibility in a struct have the right mangling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106276 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
21e2a7e8d38120e358bead9e1f14ed526d37bc90 |
|
17-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Mangle operator names in the Microsoft C++ Mangler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106211 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
65161d17cbf8980e24643c65b74a5127dcb7ac22 |
|
16-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Start mangling function types in the Microsoft C++ Mangler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
b021f8bd445959e2a5c958624a464ff621253ae4 |
|
14-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Microsoft C++ Mangler: - Mangle qualifiers. - Start mangling variables' types into the name. A variable declared with a builtin type should now mangle properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
570d2763bc9ee6c26b12c0b6316dd87261520bfe |
|
12-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Microsoft C++ Mangler: - Don't mangle static variables at global scope. - Add support for mangling builtin types. This will be used later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105881 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
971154db24429b103280d15423b8c200cfb2380c |
|
11-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
When mangling for the Microsoft C++ ABI, mangle variables in the global namespace, too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
e60cea829b3bc45fcfedbfdb08cffb61f5bde79f |
|
11-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Start implementing the Microsoft-style name mangler. Mangle simple names (but not their types; that's later). NOTE: Right now, variables in the global namespace don't get mangled, even though they're supposed to be. This is because the default mangler implements the shouldMangleDeclName() method that tells clang not to mangle them. This will be fixed in a later patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
98b7c5c496dfccb39287b8f7d8f1444594936d10 |
|
11-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Add an option to specify the target C++ ABI to the frontend. Use it to select either the default Itanium ABI or the new, experimental Microsoft ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|
c3926645d70842eae22641df1bf69da457a0ff11 |
|
10-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Add a stub Microsoft Visual C++ ABI class (with stub mangler). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/lib/CodeGen/MicrosoftCXXABI.cpp
|