Commit Graph

13 Commits

Author SHA1 Message Date
Vedant Kumar f8e09c3bb6 [test] Fix typos in a few tests (NFC)
Patch by Kai Zhao!

llvm-svn: 245817
2015-08-23 18:53:59 +00:00
Timur Iskhodzhanov 5750f56a2b Improve comments in vtordisp tests: fix a typo, add a bit more clarity
llvm-svn: 221524
2014-11-07 14:11:14 +00:00
Timur Iskhodzhanov 9f23b203d3 Add yet another vtordisp test
llvm-svn: 206974
2014-04-23 12:46:26 +00:00
Timur Iskhodzhanov 6b12850d27 Fix PR19487, PR19505 and PR19506 -- redundant vtordisp thunks when the final overrider is present in both a vbase and nvbase
Reviewed at http://reviews.llvm.org/D3449

llvm-svn: 206908
2014-04-22 17:32:02 +00:00
Timur Iskhodzhanov 057fa3a5a5 Fix PR19408 - Missing static this adjustment in a vtordisp thunk
Also fix a few other vtordisp-related bugs.

Reviewed at http://reviews.llvm.org/D3400

llvm-svn: 206457
2014-04-17 11:01:41 +00:00
Timur Iskhodzhanov c84eb81ac6 Simplify test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance-vtordisps.cpp by forcing VFTableBuilder invocation with virtual function calls
Previously the vftables were built at the end of the TU in a reverse-to-random order

llvm-svn: 204465
2014-03-21 13:27:08 +00:00
Timur Iskhodzhanov a895758203 Fix PR18967 -- Bad this adjustment for virtual methods in a diamond virtual inheritance hierarchy
llvm-svn: 203222
2014-03-07 09:34:59 +00:00
Timur Iskhodzhanov 77764b6d4c Style fix: replace "1 entries" with "1 entry" in the vftable layout dumping code
llvm-svn: 202978
2014-03-05 13:54:07 +00:00
Hans Wennborg c9bd88e681 Remove the -cxx-abi command-line flag.
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
2014-01-14 19:35:09 +00:00
Warren Hunt 6eba907102 [ms-abi] Report VBPtrOffset correctly
Although VBPtrs were being placed correctly by the ms-abi layout engine, 
their offsets were being improperly reported to the ASTRecordLayout 
builder due to a bug.  This patch fixes that and fixes the test cases to 
use the correct values.
y

llvm-svn: 199168
2014-01-14 00:31:30 +00:00
Warren Hunt d640d7d96e [ms-abi] Refactor Microsoft Record Layout
This patch refactors microsoft record layout to be more "natural".  The 
most dominant change is that vbptrs and vfptrs are injected after the 
fact.  This simplifies the implementation and the math for the offest 
for the first base/field after the vbptr.

llvm-svn: 198818
2014-01-09 00:30:56 +00:00
Reid Kleckner 5bc6d0fbe4 Make -fdump-vtable-layouts print to stdout, not stderr
This makes it consistent with -fdump-record-layouts, which was moved to
outs() in r186219.  My reasoning for going with stdout is that when one
of these options is present, the layouts are really a program output,
and shouldn't be interleaved with diagnostics, which are on stderr.

Reviewers: timurrrr

Differential Revision: http://llvm-reviews.chandlerc.com/D2127

llvm-svn: 194279
2013-11-08 21:28:00 +00:00
Timur Iskhodzhanov 053142a90d Fix PR17738 - add support for vtordisp thunks when using -cxx-abi microsoft
llvm-svn: 194132
2013-11-06 06:24:31 +00:00