From 2c3e0051c31c3f5b2328b447eadf1cf9c4427442 Mon Sep 17 00:00:00 2001 From: Pirama Arumuga Nainar Date: Wed, 6 May 2015 11:46:36 -0700 Subject: Update aosp/master LLVM for rebase to r235153 Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7 (cherry picked from commit 0c7f116bb6950ef819323d855415b2f2b0aad987) --- test/Assembler/2002-07-25-ReturnPtrFunction.ll | 2 +- test/Assembler/2003-05-15-AssemblerProblem.ll | 4 ++-- test/Assembler/2008-01-11-VarargAttrs.ll | 2 +- .../2010-02-05-FunctionLocalMetadataBecomesNull.ll | 2 +- test/Assembler/debug-info.ll | 8 ++++---- test/Assembler/invalid-mdcompileunit-null-file.ll | 4 ++++ .../invalid-mdglobalvariable-empty-name.ll | 4 ++++ .../invalid-mdglobalvariable-missing-name.ll | 4 ++++ .../invalid-mdimportedentity-missing-parent.ll | 4 ---- .../invalid-mdimportedentity-missing-scope.ll | 4 ++++ .../invalid-mdlexicalblock-missing-parent.ll | 4 ---- .../invalid-mdlexicalblock-missing-scope.ll | 4 ++++ .../Assembler/invalid-mdlexicalblock-null-scope.ll | 4 ++++ .../invalid-mdlexicalblockfile-missing-parent.ll | 4 ---- .../invalid-mdlexicalblockfile-missing-scope.ll | 4 ++++ .../invalid-mdlexicalblockfile-null-scope.ll | 4 ++++ .../invalid-mdlocalvariable-missing-name.ll | 4 ---- .../invalid-mdlocalvariable-missing-scope.ll | 4 ++++ .../invalid-mdlocalvariable-missing-tag.ll | 4 ++++ .../invalid-mdlocalvariable-null-scope.ll | 4 ++++ test/Assembler/invalid-mdlocation-null-scope.ll | 4 ++++ test/Assembler/mdglobalvariable.ll | 23 +++++++++++++--------- test/Assembler/mdimportedentity.ll | 8 ++++---- test/Assembler/mdlexicalblock.ll | 12 +++++------ test/Assembler/mdlocalvariable.ll | 22 ++++++++++----------- test/Assembler/mdnamespace.ll | 2 +- test/Assembler/mdobjcproperty.ll | 5 ++--- test/Assembler/mdsubprogram.ll | 14 ++++++------- test/Assembler/mdsubroutinetype.ll | 23 ++++++++++++++++++++++ test/Assembler/mdtemplateparameter.ll | 4 ++-- test/Assembler/metadata-null-operands.ll | 12 +++++------ test/Assembler/musttail-invalid-1.ll | 2 +- test/Assembler/musttail-invalid-2.ll | 2 +- test/Assembler/musttail.ll | 4 ++-- 34 files changed, 136 insertions(+), 79 deletions(-) create mode 100644 test/Assembler/invalid-mdcompileunit-null-file.ll create mode 100644 test/Assembler/invalid-mdglobalvariable-empty-name.ll create mode 100644 test/Assembler/invalid-mdglobalvariable-missing-name.ll delete mode 100644 test/Assembler/invalid-mdimportedentity-missing-parent.ll create mode 100644 test/Assembler/invalid-mdimportedentity-missing-scope.ll delete mode 100644 test/Assembler/invalid-mdlexicalblock-missing-parent.ll create mode 100644 test/Assembler/invalid-mdlexicalblock-missing-scope.ll create mode 100644 test/Assembler/invalid-mdlexicalblock-null-scope.ll delete mode 100644 test/Assembler/invalid-mdlexicalblockfile-missing-parent.ll create mode 100644 test/Assembler/invalid-mdlexicalblockfile-missing-scope.ll create mode 100644 test/Assembler/invalid-mdlexicalblockfile-null-scope.ll delete mode 100644 test/Assembler/invalid-mdlocalvariable-missing-name.ll create mode 100644 test/Assembler/invalid-mdlocalvariable-missing-scope.ll create mode 100644 test/Assembler/invalid-mdlocalvariable-missing-tag.ll create mode 100644 test/Assembler/invalid-mdlocalvariable-null-scope.ll create mode 100644 test/Assembler/invalid-mdlocation-null-scope.ll create mode 100644 test/Assembler/mdsubroutinetype.ll (limited to 'test/Assembler') diff --git a/test/Assembler/2002-07-25-ReturnPtrFunction.ll b/test/Assembler/2002-07-25-ReturnPtrFunction.ll index fdee93c..0fb9d55 100644 --- a/test/Assembler/2002-07-25-ReturnPtrFunction.ll +++ b/test/Assembler/2002-07-25-ReturnPtrFunction.ll @@ -7,7 +7,7 @@ declare void (i32)* @foo() define void @test() { - call void (i32)* ()* @foo( ) ; <%ty*>:1 [#uses=0] + call void (i32)* () @foo( ) ; <%ty*>:1 [#uses=0] ret void } diff --git a/test/Assembler/2003-05-15-AssemblerProblem.ll b/test/Assembler/2003-05-15-AssemblerProblem.ll index eba26a2..70c9617 100644 --- a/test/Assembler/2003-05-15-AssemblerProblem.ll +++ b/test/Assembler/2003-05-15-AssemblerProblem.ll @@ -4,12 +4,12 @@ ; RUN: verify-uselistorder %s define void @test() { - call void (...)* bitcast (void (i16*, i32)* @AddString to void (...)*)( i16* null, i32 0 ) + call void (...) bitcast (void (i16*, i32)* @AddString to void (...)*)( i16* null, i32 0 ) ret void } define void @AddString(i16* %tmp.124, i32 %tmp.127) { - call void (...)* bitcast (void (i16*, i32)* @AddString to void (...)*)( i16* %tmp.124, i32 %tmp.127 ) + call void (...) bitcast (void (i16*, i32)* @AddString to void (...)*)( i16* %tmp.124, i32 %tmp.127 ) ret void } diff --git a/test/Assembler/2008-01-11-VarargAttrs.ll b/test/Assembler/2008-01-11-VarargAttrs.ll index 0b6592c..3111f2d 100644 --- a/test/Assembler/2008-01-11-VarargAttrs.ll +++ b/test/Assembler/2008-01-11-VarargAttrs.ll @@ -6,6 +6,6 @@ declare void @foo(...) define void @bar() { - call void (...)* @foo(%struct* byval null ) + call void (...) @foo(%struct* byval null ) ret void } diff --git a/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll b/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll index 2dd4743..24d1713 100644 --- a/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll +++ b/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll @@ -13,7 +13,7 @@ target triple = "x86_64-apple-darwin10.2" define i32 @main() nounwind readonly { %diff1 = alloca i64 ; [#uses=2] ; CHECK: call void @llvm.dbg.value(metadata i64 72, - call void @llvm.dbg.declare(metadata i64* %diff1, metadata !0, metadata !MDExpression()) + call void @llvm.dbg.declare(metadata i64* %diff1, metadata !0, metadata !MDExpression()), !dbg !MDLocation(scope: !1) store i64 72, i64* %diff1, align 8 %v1 = load %struct.test*, %struct.test** @TestArrayPtr, align 8 ; <%struct.test*> [#uses=1] %v2 = ptrtoint %struct.test* %v1 to i64 ; [#uses=1] diff --git a/test/Assembler/debug-info.ll b/test/Assembler/debug-info.ll index 7103ed2..417c479 100644 --- a/test/Assembler/debug-info.ll +++ b/test/Assembler/debug-info.ll @@ -28,11 +28,11 @@ !9 = !MDBasicType() !10 = !MDBasicType(tag: DW_TAG_base_type, name: "", size: 0, align: 0, encoding: 0) -; CHECK-NEXT: !9 = distinct !{} +; CHECK-NEXT: !9 = !MDTemplateTypeParameter(type: !6) ; CHECK-NEXT: !10 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") ; CHECK-NEXT: !11 = distinct !{} ; CHECK-NEXT: !12 = !MDFile(filename: "", directory: "") -!11 = distinct !{} +!11 = !MDTemplateTypeParameter(type: !7) !12 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") !13 = distinct !{} !14 = !MDFile(filename: "", directory: "") @@ -44,7 +44,7 @@ ; CHECK-NEXT: !15 = distinct !MDCompositeType(tag: DW_TAG_structure_type, name: "Base", scope: !14, file: !10, line: 3, size: 128, align: 32, offset: 64, flags: DIFlagPublic, elements: !16, runtimeLang: DW_LANG_C_plus_plus_11, vtableHolder: !15, templateParams: !18, identifier: "MangledBase") ; CHECK-NEXT: !16 = !{!17} ; CHECK-NEXT: !17 = !MDDerivedType(tag: DW_TAG_member, name: "field", scope: !15, file: !10, line: 4, baseType: !6, size: 32, align: 32, offset: 32, flags: DIFlagPublic) -; CHECK-NEXT: !18 = !{!6} +; CHECK-NEXT: !18 = !{!9} ; CHECK-NEXT: !19 = !MDCompositeType(tag: DW_TAG_structure_type, name: "Derived", scope: !14, file: !10, line: 3, baseType: !15, size: 128, align: 32, offset: 64, flags: DIFlagPublic, elements: !20, runtimeLang: DW_LANG_C_plus_plus_11, vtableHolder: !15, templateParams: !18, identifier: "MangledBase") ; CHECK-NEXT: !20 = !{!21} ; CHECK-NEXT: !21 = !MDDerivedType(tag: DW_TAG_inheritance, scope: !19, baseType: !15) @@ -55,7 +55,7 @@ !17 = !MDCompositeType(tag: DW_TAG_structure_type, name: "Base", scope: !16, file: !12, line: 3, size: 128, align: 32, offset: 64, flags: DIFlagPublic, elements: !18, runtimeLang: DW_LANG_C_plus_plus_11, vtableHolder: !17, templateParams: !20, identifier: "MangledBase") !18 = !{!19} !19 = !MDDerivedType(tag: DW_TAG_member, name: "field", scope: !17, file: !12, line: 4, baseType: !7, size: 32, align: 32, offset: 32, flags: DIFlagPublic) -!20 = !{!7} +!20 = !{!11} !21 = !MDCompositeType(tag: DW_TAG_structure_type, name: "Derived", scope: !16, file: !12, line: 3, baseType: !17, size: 128, align: 32, offset: 64, flags: DIFlagPublic, elements: !22, runtimeLang: DW_LANG_C_plus_plus_11, vtableHolder: !17, templateParams: !20, identifier: "MangledBase") !22 = !{!23} !23 = !MDDerivedType(tag: DW_TAG_inheritance, scope: !21, baseType: !17) diff --git a/test/Assembler/invalid-mdcompileunit-null-file.ll b/test/Assembler/invalid-mdcompileunit-null-file.ll new file mode 100644 index 0000000..613948f --- /dev/null +++ b/test/Assembler/invalid-mdcompileunit-null-file.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:27: error: 'file' cannot be null +!0 = !MDCompileUnit(file: null) diff --git a/test/Assembler/invalid-mdglobalvariable-empty-name.ll b/test/Assembler/invalid-mdglobalvariable-empty-name.ll new file mode 100644 index 0000000..77a9f4d --- /dev/null +++ b/test/Assembler/invalid-mdglobalvariable-empty-name.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:30: error: 'name' cannot be empty +!0 = !MDGlobalVariable(name: "") diff --git a/test/Assembler/invalid-mdglobalvariable-missing-name.ll b/test/Assembler/invalid-mdglobalvariable-missing-name.ll new file mode 100644 index 0000000..d57d71e --- /dev/null +++ b/test/Assembler/invalid-mdglobalvariable-missing-name.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:24: error: missing required field 'name' +!0 = !MDGlobalVariable() diff --git a/test/Assembler/invalid-mdimportedentity-missing-parent.ll b/test/Assembler/invalid-mdimportedentity-missing-parent.ll deleted file mode 100644 index 710a027..0000000 --- a/test/Assembler/invalid-mdimportedentity-missing-parent.ll +++ /dev/null @@ -1,4 +0,0 @@ -; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s - -; CHECK: [[@LINE+1]]:51: error: missing required field 'scope' -!3 = !MDImportedEntity(tag: DW_TAG_imported_module) diff --git a/test/Assembler/invalid-mdimportedentity-missing-scope.ll b/test/Assembler/invalid-mdimportedentity-missing-scope.ll new file mode 100644 index 0000000..710a027 --- /dev/null +++ b/test/Assembler/invalid-mdimportedentity-missing-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: [[@LINE+1]]:51: error: missing required field 'scope' +!3 = !MDImportedEntity(tag: DW_TAG_imported_module) diff --git a/test/Assembler/invalid-mdlexicalblock-missing-parent.ll b/test/Assembler/invalid-mdlexicalblock-missing-parent.ll deleted file mode 100644 index cdd12af..0000000 --- a/test/Assembler/invalid-mdlexicalblock-missing-parent.ll +++ /dev/null @@ -1,4 +0,0 @@ -; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s - -; CHECK: [[@LINE+1]]:29: error: missing required field 'scope' -!0 = !MDLexicalBlock(line: 7) diff --git a/test/Assembler/invalid-mdlexicalblock-missing-scope.ll b/test/Assembler/invalid-mdlexicalblock-missing-scope.ll new file mode 100644 index 0000000..cdd12af --- /dev/null +++ b/test/Assembler/invalid-mdlexicalblock-missing-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: [[@LINE+1]]:29: error: missing required field 'scope' +!0 = !MDLexicalBlock(line: 7) diff --git a/test/Assembler/invalid-mdlexicalblock-null-scope.ll b/test/Assembler/invalid-mdlexicalblock-null-scope.ll new file mode 100644 index 0000000..59a9968 --- /dev/null +++ b/test/Assembler/invalid-mdlexicalblock-null-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:29: error: 'scope' cannot be null +!0 = !MDLexicalBlock(scope: null) diff --git a/test/Assembler/invalid-mdlexicalblockfile-missing-parent.ll b/test/Assembler/invalid-mdlexicalblockfile-missing-parent.ll deleted file mode 100644 index 1c901e2..0000000 --- a/test/Assembler/invalid-mdlexicalblockfile-missing-parent.ll +++ /dev/null @@ -1,4 +0,0 @@ -; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s - -; CHECK: [[@LINE+1]]:42: error: missing required field 'scope' -!0 = !MDLexicalBlockFile(discriminator: 0) diff --git a/test/Assembler/invalid-mdlexicalblockfile-missing-scope.ll b/test/Assembler/invalid-mdlexicalblockfile-missing-scope.ll new file mode 100644 index 0000000..1c901e2 --- /dev/null +++ b/test/Assembler/invalid-mdlexicalblockfile-missing-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: [[@LINE+1]]:42: error: missing required field 'scope' +!0 = !MDLexicalBlockFile(discriminator: 0) diff --git a/test/Assembler/invalid-mdlexicalblockfile-null-scope.ll b/test/Assembler/invalid-mdlexicalblockfile-null-scope.ll new file mode 100644 index 0000000..708136c --- /dev/null +++ b/test/Assembler/invalid-mdlexicalblockfile-null-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:33: error: 'scope' cannot be null +!0 = !MDLexicalBlockFile(scope: null) diff --git a/test/Assembler/invalid-mdlocalvariable-missing-name.ll b/test/Assembler/invalid-mdlocalvariable-missing-name.ll deleted file mode 100644 index 5b23600..0000000 --- a/test/Assembler/invalid-mdlocalvariable-missing-name.ll +++ /dev/null @@ -1,4 +0,0 @@ -; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s - -; CHECK: :[[@LINE+1]]:29: error: missing required field 'tag' -!0 = !MDLocalVariable(arg: 7) diff --git a/test/Assembler/invalid-mdlocalvariable-missing-scope.ll b/test/Assembler/invalid-mdlocalvariable-missing-scope.ll new file mode 100644 index 0000000..d8ee8a9 --- /dev/null +++ b/test/Assembler/invalid-mdlocalvariable-missing-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:48: error: missing required field 'scope' +!0 = !MDLocalVariable(tag: DW_TAG_auto_variable) diff --git a/test/Assembler/invalid-mdlocalvariable-missing-tag.ll b/test/Assembler/invalid-mdlocalvariable-missing-tag.ll new file mode 100644 index 0000000..d3ca10a --- /dev/null +++ b/test/Assembler/invalid-mdlocalvariable-missing-tag.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:45: error: missing required field 'tag' +!0 = !MDLocalVariable(scope: !MDSubprogram()) diff --git a/test/Assembler/invalid-mdlocalvariable-null-scope.ll b/test/Assembler/invalid-mdlocalvariable-null-scope.ll new file mode 100644 index 0000000..53ee94d --- /dev/null +++ b/test/Assembler/invalid-mdlocalvariable-null-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:30: error: 'scope' cannot be null +!0 = !MDLocalVariable(scope: null) diff --git a/test/Assembler/invalid-mdlocation-null-scope.ll b/test/Assembler/invalid-mdlocation-null-scope.ll new file mode 100644 index 0000000..e359c9f --- /dev/null +++ b/test/Assembler/invalid-mdlocation-null-scope.ll @@ -0,0 +1,4 @@ +; RUN: not llvm-as < %s -disable-output 2>&1 | FileCheck %s + +; CHECK: :[[@LINE+1]]:25: error: 'scope' cannot be null +!0 = !MDLocation(scope: null) diff --git a/test/Assembler/mdglobalvariable.ll b/test/Assembler/mdglobalvariable.ll index 09d20bf..2726f4f 100644 --- a/test/Assembler/mdglobalvariable.ll +++ b/test/Assembler/mdglobalvariable.ll @@ -3,20 +3,25 @@ @foo = global i32 0 -; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6} -!named = !{!0, !1, !2, !3, !4, !5, !6} +; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9} +!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9} -!0 = distinct !{} +!0 = !MDFile(filename: "scope.h", directory: "/path/to/dir") !1 = distinct !{} !2 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") -!3 = distinct !{} +!3 = !MDBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) !4 = distinct !{} -; CHECK: !5 = !MDGlobalVariable(name: "foo", linkageName: "foo", scope: !0, file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, variable: i32* @foo, declaration: !4) +; CHECK: !5 = !MDGlobalVariable(name: "foo", linkageName: "foo", scope: !0, file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, variable: i32* @foo) !5 = !MDGlobalVariable(name: "foo", linkageName: "foo", scope: !0, file: !2, line: 7, type: !3, isLocal: true, - isDefinition: false, variable: i32* @foo, - declaration: !4) + isDefinition: false, variable: i32* @foo) -; CHECK: !6 = !MDGlobalVariable(scope: null, isLocal: false, isDefinition: true) -!6 = !MDGlobalVariable() +; CHECK: !6 = !MDGlobalVariable(name: "foo", scope: !0, isLocal: false, isDefinition: true) +!6 = !MDGlobalVariable(name: "foo", scope: !0) + +!7 = !MDCompositeType(tag: DW_TAG_structure_type, name: "Class", size: 8, align: 8) +!8 = !MDDerivedType(tag: DW_TAG_member, name: "mem", flags: DIFlagStaticMember, scope: !7, baseType: !3) + +; CHECK: !9 = !MDGlobalVariable(name: "mem", scope: !0, isLocal: false, isDefinition: true, declaration: !8) +!9 = !MDGlobalVariable(name: "mem", scope: !0, declaration: !8) diff --git a/test/Assembler/mdimportedentity.ll b/test/Assembler/mdimportedentity.ll index 0584edb..8e98c5d 100644 --- a/test/Assembler/mdimportedentity.ll +++ b/test/Assembler/mdimportedentity.ll @@ -4,10 +4,10 @@ ; CHECK: !named = !{!0, !1, !2, !3, !3} !named = !{!0, !1, !2, !3, !4} -; CHECK: !0 = distinct !{} -; CHECK-NEXT: !1 = distinct !{} -!0 = distinct !{} -!1 = distinct !{} +; CHECK: !0 = !MDSubprogram({{.*}}) +; CHECK-NEXT: !1 = !MDCompositeType({{.*}}) +!0 = !MDSubprogram(name: "foo") +!1 = !MDCompositeType(tag: DW_TAG_structure_type, name: "Class", size: 32, align: 32) ; CHECK-NEXT: !2 = !MDImportedEntity(tag: DW_TAG_imported_module, name: "foo", scope: !0, entity: !1, line: 7) !2 = !MDImportedEntity(tag: DW_TAG_imported_module, name: "foo", scope: !0, diff --git a/test/Assembler/mdlexicalblock.ll b/test/Assembler/mdlexicalblock.ll index 0a2c339..d88eae7 100644 --- a/test/Assembler/mdlexicalblock.ll +++ b/test/Assembler/mdlexicalblock.ll @@ -5,15 +5,15 @@ !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9} !0 = distinct !{} -!1 = distinct !{} +!1 = !MDSubprogram(name: "foo", scope: !2) !2 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") -; CHECK: !3 = !MDLexicalBlock(scope: !0, file: !2, line: 7, column: 35) -!3 = !MDLexicalBlock(scope: !0, file: !2, line: 7, column: 35) +; CHECK: !3 = !MDLexicalBlock(scope: !1, file: !2, line: 7, column: 35) +!3 = !MDLexicalBlock(scope: !1, file: !2, line: 7, column: 35) -; CHECK: !4 = !MDLexicalBlock(scope: !0) -!4 = !MDLexicalBlock(scope: !0) -!5 = !MDLexicalBlock(scope: !0, file: null, line: 0, column: 0) +; CHECK: !4 = !MDLexicalBlock(scope: !1) +!4 = !MDLexicalBlock(scope: !1) +!5 = !MDLexicalBlock(scope: !1, file: null, line: 0, column: 0) ; CHECK: !5 = !MDLexicalBlockFile(scope: !3, file: !2, discriminator: 0) ; CHECK: !6 = !MDLexicalBlockFile(scope: !3, file: !2, discriminator: 1) diff --git a/test/Assembler/mdlocalvariable.ll b/test/Assembler/mdlocalvariable.ll index 3a36c7d..2c0b35a 100644 --- a/test/Assembler/mdlocalvariable.ll +++ b/test/Assembler/mdlocalvariable.ll @@ -6,21 +6,21 @@ ; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} -!0 = distinct !{} +!0 = distinct !MDSubprogram() !1 = distinct !{} !2 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") -!3 = distinct !{} -!4 = distinct !{} +!3 = !MDBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) +!4 = !MDLocation(scope: !0) -; CHECK: !5 = !MDLocalVariable(tag: DW_TAG_arg_variable, name: "foo", arg: 3, scope: !0, file: !2, line: 7, type: !3, flags: DIFlagArtificial, inlinedAt: !4) -; CHECK: !6 = !MDLocalVariable(tag: DW_TAG_auto_variable, name: "foo", scope: !0, file: !2, line: 7, type: !3, flags: DIFlagArtificial, inlinedAt: !4) +; CHECK: !5 = !MDLocalVariable(tag: DW_TAG_arg_variable, name: "foo", arg: 3, scope: !0, file: !2, line: 7, type: !3, flags: DIFlagArtificial) +; CHECK: !6 = !MDLocalVariable(tag: DW_TAG_auto_variable, name: "foo", scope: !0, file: !2, line: 7, type: !3, flags: DIFlagArtificial) !5 = !MDLocalVariable(tag: DW_TAG_arg_variable, name: "foo", arg: 3, scope: !0, file: !2, line: 7, type: !3, - flags: DIFlagArtificial, inlinedAt: !4) + flags: DIFlagArtificial) !6 = !MDLocalVariable(tag: DW_TAG_auto_variable, name: "foo", scope: !0, - file: !2, line: 7, type: !3, flags: DIFlagArtificial, inlinedAt: !4) + file: !2, line: 7, type: !3, flags: DIFlagArtificial) -; CHECK: !7 = !MDLocalVariable(tag: DW_TAG_arg_variable, arg: 0, scope: null) -; CHECK: !8 = !MDLocalVariable(tag: DW_TAG_auto_variable, scope: null) -!7 = !MDLocalVariable(tag: DW_TAG_arg_variable) -!8 = !MDLocalVariable(tag: DW_TAG_auto_variable) +; CHECK: !7 = !MDLocalVariable(tag: DW_TAG_arg_variable, arg: 0, scope: !0) +; CHECK: !8 = !MDLocalVariable(tag: DW_TAG_auto_variable, scope: !0) +!7 = !MDLocalVariable(tag: DW_TAG_arg_variable, scope: !0) +!8 = !MDLocalVariable(tag: DW_TAG_auto_variable, scope: !0) diff --git a/test/Assembler/mdnamespace.ll b/test/Assembler/mdnamespace.ll index 90cb15f..e708a3c 100644 --- a/test/Assembler/mdnamespace.ll +++ b/test/Assembler/mdnamespace.ll @@ -4,7 +4,7 @@ ; CHECK: !named = !{!0, !1, !2, !3, !4, !4} !named = !{!0, !1, !2, !3, !4, !5} -!0 = distinct !{} +!0 = !MDFile(filename: "file.cpp", directory: "/path/to/dir") !1 = distinct !{} !2 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") diff --git a/test/Assembler/mdobjcproperty.ll b/test/Assembler/mdobjcproperty.ll index cb2f4d3..a3b20e5 100644 --- a/test/Assembler/mdobjcproperty.ll +++ b/test/Assembler/mdobjcproperty.ll @@ -6,10 +6,9 @@ !0 = distinct !{} !1 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") -!2 = distinct !{} +!2 = !MDCompositeType(tag: DW_TAG_structure_type, name: "Object") - -; CHECK: !2 = distinct !{} +; CHECK: !2 = !MDCompositeType({{.*}}) ; CHECK-NEXT: !3 = !MDObjCProperty(name: "foo", file: !1, line: 7, setter: "setFoo", getter: "getFoo", attributes: 7, type: !2) !3 = !MDObjCProperty(name: "foo", file: !1, line: 7, setter: "setFoo", getter: "getFoo", attributes: 7, type: !2) diff --git a/test/Assembler/mdsubprogram.ll b/test/Assembler/mdsubprogram.ll index 7447166..9300089 100644 --- a/test/Assembler/mdsubprogram.ll +++ b/test/Assembler/mdsubprogram.ll @@ -6,17 +6,17 @@ declare void @_Z3foov() ; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9} !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9} -!0 = distinct !{} -!1 = distinct !{} +!0 = !{null} +!1 = distinct !MDCompositeType(tag: DW_TAG_structure_type) !2 = !MDFile(filename: "path/to/file", directory: "/path/to/dir") -!3 = distinct !{} -!4 = distinct !{} +!3 = !MDSubroutineType(types: !0) +!4 = distinct !MDCompositeType(tag: DW_TAG_structure_type) !5 = distinct !{} -!6 = distinct !{} +!6 = distinct !MDSubprogram(isDefinition: false) !7 = distinct !{} -; CHECK: !8 = !MDSubprogram(name: "foo", linkageName: "_Zfoov", scope: !0, file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, scopeLine: 8, containingType: !4, virtuality: DW_VIRTUALITY_pure_virtual, virtualIndex: 10, flags: DIFlagPrototyped, isOptimized: true, function: void ()* @_Z3foov, templateParams: !5, declaration: !6, variables: !7) -!8 = !MDSubprogram(name: "foo", linkageName: "_Zfoov", scope: !0, +; CHECK: !8 = !MDSubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, scopeLine: 8, containingType: !4, virtuality: DW_VIRTUALITY_pure_virtual, virtualIndex: 10, flags: DIFlagPrototyped, isOptimized: true, function: void ()* @_Z3foov, templateParams: !5, declaration: !6, variables: !7) +!8 = !MDSubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, scopeLine: 8, containingType: !4, virtuality: DW_VIRTUALITY_pure_virtual, virtualIndex: 10, diff --git a/test/Assembler/mdsubroutinetype.ll b/test/Assembler/mdsubroutinetype.ll new file mode 100644 index 0000000..936cbf4 --- /dev/null +++ b/test/Assembler/mdsubroutinetype.ll @@ -0,0 +1,23 @@ +; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s +; RUN: verify-uselistorder %s + +; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} +!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} + +!0 = !MDBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) +!1 = !{null} +!2 = !{null, !0} +!3 = !{!0, !0, !0} + + +; CHECK: !4 = !MDSubroutineType(types: !1) +; CHECK: !5 = !MDSubroutineType(types: !2) +; CHECK: !6 = !MDSubroutineType(types: !3) +; CHECK: !7 = !MDSubroutineType(flags: DIFlagLValueReference, types: !3) +!4 = !MDSubroutineType(types: !1) +!5 = !MDSubroutineType(types: !2) +!6 = !MDSubroutineType(types: !3) +!7 = !MDSubroutineType(flags: DIFlagLValueReference, types: !3) + +; CHECK: !8 = !MDSubroutineType(types: null) +!8 = !MDSubroutineType(types: null) diff --git a/test/Assembler/mdtemplateparameter.ll b/test/Assembler/mdtemplateparameter.ll index 22ee5c8..5bcef3f 100644 --- a/test/Assembler/mdtemplateparameter.ll +++ b/test/Assembler/mdtemplateparameter.ll @@ -5,8 +5,8 @@ !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} !0 = distinct !{} -!1 = distinct !{} -; CHECK: !1 = distinct !{} +!1 = !MDBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) +; CHECK: !1 = !MDBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) ; CHECK-NEXT: !2 = !MDTemplateTypeParameter(name: "Ty", type: !1) ; CHECK-NEXT: !3 = !MDTemplateTypeParameter(type: !1) diff --git a/test/Assembler/metadata-null-operands.ll b/test/Assembler/metadata-null-operands.ll index acae1d4..7e27eba 100644 --- a/test/Assembler/metadata-null-operands.ll +++ b/test/Assembler/metadata-null-operands.ll @@ -1,13 +1,11 @@ ; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s ; RUN: verify-uselistorder %s -; Don't crash on null operands. (If/when we add a verify check for these, we -; should disable the verifier for this test and remove this comment; the test -; is still important.) -!named = !{!0, !1} +; Don't crash on null operands. When we add a verify check for this, also +; require non-null in the assembler and rework this test to check for that ala +; test/Assembler/invalid-mdcompileunit-null-file.ll. +!named = !{!0} !0 = !MDDerivedType(tag: DW_TAG_pointer_type, baseType: null) -!1 = !MDCompileUnit(language: DW_LANG_C, file: null) -; CHECK: !named = !{!0, !1} +; CHECK: !named = !{!0} ; CHECK: !0 = !MDDerivedType({{.*}}baseType: null{{.*}}) -; CHECK: !1 = !MDCompileUnit({{.*}}file: null{{.*}}) diff --git a/test/Assembler/musttail-invalid-1.ll b/test/Assembler/musttail-invalid-1.ll index b123a91..e9141c8 100644 --- a/test/Assembler/musttail-invalid-1.ll +++ b/test/Assembler/musttail-invalid-1.ll @@ -8,7 +8,7 @@ declare i8* @f(i8*, ...) define i8* @f_thunk(i8* %this) { - %rv = musttail call i8* (i8*, ...)* @f(i8* %this, ...) + %rv = musttail call i8* (i8*, ...) @f(i8* %this, ...) ; CHECK: error: unexpected ellipsis in argument list for musttail call in non-varargs function ret i8* %rv } diff --git a/test/Assembler/musttail-invalid-2.ll b/test/Assembler/musttail-invalid-2.ll index 3bcb51f..8602afd 100644 --- a/test/Assembler/musttail-invalid-2.ll +++ b/test/Assembler/musttail-invalid-2.ll @@ -7,7 +7,7 @@ declare i8* @f(i8*, ...) define i8* @f_thunk(i8* %this, ...) { - %rv = musttail call i8* (i8*, ...)* @f(i8* %this) + %rv = musttail call i8* (i8*, ...) @f(i8* %this) ; CHECK: error: expected '...' at end of argument list for musttail call in varargs function ret i8* %rv } diff --git a/test/Assembler/musttail.ll b/test/Assembler/musttail.ll index 6e2a9b2..ac60ba2 100644 --- a/test/Assembler/musttail.ll +++ b/test/Assembler/musttail.ll @@ -7,8 +7,8 @@ declare i8* @f(i8*, ...) define i8* @f_thunk(i8* %this, ...) { - %rv = musttail call i8* (i8*, ...)* @f(i8* %this, ...) + %rv = musttail call i8* (i8*, ...) @f(i8* %this, ...) ret i8* %rv } ; CHECK-LABEL: define i8* @f_thunk(i8* %this, ...) -; CHECK: %rv = musttail call i8* (i8*, ...)* @f(i8* %this, ...) +; CHECK: %rv = musttail call i8* (i8*, ...) @f(i8* %this, ...) -- cgit v1.1