forked from OSchip/llvm-project
Revert "Compress formatting of array type names (int [4] -> int[4])"
Looks like lldb has some issues with this - somehow it causes lldb to
treat a "char[N]" type as an array of chars (prints them out
individually) but a "char [N]" is printed as a string. (even though the
DWARF doesn't have this string in it - it's something to do with the
string lldb generates for itself using clang)
This reverts commit 277623f4d5
.
This commit is contained in:
parent
1062f989af
commit
f9ad1d1c77
|
@ -503,6 +503,7 @@ void TypePrinter::printMemberPointerAfter(const MemberPointerType *T,
|
|||
void TypePrinter::printConstantArrayBefore(const ConstantArrayType *T,
|
||||
raw_ostream &OS) {
|
||||
IncludeStrongLifetimeRAII Strong(Policy);
|
||||
SaveAndRestore<bool> NonEmptyPH(HasEmptyPlaceHolder, false);
|
||||
printBefore(T->getElementType(), OS);
|
||||
}
|
||||
|
||||
|
@ -525,6 +526,7 @@ void TypePrinter::printConstantArrayAfter(const ConstantArrayType *T,
|
|||
void TypePrinter::printIncompleteArrayBefore(const IncompleteArrayType *T,
|
||||
raw_ostream &OS) {
|
||||
IncludeStrongLifetimeRAII Strong(Policy);
|
||||
SaveAndRestore<bool> NonEmptyPH(HasEmptyPlaceHolder, false);
|
||||
printBefore(T->getElementType(), OS);
|
||||
}
|
||||
|
||||
|
@ -537,6 +539,7 @@ void TypePrinter::printIncompleteArrayAfter(const IncompleteArrayType *T,
|
|||
void TypePrinter::printVariableArrayBefore(const VariableArrayType *T,
|
||||
raw_ostream &OS) {
|
||||
IncludeStrongLifetimeRAII Strong(Policy);
|
||||
SaveAndRestore<bool> NonEmptyPH(HasEmptyPlaceHolder, false);
|
||||
printBefore(T->getElementType(), OS);
|
||||
}
|
||||
|
||||
|
@ -583,6 +586,7 @@ void TypePrinter::printDependentSizedArrayBefore(
|
|||
const DependentSizedArrayType *T,
|
||||
raw_ostream &OS) {
|
||||
IncludeStrongLifetimeRAII Strong(Policy);
|
||||
SaveAndRestore<bool> NonEmptyPH(HasEmptyPlaceHolder, false);
|
||||
printBefore(T->getElementType(), OS);
|
||||
}
|
||||
|
||||
|
|
|
@ -91,7 +91,7 @@
|
|||
|
||||
// CHECK: @__const.unit15.a = private unnamed_addr constant %struct.U15A { [3 x i32] [i32 1, i32 2, i32 3] }, align 4
|
||||
// CHECK-NEXT: [[STRUCT_STR_U15:@[0-9]+]] = private unnamed_addr constant [15 x i8] c"struct U15A {\0A\00"
|
||||
// CHECK-NEXT: [[FIELD_U15:@[0-9]+]] = private unnamed_addr constant [12 x i8] c"int[3] a : \00"
|
||||
// CHECK-NEXT: [[FIELD_U15:@[0-9]+]] = private unnamed_addr constant [13 x i8] c"int [3] a : \00"
|
||||
// CHECK-NEXT: [[FORMAT_U15:@[0-9]+]] = private unnamed_addr constant [4 x i8] c"%p\0A\00"
|
||||
// CHECK-NEXT: [[END_STRUCT_U15:@[0-9]+]] = private unnamed_addr constant [3 x i8] c"}\0A\00"
|
||||
|
||||
|
@ -380,7 +380,7 @@ void unit15() {
|
|||
|
||||
// CHECK: call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* [[STRUCT_STR_U15]], i32 0, i32 0))
|
||||
// CHECK: [[RES1:%[0-9]+]] = getelementptr inbounds %struct.U15A, %struct.U15A* %a, i32 0, i32 0
|
||||
// CHECK: call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* [[FIELD_U15]], i32 0, i32 0))
|
||||
// CHECK: call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* [[FIELD_U15]], i32 0, i32 0))
|
||||
// CHECK: [[LOAD1:%[0-9]+]] = load [3 x i32], [3 x i32]* [[RES1]],
|
||||
// CHECK: call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* [[FORMAT_U15]], i32 0, i32 0), [3 x i32] [[LOAD1]])
|
||||
// CHECK: call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* [[END_STRUCT_U15]], i32 0, i32 0)
|
||||
|
|
Loading…
Reference in New Issue