1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00

[CodeView] Class record member counts should include base classes and ...

Increment the field list member count for base classes and virtual base
classes.

Differential Revision: https://reviews.llvm.org/D41874

llvm-svn: 324000
This commit is contained in:
Brock Wyma 2018-02-01 20:37:38 +00:00
parent 38d1af6c06
commit c08d555184
3 changed files with 5 additions and 5 deletions

View File

@ -1970,6 +1970,7 @@ CodeViewDebug::lowerRecordFieldList(const DICompositeType *Ty) {
VBTableIndex);
ContinuationBuilder.writeMemberType(VBCR);
MemberCount++;
} else {
assert(I->getOffsetInBits() % 8 == 0 &&
"bases must be on byte boundaries");
@ -1977,6 +1978,7 @@ CodeViewDebug::lowerRecordFieldList(const DICompositeType *Ty) {
getTypeIndex(I->getBaseType()),
I->getOffsetInBits() / 8);
ContinuationBuilder.writeMemberType(BCR);
MemberCount++;
}
}

View File

@ -298,7 +298,7 @@
; CHECK: }
; CHECK: Struct (0x1016) {
; CHECK: TypeLeafKind: LF_STRUCTURE (0x1505)
; CHECK: MemberCount: 2
; CHECK: MemberCount: 4
; CHECK: Properties [ (0x200)
; CHECK: HasUniqueName (0x200)
; CHECK: ]

View File

@ -117,11 +117,9 @@
; CHECK-NEXT: }
; CHECK-NOT: VFPtr
; FIXME: Is the MemberCount correct?
; CHECK: Struct ({{.*}}) {
; CHECK-NEXT: TypeLeafKind: LF_STRUCTURE (0x1505)
; CHECK-NEXT: MemberCount: 3
; CHECK-NEXT: MemberCount: 5
; CHECK-NEXT: Properties [ (0x200)
; CHECK-NEXT: HasUniqueName (0x200)
; CHECK-NEXT: ]
@ -145,7 +143,7 @@
; CHECK: Struct ({{.*}}) {
; CHECK-NEXT: TypeLeafKind: LF_STRUCTURE (0x1505)
; CHECK-NEXT: MemberCount: 3
; CHECK-NEXT: MemberCount: 4
; CHECK-NEXT: Properties [ (0x200)
; CHECK-NEXT: HasUniqueName (0x200)
; CHECK-NEXT: ]