[llvm] b28e8ab - [NFC][XCOFF][llvm-readobj] replace binaries with YAMLs (only tests for Symbols).

via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 10 22:18:04 PST 2022


Author: Esme-Yi
Date: 2022-01-11T06:17:16Z
New Revision: b28e8abfd0690f8bc04d4c24dd1a8c8c3c0c67bc

URL: https://github.com/llvm/llvm-project/commit/b28e8abfd0690f8bc04d4c24dd1a8c8c3c0c67bc
DIFF: https://github.com/llvm/llvm-project/commit/b28e8abfd0690f8bc04d4c24dd1a8c8c3c0c67bc.diff

LOG: [NFC][XCOFF][llvm-readobj] replace binaries with YAMLs (only tests for Symbols).

Summary: Since yaml2obj now supports converting AuxSymbols, we can use YAMLs as input for symbol-related tests of llvm-readobj instead of binaries.

Reviewed By: jhenderson, shchenz

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

Added: 
    llvm/test/tools/llvm-readobj/XCOFF/symbols-invalid.test

Modified: 
    llvm/test/tools/llvm-readobj/XCOFF/symbols.test
    llvm/test/tools/llvm-readobj/XCOFF/symbols64.test

Removed: 
    llvm/test/tools/llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o
    llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol.o
    llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol64.o
    llvm/test/tools/llvm-readobj/XCOFF/file-aux-wrong64.test


################################################################################
diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o b/llvm/test/tools/llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o
deleted file mode 100644
index dc5052f0b83d0..0000000000000
Binary files a/llvm/test/tools/llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o and /dev/null 
diff er

diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol.o b/llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol.o
deleted file mode 100644
index ab438d6b44b0d..0000000000000
Binary files a/llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol.o and /dev/null 
diff er

diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol64.o b/llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol64.o
deleted file mode 100644
index 60d4cd9e80934..0000000000000
Binary files a/llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol64.o and /dev/null 
diff er

diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/file-aux-wrong64.test b/llvm/test/tools/llvm-readobj/XCOFF/file-aux-wrong64.test
deleted file mode 100644
index f17e27a071d5a..0000000000000
--- a/llvm/test/tools/llvm-readobj/XCOFF/file-aux-wrong64.test
+++ /dev/null
@@ -1,19 +0,0 @@
-## This file tests the raw data output ability when a file auxiliary entry does
-## not have the matching auxiliary type.
-
-# RUN: llvm-readobj --symbols %p/Inputs/file-aux-wrong64.o | FileCheck %s
-
-#      CHECK: Symbols [
-# CHECK-NEXT:   Symbol {
-# CHECK-NEXT:     Index: 0
-# CHECK-NEXT:     Name: .file
-# CHECK-NEXT:     Value (SymbolTableIndex): 0x0
-# CHECK-NEXT:     Section: N_DEBUG
-# CHECK-NEXT:     Source Language ID: 0xC
-# CHECK-NEXT:     CPU Version ID: TCPU_PPC64 (0x2)
-# CHECK-NEXT:     StorageClass: C_FILE (0x67)
-# CHECK-NEXT:     NumberOfAuxEntries: 1
-# CHECK-NEXT:     !Unexpected raw auxiliary entry data:
-# CHECK-NEXT:     612e7300 00000000 00000000 00000000 00fb
-# CHECK-NEXT:   }
-# CHECK-NEXT: ]

diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/symbols-invalid.test b/llvm/test/tools/llvm-readobj/XCOFF/symbols-invalid.test
new file mode 100644
index 0000000000000..b1e10af4f68bd
--- /dev/null
+++ b/llvm/test/tools/llvm-readobj/XCOFF/symbols-invalid.test
@@ -0,0 +1,33 @@
+## This file tests the raw data output ability when a file auxiliary entry does
+## not have the matching auxiliary type.
+
+# RUN: yaml2obj %s -o %t
+# RUN: llvm-readobj --syms %t | FileCheck %s
+
+# CHECK:      Symbols [
+# CHECK-NEXT:   Symbol {
+# CHECK-NEXT:     Index: 0
+# CHECK-NEXT:     Name: .fun
+# CHECK-NEXT:     Value (SymbolTableIndex): 0x0
+# CHECK-NEXT:     Section: N_UNDEF
+# CHECK-NEXT:     Source Language ID: TB_C (0x0)
+# CHECK-NEXT:     CPU Version ID: 0x0
+# CHECK-NEXT:     StorageClass: C_FILE (0x67)
+# CHECK-NEXT:     NumberOfAuxEntries: 1
+# CHECK-NEXT:     !Unexpected raw auxiliary entry data:
+# CHECK-NEXT:     00000000 00000001 00020300 00000000 00fb
+# CHECK-NEXT:   }
+# CHECK-NEXT: ]
+
+--- !XCOFF
+FileHeader:
+  MagicNumber: 0x1F7
+Symbols:
+  - Name:         .fun
+    StorageClass: C_FILE
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     1
+        TypeChkSectNum:         2
+        SymbolAlignmentAndType: 3
+        StorageMappingClass:    XMC_PR

diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/symbols.test b/llvm/test/tools/llvm-readobj/XCOFF/symbols.test
index 6aef3ee31338b..9abe480a77479 100644
--- a/llvm/test/tools/llvm-readobj/XCOFF/symbols.test
+++ b/llvm/test/tools/llvm-readobj/XCOFF/symbols.test
@@ -1,446 +1,192 @@
-# This file tests the ability of llvm-readobj to display the symbol table for a
-# 32-bit XCOFF object file.
-# The object file used is generated by the following source file
-# and command on AIX:
-#
-# > cat test8.c
-#
-# extern int i;
-# extern int TestforXcoff;
-# extern int fun(int i);
-# static int static_i;
-# char* p="abcd";
-# int fun1(int j) {
-#   static_i++;
-#   j++;
-#   j=j+*p;
-#   return j;
-# }
-#
-# int main() {
-#   i++;
-#   fun(i);
-#   return fun1(i);
-# }
-#
-# > xlc -c test8.c -o symbol.o
+## This file tests the ability of llvm-readobj to display the symbol table for a
+## 32-bit XCOFF object file.
 
-RUN: llvm-readobj --symbols %p/Inputs/symbol.o | \
-RUN: FileCheck --check-prefix=SYMBOL32 %s
+# RUN: yaml2obj %s -o %t
+# RUN: llvm-readobj --symbols %t | FileCheck --check-prefix=SYMBOL32 %s
 
