[PATCH] D21614: [codeview] Add DISubprogram::ThisAdjustment

Reid Kleckner via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 22 11:50:40 PDT 2016


rnk created this revision.
rnk added reviewers: aprantl, dexonsmith.
rnk added subscribers: llvm-commits, amccarth, aaboud.

This represents the adjustment applied to the implicit 'this' parameter
in the prologue of a virtual method in the MS C++ ABI. The adjustment is
always zero unless multiple inheritance is involved.

This increases the size of DISubprogram by 8 bytes, unfortunately. The
adjustment really is a signed 32-bit integer. If this size increase is
too much, we could probably win it back by splitting out a subclass with
info specific to virtual methods (virtuality, vindex, thisadjustment,
containingType).

http://reviews.llvm.org/D21614

Files:
  include/llvm/IR/DIBuilder.h
  include/llvm/IR/DebugInfoMetadata.h
  lib/AsmParser/LLParser.cpp
  lib/Bitcode/Reader/BitcodeReader.cpp
  lib/Bitcode/Writer/BitcodeWriter.cpp
  lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
  lib/IR/AsmWriter.cpp
  lib/IR/DIBuilder.cpp
  lib/IR/DebugInfoMetadata.cpp
  lib/IR/LLVMContextImpl.h
  test/DebugInfo/COFF/virtual-methods.ll
  unittests/IR/MetadataTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D21614.61581.patch
Type: text/x-patch
Size: 61494 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160622/93a8b632/attachment.bin>


More information about the llvm-commits mailing list