blob: d509974f508d03fa7b53c4e1a9fb823053540256 [file] [log] [blame] [edit]
// RUN: not llvm-mc -triple=aarch64 %s 2>&1 | FileCheck --check-prefix=ERR %s
// Test logic and type mismatch
.aeabi_attribute Tag_Feature_BTI, 1
// ERR: error: no active subsection, build attribute can not be added
// ERR-NEXT: .aeabi_attribute Tag_Feature_BTI, 1
.aeabi_subsection aeabi_pauthabi, required, uleb128
.aeabi_attribute Tag_Feature_BTI, 1
// ERR: error: unknown AArch64 build attribute 'Tag_Feature_BTI' for subsection 'aeabi_pauthabi'
// ERR-NEXT: .aeabi_attribute Tag_Feature_BTI, 1
.aeabi_attribute a, 1
// ERR: error: unknown AArch64 build attribute 'a' for subsection 'aeabi_pauthabi'
// ERR-NEXT: .aeabi_attribute a, 1
.aeabi_attribute Tag_PAuth_Platform, Tag_PAuth_Platform
// ERR: error: active subsection type is ULEB128 (unsigned), found NTBS (string)
// ERR-NEXT: .aeabi_attribute Tag_PAuth_Platform, Tag_PAuth_Platform
.aeabi_attribute Tag_PAuth_Platform, a
// ERR: error: active subsection type is ULEB128 (unsigned), found NTBS (string)
// ERR-NEXT: .aeabi_attribute Tag_PAuth_Platform, a
// Test syntax errors
.aeabi_attribute Tag_PAuth_Platform,
// ERR: error: AArch64 build attributes value not found
// ERR-NEXT: .aeabi_attribute Tag_PAuth_Platform,
.aeabi_attribute Tag_PAuth_Platform
// ERR: error: expected comma
// ERR-NEXT: .aeabi_attribute Tag_PAuth_Platform
.aeabi_attribute
// ERR: error: AArch64 build attributes tag not found
// ERR-NEXT: .aeabi_attribute
.aeabi_subsection aeabi_feature_and_bits, optional, uleb128
.aeabi_attribute Tag_PAuth_Platform, 1
// ERR: unknown AArch64 build attribute 'Tag_PAuth_Platform' for subsection 'aeabi_feature_and_bits'
.aeabi_attribute a, 1
// ERR: error: unknown AArch64 build attribute 'a' for subsection 'aeabi_feature_and_bits'
.aeabi_attribute Tag_Feature_BTI, Tag_Feature_BTI
// ERR: error: active subsection type is ULEB128 (unsigned), found NTBS (string)
// ERR-NEXT: .aeabi_attribute Tag_Feature_BTI, Tag_Feature_BTI
.aeabi_attribute Tag_Feature_BTI, a
// ERR: error: active subsection type is ULEB128 (unsigned), found NTBS (string)
// ERR-NEXT: .aeabi_attribute Tag_Feature_BTI, a
.aeabi_attribute Tag_Feature_BTI,
// ERR: error: AArch64 build attributes value not found
// ERR-NEXT: .aeabi_attribute Tag_Feature_BTI,
.aeabi_attribute Tag_Feature_BTI
// ERR: error: expected comma
// ERR-NEXT: .aeabi_attribute Tag_Feature_BTI
.aeabi_attribute
// ERR: error: AArch64 build attributes tag not found
// ERR-NEXT: .aeabi_attribute
.aeabi_subsection aeabi_pauthabi, required, uleb128
.aeabi_attribute Tag_PAuth_Platform, 1 some_text
// ERR: error: unexpected token for AArch64 build attributes tag and value attribute directive
// ERR-NEXT: .aeabi_attribute Tag_PAuth_Platform, 1 some_text