-SYMBOL32: File: {{.*}}symbol.o
-SYMBOL32-NEXT: Format: aixcoff-rs6000
-SYMBOL32-NEXT: Arch: powerpc
-SYMBOL32-NEXT: AddressSize: 32bit
-SYMBOL32-NEXT: Symbols [
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 0
-SYMBOL32-NEXT:     Name: .file
-SYMBOL32-NEXT:     Value (SymbolTableIndex): 0x0
-SYMBOL32-NEXT:     Section: N_DEBUG
-SYMBOL32-NEXT:     Source Language ID: TB_C (0x0)
-SYMBOL32-NEXT:     CPU Version ID: TCPU_COM (0x3)
-SYMBOL32-NEXT:     StorageClass: C_FILE (0x67)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 3
-SYMBOL32-NEXT:     File Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 1
-SYMBOL32-NEXT:       Name: test8.c
-SYMBOL32-NEXT:       Type: XFT_FN (0x0)
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:     File Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 2
-SYMBOL32-NEXT:       Name: Sun Apr 28 15:56:49 2019
-SYMBOL32-NEXT:       Type: XFT_CT (0x1)
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:     File Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 3
-SYMBOL32-NEXT:       Name: IBM XL C for AIX, Version 16.1.0.2
-SYMBOL32-NEXT:       Type: XFT_CV (0x2)
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 4
-SYMBOL32-NEXT:     Name: .text
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
-SYMBOL32-NEXT:     Section: .text
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_STAT (0x3)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     Sect Auxiliary Entry For Stat {
-SYMBOL32-NEXT:       Index: 5
-SYMBOL32-NEXT:       SectionLength: 256
-SYMBOL32-NEXT:       NumberOfRelocEnt: 4
-SYMBOL32-NEXT:       NumberOfLineNum: 0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 6
-SYMBOL32-NEXT:     Name: .data
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x100
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_STAT (0x3)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     Sect Auxiliary Entry For Stat {
-SYMBOL32-NEXT:       Index: 7
-SYMBOL32-NEXT:       SectionLength: 60
-SYMBOL32-NEXT:       NumberOfRelocEnt: 11
-SYMBOL32-NEXT:       NumberOfLineNum: 0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 8
-SYMBOL32-NEXT:     Name: .bss
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x13C
-SYMBOL32-NEXT:     Section: .bss
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_STAT (0x3)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     Sect Auxiliary Entry For Stat {
-SYMBOL32-NEXT:       Index: 9
-SYMBOL32-NEXT:       SectionLength: 4
-SYMBOL32-NEXT:       NumberOfRelocEnt: 0
-SYMBOL32-NEXT:       NumberOfLineNum: 0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 10
-SYMBOL32-NEXT:     Name:
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
-SYMBOL32-NEXT:     Section: .text
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 11
-SYMBOL32-NEXT:       SectionLen: 256
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 7
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 12
-SYMBOL32-NEXT:     Name: .fun1
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
-SYMBOL32-NEXT:     Section: .text
-SYMBOL32-NEXT:     Type: 0x20
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 13
-SYMBOL32-NEXT:       ContainingCsectSymbolIndex: 10
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
-SYMBOL32-NEXT:       SymbolType: XTY_LD (0x2)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 14
-SYMBOL32-NEXT:     Name: .main
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x60
-SYMBOL32-NEXT:     Section: .text
-SYMBOL32-NEXT:     Type: 0x20
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 15
-SYMBOL32-NEXT:       ContainingCsectSymbolIndex: 10
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
-SYMBOL32-NEXT:       SymbolType: XTY_LD (0x2)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 16
-SYMBOL32-NEXT:     Name: TOC
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x100
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 17
-SYMBOL32-NEXT:       SectionLen: 0
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC0 (0xF)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 18
-SYMBOL32-NEXT:     Name:
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x114
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 19
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC (0x3)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 20
-SYMBOL32-NEXT:     Name:
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x134
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 21
-SYMBOL32-NEXT:       SectionLen: 5
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 3
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_RO (0x1)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 22
-SYMBOL32-NEXT:     Name: _$STATIC_BSS
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x13C
-SYMBOL32-NEXT:     Section: .bss
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 23
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_CM (0x3)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_RW (0x5)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 24
-SYMBOL32-NEXT:     Name: _$STATIC_BSS
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x104
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 25
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC (0x3)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 26
-SYMBOL32-NEXT:     Name: fun1
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x118
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 27
-SYMBOL32-NEXT:       SectionLen: 12
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_DS (0xA)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 28
-SYMBOL32-NEXT:     Name: fun1
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x100
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 29
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC (0x3)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 30
-SYMBOL32-NEXT:     Name: p
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x130
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 31
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_RW (0x5)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 32
-SYMBOL32-NEXT:     Name: p
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x108
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 33
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC (0x3)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 34
-SYMBOL32-NEXT:     Name: main
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x124
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 35
-SYMBOL32-NEXT:       SectionLen: 12
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_DS (0xA)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 36
-SYMBOL32-NEXT:     Name: main
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x10C
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 37
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC (0x3)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 38
-SYMBOL32-NEXT:     Name: i
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
-SYMBOL32-NEXT:     Section: N_UNDEF
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 39
-SYMBOL32-NEXT:       SectionLen: 0
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
-SYMBOL32-NEXT:       SymbolType: XTY_ER (0x0)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_UA (0x4)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 40
-SYMBOL32-NEXT:     Name: i
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x110
-SYMBOL32-NEXT:     Section: .data
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 41
-SYMBOL32-NEXT:       SectionLen: 4
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 2
-SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_TC (0x3)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT:   Symbol {
-SYMBOL32-NEXT:     Index: 42
-SYMBOL32-NEXT:     Name: .fun
-SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
-SYMBOL32-NEXT:     Section: N_UNDEF
-SYMBOL32-NEXT:     Type: 0x0
-SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
-SYMBOL32-NEXT:     NumberOfAuxEntries: 1
-SYMBOL32-NEXT:     CSECT Auxiliary Entry {
-SYMBOL32-NEXT:       Index: 43
-SYMBOL32-NEXT:       SectionLen: 0
-SYMBOL32-NEXT:       ParameterHashIndex: 0x0
-SYMBOL32-NEXT:       TypeChkSectNum: 0x0
-SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
-SYMBOL32-NEXT:       SymbolType: XTY_ER (0x0)
-SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
-SYMBOL32-NEXT:       StabInfoIndex: 0x0
-SYMBOL32-NEXT:       StabSectNum: 0x0
-SYMBOL32-NEXT:     }
-SYMBOL32-NEXT:   }
-SYMBOL32-NEXT: ]
+--- !XCOFF
+FileHeader:
+  MagicNumber: 0x1DF
+Sections:
+  - Name: .text
+Symbols:
+## The C_FILE symbol with File auxiliary entries.
+  - Name:               .file
+    Value:              0x0
+    Section:            N_DEBUG
+    Type:               0x0
+    StorageClass:       C_FILE
+    NumberOfAuxEntries: 3
+    AuxEntries:
+      - Type:             AUX_FILE
+        FileNameOrString: "test"
+        FileStringType:   XFT_FN
+      - Type:             AUX_FILE
+        FileNameOrString: "foo"
+        FileStringType:   XFT_CT
+      - Type:             AUX_FILE
+        FileNameOrString: "bar"
+        FileStringType:   XFT_CV
+## The C_STAT symbol with a SECT auxiliary entry.
+  - Name:               .text
+    Value:              0x0
+    Section:            .text
+    Type:               0x0
+    StorageClass:       C_STAT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:             AUX_STAT
+        SectionLength:    256
+        NumberOfRelocEnt: 4
+        NumberOfLineNum:  4
+## The C_HIDEXT symbol with a CSECT auxiliary entry.
+  - Name:               .fun
+    Value:              0x0
+    Section:            .text
+    Type:               0x0
+    StorageClass:       C_HIDEXT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     2
+        TypeChkSectNum:         3
+        SymbolAlignmentAndType: 7
+        StorageMappingClass:    XMC_PR
+        SectionOrLength:        256
+        StabInfoIndex:          5
+        StabSectNum:            6
+## The C_EXT symbol with a CSECT auxiliary entry.
+  - Name:               .fun1
+    Value:              0x0
+    Section:            .text
+    Type:               0x20
+    StorageClass:       C_EXT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     1
+        TypeChkSectNum:         2
+        SymbolAlignmentAndType: 3
+        StorageMappingClass:    XMC_PR
+        SectionOrLength:        256
+        StabInfoIndex:          4
+        StabSectNum:            5
+## The C_WEAKEXT symbol with a CSECT auxiliary entry.
+  - Name:               .fun2
+    Value:              0x0
+    Section:            .text
+    Type:               0x20
+    StorageClass:       C_WEAKEXT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     8
+        TypeChkSectNum:         9
+        SymbolAlignmentAndType: 1
+        StorageMappingClass:    XMC_PR
+        SectionOrLength:        256
+        StabInfoIndex:          2
+        StabSectNum:            3
+
+# SYMBOL32:      Symbols [
+# SYMBOL32-NEXT:   Symbol {
+# SYMBOL32-NEXT:     Index: 0
+# SYMBOL32-NEXT:     Name: .file
+# SYMBOL32-NEXT:     Value (SymbolTableIndex): 0x0
+# SYMBOL32-NEXT:     Section: N_DEBUG
+# SYMBOL32-NEXT:     Source Language ID: TB_C (0x0)
+# SYMBOL32-NEXT:     CPU Version ID: 0x0
+# SYMBOL32-NEXT:     StorageClass: C_FILE (0x67)
+# SYMBOL32-NEXT:     NumberOfAuxEntries: 3
+# SYMBOL32-NEXT:     File Auxiliary Entry {
+# SYMBOL32-NEXT:       Index: 1
+# SYMBOL32-NEXT:       Name: test
+# SYMBOL32-NEXT:       Type: XFT_FN (0x0)
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:     File Auxiliary Entry {
+# SYMBOL32-NEXT:       Index: 2
+# SYMBOL32-NEXT:       Name: foo
+# SYMBOL32-NEXT:       Type: XFT_CT (0x1)
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:     File Auxiliary Entry {
+# SYMBOL32-NEXT:       Index: 3
+# SYMBOL32-NEXT:       Name: bar
+# SYMBOL32-NEXT:       Type: XFT_CV (0x2)
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:   }
+# SYMBOL32-NEXT:   Symbol {
+# SYMBOL32-NEXT:     Index: 4
+# SYMBOL32-NEXT:     Name: .text
+# SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL32-NEXT:     Section: .text
+# SYMBOL32-NEXT:     Type: 0x0
+# SYMBOL32-NEXT:     StorageClass: C_STAT (0x3)
+# SYMBOL32-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL32-NEXT:     Sect Auxiliary Entry For Stat {
+# SYMBOL32-NEXT:       Index: 5
+# SYMBOL32-NEXT:       SectionLength: 256
+# SYMBOL32-NEXT:       NumberOfRelocEnt: 4
+# SYMBOL32-NEXT:       NumberOfLineNum: 4
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:   }
+# SYMBOL32-NEXT:   Symbol {
+# SYMBOL32-NEXT:     Index: 6
+# SYMBOL32-NEXT:     Name: .fun
+# SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL32-NEXT:     Section: .text
+# SYMBOL32-NEXT:     Type: 0x0
+# SYMBOL32-NEXT:     StorageClass: C_HIDEXT (0x6B)
+# SYMBOL32-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL32-NEXT:     CSECT Auxiliary Entry {
+# SYMBOL32-NEXT:       Index: 7
+# SYMBOL32-NEXT:       SectionLen: 256
+# SYMBOL32-NEXT:       ParameterHashIndex: 0x2
+# SYMBOL32-NEXT:       TypeChkSectNum: 0x3
+# SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
+# SYMBOL32-NEXT:       SymbolType: 0x7
+# SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
+# SYMBOL32-NEXT:       StabInfoIndex: 0x5
+# SYMBOL32-NEXT:       StabSectNum: 0x6
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:   }
+# SYMBOL32-NEXT:   Symbol {
+# SYMBOL32-NEXT:     Index: 8
+# SYMBOL32-NEXT:     Name: .fun1
+# SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL32-NEXT:     Section: .text
+# SYMBOL32-NEXT:     Type: 0x20
+# SYMBOL32-NEXT:     StorageClass: C_EXT (0x2)
+# SYMBOL32-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL32-NEXT:     CSECT Auxiliary Entry {
+# SYMBOL32-NEXT:       Index: 9
+# SYMBOL32-NEXT:       SectionLen: 256
+# SYMBOL32-NEXT:       ParameterHashIndex: 0x1
+# SYMBOL32-NEXT:       TypeChkSectNum: 0x2
+# SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
+# SYMBOL32-NEXT:       SymbolType: XTY_CM (0x3)
+# SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
+# SYMBOL32-NEXT:       StabInfoIndex: 0x4
+# SYMBOL32-NEXT:       StabSectNum: 0x5
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:   }
+# SYMBOL32-NEXT:   Symbol {
+# SYMBOL32-NEXT:     Index: 10
+# SYMBOL32-NEXT:     Name: .fun2
+# SYMBOL32-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL32-NEXT:     Section: .text
+# SYMBOL32-NEXT:     Type: 0x20
+# SYMBOL32-NEXT:     StorageClass: C_WEAKEXT (0x6F)
+# SYMBOL32-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL32-NEXT:     CSECT Auxiliary Entry {
+# SYMBOL32-NEXT:       Index: 11
+# SYMBOL32-NEXT:       SectionLen: 256
+# SYMBOL32-NEXT:       ParameterHashIndex: 0x8
+# SYMBOL32-NEXT:       TypeChkSectNum: 0x9
+# SYMBOL32-NEXT:       SymbolAlignmentLog2: 0
+# SYMBOL32-NEXT:       SymbolType: XTY_SD (0x1)
+# SYMBOL32-NEXT:       StorageMappingClass: XMC_PR (0x0)
+# SYMBOL32-NEXT:       StabInfoIndex: 0x2
+# SYMBOL32-NEXT:       StabSectNum: 0x3
+# SYMBOL32-NEXT:     }
+# SYMBOL32-NEXT:   }
+# SYMBOL32-NEXT: ]

diff  --git a/llvm/test/tools/llvm-readobj/XCOFF/symbols64.test b/llvm/test/tools/llvm-readobj/XCOFF/symbols64.test
index f3cfcda6a49e4..617f9ed51990c 100644
--- a/llvm/test/tools/llvm-readobj/XCOFF/symbols64.test
+++ b/llvm/test/tools/llvm-readobj/XCOFF/symbols64.test
@@ -1,387 +1,162 @@
 ## This file tests the ability of llvm-readobj to display the symbol table for a
 ## 64-bit XCOFF object file.
-## The object file used is generated by the following source file
-## and command on AIX:
-##
-## > cat test8.c
-##
-## extern int i;
-## extern int TestforXcoff;
-## extern int fun(int i);
-## static int static_i;
-## char* p="abcd";
-## int fun1(int j) {
-##   static_i++;
-##   j++;
-##   j=j+*p;
-##   return j;
-## }
-##
-## int main() {
-##   i++;
-##   fun(i);
-##   return fun1(i);
-## }
-##
-## > xlc -q64 -c test8.c -o symbol64.o
 
-# RUN: llvm-readobj --symbols %p/Inputs/symbol64.o | \
-# RUN:   FileCheck --check-prefix=SYMBOL64 %s
+# RUN: yaml2obj %s -o %t
+# RUN: llvm-readobj --symbols %t | FileCheck --check-prefix=SYMBOL64 %s
 
-# SYMBOL64:       File: {{.*}}symbol64.o
-# SYMBOL64-NEXT:  Format: aix5coff64-rs6000
-# SYMBOL64-NEXT:  Arch: powerpc64
-# SYMBOL64-NEXT:  AddressSize: 64bit
-# SYMBOL64-NEXT:  Symbols [
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 0
-# SYMBOL64-NEXT:      Name: .file
-# SYMBOL64-NEXT:      Value (SymbolTableIndex): 0x0
-# SYMBOL64-NEXT:      Section: N_DEBUG
-# SYMBOL64-NEXT:      Source Language ID: TB_C (0x0)
-# SYMBOL64-NEXT:      CPU Version ID: TCPU_PPC64 (0x2)
-# SYMBOL64-NEXT:      StorageClass: C_FILE (0x67)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 3
-# SYMBOL64-NEXT:      File Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 1
-# SYMBOL64-NEXT:        Name: test64.c
-# SYMBOL64-NEXT:        Type: XFT_FN (0x0)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_FILE (0xFC)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:      File Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 2
-# SYMBOL64-NEXT:        Name: Mon Aug 10 16:07:48 2020
-# SYMBOL64-NEXT:        Type: XFT_CT (0x1)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_FILE (0xFC)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:      File Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 3
-# SYMBOL64-NEXT:        Name: IBM XL C for AIX, Version 16.1.0.6
-# SYMBOL64-NEXT:        Type: XFT_CV (0x2)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_FILE (0xFC)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 4
-# SYMBOL64-NEXT:      Name:
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x0
-# SYMBOL64-NEXT:      Section: .text
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 5
-# SYMBOL64-NEXT:        SectionLen: 256
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 7
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_PR (0x0)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 6
-# SYMBOL64-NEXT:      Name: .fun1
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x0
-# SYMBOL64-NEXT:      Section: .text
-# SYMBOL64-NEXT:      Type: 0x20
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 7
-# SYMBOL64-NEXT:        ContainingCsectSymbolIndex: 4
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 0
-# SYMBOL64-NEXT:        SymbolType: XTY_LD (0x2)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_PR (0x0)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 8
-# SYMBOL64-NEXT:      Name: .main
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x80
-# SYMBOL64-NEXT:      Section: .text
-# SYMBOL64-NEXT:      Type: 0x20
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 9
-# SYMBOL64-NEXT:        ContainingCsectSymbolIndex: 4
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 0
-# SYMBOL64-NEXT:        SymbolType: XTY_LD (0x2)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_PR (0x0)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 10
-# SYMBOL64-NEXT:      Name: TOC
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x100
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 11
-# SYMBOL64-NEXT:        SectionLen: 0
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 2
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC0 (0xF)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 12
-# SYMBOL64-NEXT:      Name:
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x128
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 13
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC (0x3)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 14
-# SYMBOL64-NEXT:      Name:
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x168
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 15
-# SYMBOL64-NEXT:        SectionLen: 5
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_RO (0x1)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 16
-# SYMBOL64-NEXT:      Name: _$STATIC_BSS
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x170
-# SYMBOL64-NEXT:      Section: .bss
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 17
-# SYMBOL64-NEXT:        SectionLen: 4
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 2
-# SYMBOL64-NEXT:        SymbolType: XTY_CM (0x3)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_RW (0x5)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 18
-# SYMBOL64-NEXT:      Name: _$STATIC_BSS
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x108
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 19
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC (0x3)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 20
-# SYMBOL64-NEXT:      Name: fun1
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x130
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 21
-# SYMBOL64-NEXT:        SectionLen: 24
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_DS (0xA)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 22
-# SYMBOL64-NEXT:      Name: fun1
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x100
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 23
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC (0x3)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 24
-# SYMBOL64-NEXT:      Name: p
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x160
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 25
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_RW (0x5)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 26
-# SYMBOL64-NEXT:      Name: p
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x110
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 27
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC (0x3)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 28
-# SYMBOL64-NEXT:      Name: main
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x148
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 29
-# SYMBOL64-NEXT:        SectionLen: 24
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_DS (0xA)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 30
-# SYMBOL64-NEXT:      Name: main
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x118
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 31
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC (0x3)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 32
-# SYMBOL64-NEXT:      Name: i
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x0
-# SYMBOL64-NEXT:      Section: N_UNDEF
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 33
-# SYMBOL64-NEXT:        SectionLen: 0
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 0
-# SYMBOL64-NEXT:        SymbolType: XTY_ER (0x0)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_UA (0x4)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 34
-# SYMBOL64-NEXT:      Name: i
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x120
-# SYMBOL64-NEXT:      Section: .data
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_HIDEXT (0x6B)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 35
-# SYMBOL64-NEXT:        SectionLen: 8
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 3
-# SYMBOL64-NEXT:        SymbolType: XTY_SD (0x1)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_TC (0x3)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:    Symbol {
-# SYMBOL64-NEXT:      Index: 36
-# SYMBOL64-NEXT:      Name: .fun
-# SYMBOL64-NEXT:      Value (RelocatableAddress): 0x0
-# SYMBOL64-NEXT:      Section: N_UNDEF
-# SYMBOL64-NEXT:      Type: 0x0
-# SYMBOL64-NEXT:      StorageClass: C_EXT (0x2)
-# SYMBOL64-NEXT:      NumberOfAuxEntries: 1
-# SYMBOL64-NEXT:      CSECT Auxiliary Entry {
-# SYMBOL64-NEXT:        Index: 37
-# SYMBOL64-NEXT:        SectionLen: 0
-# SYMBOL64-NEXT:        ParameterHashIndex: 0x0
-# SYMBOL64-NEXT:        TypeChkSectNum: 0x0
-# SYMBOL64-NEXT:        SymbolAlignmentLog2: 0
-# SYMBOL64-NEXT:        SymbolType: XTY_ER (0x0)
-# SYMBOL64-NEXT:        StorageMappingClass: XMC_PR (0x0)
-# SYMBOL64-NEXT:        Auxiliary Type: AUX_CSECT (0xFB)
-# SYMBOL64-NEXT:      }
-# SYMBOL64-NEXT:    }
-# SYMBOL64-NEXT:  ]
+--- !XCOFF
+FileHeader:
+  MagicNumber: 0x1F7
+Sections:
+  - Name: .text
+Symbols:
+## The C_FILE symbol with File auxiliary entries.
+  - Name:               .file
+    Value:              0x0
+    Section:            N_DEBUG
+    Type:               0x0
+    StorageClass:       C_FILE
+    NumberOfAuxEntries: 3
+    AuxEntries:
+      - Type:             AUX_FILE
+        FileNameOrString: "test"
+        FileStringType:   XFT_FN
+      - Type:             AUX_FILE
+        FileNameOrString: "foo"
+        FileStringType:   XFT_CT
+      - Type:             AUX_FILE
+        FileNameOrString: "bar"
+        FileStringType:   XFT_CV
+## The C_HIDEXT symbol with a CSECT auxiliary entry.
+  - Name:               .fun
+    Value:              0x0
+    Section:            .text
+    Type:               0x0
+    StorageClass:       C_HIDEXT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     2
+        TypeChkSectNum:         3
+        SymbolAlignmentAndType: 1
+        StorageMappingClass:    XMC_PR
+        SectionOrLengthLo:      4
+        SectionOrLengthHi:      5
+## The C_EXT symbol with a CSECT auxiliary entry.
+  - Name:               .fun1
+    Value:              0x0
+    Section:            .text
+    Type:               0x20
+    StorageClass:       C_EXT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     2
+        TypeChkSectNum:         3
+        SymbolAlignmentAndType: 1
+        StorageMappingClass:    XMC_PR
+        SectionOrLengthLo:      4
+        SectionOrLengthHi:      5
+## The C_WEAKEXT symbol with a CSECT auxiliary entry.
+  - Name:               .fun2
+    Value:              0x0
+    Section:            .text
+    Type:               0x20
+    StorageClass:       C_WEAKEXT
+    NumberOfAuxEntries: 1
+    AuxEntries:
+      - Type:                   AUX_CSECT
+        ParameterHashIndex:     8
+        TypeChkSectNum:         9
+        SymbolAlignmentAndType: 1
+        StorageMappingClass:    XMC_PR
+        SectionOrLengthLo:      2
+        SectionOrLengthHi:      3
+
+# SYMBOL64:      Symbols [
+# SYMBOL64-NEXT:   Symbol {
+# SYMBOL64-NEXT:     Index: 0
+# SYMBOL64-NEXT:     Name: .file
+# SYMBOL64-NEXT:     Value (SymbolTableIndex): 0x0
+# SYMBOL64-NEXT:     Section: N_DEBUG
+# SYMBOL64-NEXT:     Source Language ID: TB_C (0x0)
+# SYMBOL64-NEXT:     CPU Version ID: 0x0
+# SYMBOL64-NEXT:     StorageClass: C_FILE (0x67)
+# SYMBOL64-NEXT:     NumberOfAuxEntries: 3
+# SYMBOL64-NEXT:     File Auxiliary Entry {
+# SYMBOL64-NEXT:       Index: 1
+# SYMBOL64-NEXT:       Name: test
+# SYMBOL64-NEXT:       Type: XFT_FN (0x0)
+# SYMBOL64-NEXT:       Auxiliary Type: AUX_FILE (0xFC)
+# SYMBOL64-NEXT:     }
+# SYMBOL64-NEXT:     File Auxiliary Entry {
+# SYMBOL64-NEXT:       Index: 2
+# SYMBOL64-NEXT:       Name: foo
+# SYMBOL64-NEXT:       Type: XFT_CT (0x1)
+# SYMBOL64-NEXT:       Auxiliary Type: AUX_FILE (0xFC)
+# SYMBOL64-NEXT:     }
+# SYMBOL64-NEXT:     File Auxiliary Entry {
+# SYMBOL64-NEXT:       Index: 3
+# SYMBOL64-NEXT:       Name: bar
+# SYMBOL64-NEXT:       Type: XFT_CV (0x2)
+# SYMBOL64-NEXT:       Auxiliary Type: AUX_FILE (0xFC)
+# SYMBOL64-NEXT:     }
+# SYMBOL64-NEXT:   }
+# SYMBOL64-NEXT:   Symbol {
+# SYMBOL64-NEXT:     Index: 4
+# SYMBOL64-NEXT:     Name: .fun
+# SYMBOL64-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL64-NEXT:     Section: .text
+# SYMBOL64-NEXT:     Type: 0x0
+# SYMBOL64-NEXT:     StorageClass: C_HIDEXT (0x6B)
+# SYMBOL64-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL64-NEXT:     CSECT Auxiliary Entry {
+# SYMBOL64-NEXT:       Index: 5
+# SYMBOL64-NEXT:       SectionLen: 21474836484
+# SYMBOL64-NEXT:       ParameterHashIndex: 0x2
+# SYMBOL64-NEXT:       TypeChkSectNum: 0x3
+# SYMBOL64-NEXT:       SymbolAlignmentLog2: 0
+# SYMBOL64-NEXT:       SymbolType: XTY_SD (0x1)
+# SYMBOL64-NEXT:       StorageMappingClass: XMC_PR (0x0)
+# SYMBOL64-NEXT:       Auxiliary Type: AUX_CSECT (0xFB)
+# SYMBOL64-NEXT:     }
+# SYMBOL64-NEXT:   }
+# SYMBOL64-NEXT:   Symbol {
+# SYMBOL64-NEXT:     Index: 6
+# SYMBOL64-NEXT:     Name: .fun1
+# SYMBOL64-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL64-NEXT:     Section: .text
+# SYMBOL64-NEXT:     Type: 0x20
+# SYMBOL64-NEXT:     StorageClass: C_EXT (0x2)
+# SYMBOL64-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL64-NEXT:     CSECT Auxiliary Entry {
+# SYMBOL64-NEXT:       Index: 7
+# SYMBOL64-NEXT:       SectionLen: 21474836484
+# SYMBOL64-NEXT:       ParameterHashIndex: 0x2
+# SYMBOL64-NEXT:       TypeChkSectNum: 0x3
+# SYMBOL64-NEXT:       SymbolAlignmentLog2: 0
+# SYMBOL64-NEXT:       SymbolType: XTY_SD (0x1)
+# SYMBOL64-NEXT:       StorageMappingClass: XMC_PR (0x0)
+# SYMBOL64-NEXT:       Auxiliary Type: AUX_CSECT (0xFB)
+# SYMBOL64-NEXT:     }
+# SYMBOL64-NEXT:   }
+# SYMBOL64-NEXT:   Symbol {
+# SYMBOL64-NEXT:     Index: 8
+# SYMBOL64-NEXT:     Name: .fun2
+# SYMBOL64-NEXT:     Value (RelocatableAddress): 0x0
+# SYMBOL64-NEXT:     Section: .text
+# SYMBOL64-NEXT:     Type: 0x20
+# SYMBOL64-NEXT:     StorageClass: C_WEAKEXT (0x6F)
+# SYMBOL64-NEXT:     NumberOfAuxEntries: 1
+# SYMBOL64-NEXT:     CSECT Auxiliary Entry {
+# SYMBOL64-NEXT:       Index: 9
+# SYMBOL64-NEXT:       SectionLen: 12884901890
+# SYMBOL64-NEXT:       ParameterHashIndex: 0x8
+# SYMBOL64-NEXT:       TypeChkSectNum: 0x9
+# SYMBOL64-NEXT:       SymbolAlignmentLog2: 0
+# SYMBOL64-NEXT:       SymbolType: XTY_SD (0x1)
+# SYMBOL64-NEXT:       StorageMappingClass: XMC_PR (0x0)
+# SYMBOL64-NEXT:       Auxiliary Type: AUX_CSECT (0xFB)
+# SYMBOL64-NEXT:     }
+# SYMBOL64-NEXT:   }
+# SYMBOL64-NEXT: ]


        


More information about the llvm-commits mailing list