Stephen Lin
a637fb8ccd
CodeGen: Have 'this'-returning constructors and destructors to take advantage of the new backend 'returned' attribute.
...
The backend will now use the generic 'returned' attribute to form tail calls where possible, as well as avoid save-restores of 'this' in some cases (specifically the cases that matter for the ARM C++ ABI).
This patch also reverts a prior front-end only partial implementation of these optimizations, since it's no longer required.
llvm-svn: 184205
2013-06-18 17:00:49 +00:00
Timur Iskhodzhanov
57cbe5c790
Better support for constructors with -cxx-abi microsoft, partly fixes PR12784
...
llvm-svn: 176186
2013-02-27 13:46:31 +00:00
Bill Wendling
e1c4a1babd
Update to use references to attribute groups instead of listing the attributes on the call/invoke instructions.
...
llvm-svn: 175878
2013-02-22 09:10:20 +00:00
Timur Iskhodzhanov
d619711c64
Abstract out emitting the vdtor calls and do it properly when using -cxx-abi microsoft; also fix vdtor calls for the ARM ABI
...
llvm-svn: 175271
2013-02-15 14:45:22 +00:00
Timur Iskhodzhanov
753875d324
... and now fix the +Asserts build
...
llvm-svn: 175054
2013-02-13 12:24:19 +00:00
Timur Iskhodzhanov
6d5dbc6464
Fix the microsoft-abi-structors test expectations to match both Release and Release+Asserts builds
...
llvm-svn: 175053
2013-02-13 12:14:25 +00:00
Timur Iskhodzhanov
ee6bc53365
Emit virtual/deleting destructors properly with -cxx-abi microsoft, PR15058
...
llvm-svn: 175045
2013-02-13 08:37:51 +00:00
Timur Iskhodzhanov
584248cf3c
Rename -constructors test to just -structors as in fact it tests dtors too. Also, fix a minor typo in the test.
...
llvm-svn: 174966
2013-02-12 13:22:47 +00:00