File: accel-imported-declaration.test

package info (click to toggle)
llvm-toolchain-21 1%3A21.1.6-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 2,245,028 kB
  • sloc: cpp: 7,619,726; ansic: 1,434,018; asm: 1,058,748; python: 252,740; f90: 94,671; objc: 70,685; lisp: 42,813; pascal: 18,401; sh: 8,601; ml: 5,111; perl: 4,720; makefile: 3,675; awk: 3,523; javascript: 2,409; xml: 892; fortran: 770
file content (37 lines) | stat: -rw-r--r-- 1,250 bytes parent folder | download | duplicates (15)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
RUN: llvm-dwarfdump -v %p/Inputs/accel-imported-declaration.macho-arm64.o | FileCheck %s
RUN: llvm-dwarfdump -verify %p/Inputs/accel-imported-declaration.macho-arm64.o | FileCheck %s --check-prefix=VERIFY

Gather some DIE indexes to verify the accelerator table contents.

CHECK: .debug_info contents
CHECK: {{.*}}DW_TAG_namespace
CHECK:   DW_AT_name{{.*}}"A"
CHECK: {{.*}}DW_TAG_namespace
CHECK:   DW_AT_name{{.*}}"B"
CHECK: [[NAMESPACE:0x[0-9a-f]*]]:{{.*}}DW_TAG_namespace
CHECK:   DW_AT_name{{.*}}"C"
CHECK: [[IMPORTED:0x[0-9a-f]*]]:{{.*}}DW_TAG_imported_declaration
CHECK:   DW_AT_name{{.*}}"C"

Check that the .apple_namespaces section contains two entries for "namespace C"

CHECK:      .apple_namespaces contents:
CHECK:      Bucket 1 [
CHECK-NEXT:   Hash {{.*}} [
CHECK-NEXT:     Name{{.*}} {
CHECK-NEXT:       String: {{.*}} "C"
CHECK-NEXT:       Data 0 [
CHECK-NEXT:         Atom[0]: [[NAMESPACE]]
CHECK-NEXT:       ]
CHECK-NEXT:       Data 1 [
CHECK-NEXT:         Atom[0]: [[IMPORTED]]
CHECK-NEXT:       ]
CHECK-NEXT:     }
CHECK-NEXT:   ]
CHECK-NEXT: ]

VERIFY:      Verifying .apple_names...
VERIFY-NEXT: Verifying .apple_types...
VERIFY-NEXT: Verifying .apple_namespaces...
VERIFY-NEXT: Verifying .apple_objc...
VERIFY-NEXT: No errors.