summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/linetable-virtual-variadic.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Use musttail for variadic method thunks when possibleReid Kleckner2019-09-061-2/+3
| | | | | | | | | | | | | | | | | | | | | This avoids cloning variadic virtual methods when the target supports musttail and the return type is not covariant. I think we never implemented this previously because it doesn't handle the covariant case. But, in the MS ABI, there are some cases where vtable thunks must be emitted even when the variadic method defintion is not available, so it looks like we need to implement this. Do it for both ABIs, since it's a nice size improvement and simplification for Itanium. Emit an error when emitting thunks for variadic methods with a covariant return type. This case is essentially not implementable unless the ABI provides a way to perfectly forward variadic arguments without a tail call. Fixes PR43173. Differential Revision: https://reviews.llvm.org/D67028 llvm-svn: 371269
* [CodeGen] Revert commit https://reviews.llvm.org/rL342717Calixte Denizet2018-09-241-2/+2
| | | | llvm-svn: 342912
* [CodeGen] Add to emitted DebugLoc information about coverage when it's requiredCalixte Denizet2018-09-211-2/+2
| | | | | | | | | | | | | | | | | | | | Summary: Some lines have a hit counter where they should not have one. Cleanup stuff is located to the last line of the body which is most of the time a '}'. And Exception stuff is added at the beginning of a function and at the end (represented by '{' and '}'). So in such cases, the DebugLoc used in GCOVProfiling.cpp must be marked as not covered. This patch is a followup of https://reviews.llvm.org/D49915. Tests in projects/compiler_rt are fixed by: https://reviews.llvm.org/D49917 Reviewers: marco-c, davidxl Reviewed By: marco-c Subscribers: dblaikie, cfe-commits, sylvestre.ledru Differential Revision: https://reviews.llvm.org/D49916 llvm-svn: 342717
* [DEBUGINFO] Add support for emission of the debug directives only.Alexey Bataev2018-08-311-0/+1
| | | | | | | | | | | | | | | | Summary: Added option -gline-directives-only to support emission of the debug directives only. It behaves very similar to -gline-tables-only, except that it sets llvm debug info emission kind to llvm::DICompileUnit::DebugDirectivesOnly. Reviewers: echristo Subscribers: aprantl, fedor.sergeev, JDevlieghere, cfe-commits Differential Revision: https://reviews.llvm.org/D51177 llvm-svn: 341212
* Update testcase for upstream LLVM changes (r302469).Adrian Prantl2017-05-091-2/+4
| | | | llvm-svn: 302577
* Revert r302476 "Update testcase for upstream LLVM changes."Hans Wennborg2017-05-091-4/+2
| | | | | | That test update was for r302469, which was reverted in r302533 due to PR32977. llvm-svn: 302542
* Update testcase for upstream LLVM changes.Adrian Prantl2017-05-081-2/+4
| | | | llvm-svn: 302476
* Update to match LLVM changes for PR27284.Adrian Prantl2016-04-151-4/+0
| | | | | | | | | (Reverse the ownership between DICompileUnit and DISubprogram.) http://reviews.llvm.org/D19034 <rdar://problem/25256815> llvm-svn: 266445
* CodeGen: Update for debug info API change.Peter Collingbourne2015-11-051-3/+3
| | | | | | Differential Revision: http://reviews.llvm.org/D14266 llvm-svn: 252220
* Stop messing with the 'g' group of options in CompilerInvocation.Douglas Katzman2015-10-081-1/+1
| | | | | | | | | | | | | | | | With this change, most 'g' options are rejected by CompilerInvocation. They remain only as Driver options. The new way to request debug info from cc1 is with "-debug-info-kind={line-tables-only|limited|standalone}" and "-dwarf-version={2|3|4}". In the absence of a command-line option to specify Dwarf version, the Toolchain decides it, rather than placing Toolchain-specific logic in CompilerInvocation. Also fix a bug in the Windows compatibility argument parsing in which the "rightmost argument wins" principle failed. Differential Revision: http://reviews.llvm.org/D13221 llvm-svn: 249655
* DI: Update DISubprogram testcases after LLVM r246098Duncan P. N. Exon Smith2015-08-261-1/+1
| | | | llvm-svn: 246099
* Update testcases: DICompileUnits are now created distinct by DIBuilder.Adrian Prantl2015-06-301-1/+1
| | | | llvm-svn: 241098
* DebugInfo: Metadata constructs now start with DI*Duncan P. N. Exon Smith2015-04-291-3/+3
| | | | | | | | | | LLVM r236120 renamed debug info IR constructs to use a `DI` prefix, now that the `DIDescriptor` hierarchy has been gone for about a week. This commit was generated using the rename-md-di-nodes.sh upgrade script attached to PR23080, followed by running clang-format-diff.py on the `lib/` portion of the patch. llvm-svn: 236121
* CodeGenCXX: Test that linetables work with variadic virtual thunksDuncan P. N. Exon Smith2015-03-171-0/+23
Add a frontend test for PR22929, which was fixed by LLVM r232449. Besides the crash test, check that the `!dbg` attachment is sane since its presence was the trigger. llvm-svn: 232450
OpenPOWER on IntegriCloud