[PATCH] D21073: [ELF] - Tweak verneed.s test to support llvm-readobj functionality

George Rimar via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 7 06:53:05 PDT 2016


grimar created this revision.
grimar added reviewers: ruiu, rafael.
grimar added subscribers: llvm-commits, grimar.

Since llvm-readobj supports all versioning relative sections for dumping now,
I think this test should use that instead of binary data check.

http://reviews.llvm.org/D21073

Files:
  test/ELF/verneed.s

Index: test/ELF/verneed.s
===================================================================
--- test/ELF/verneed.s
+++ test/ELF/verneed.s
@@ -1,7 +1,7 @@
 # REQUIRES: x86
 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
 # RUN: ld.lld %t.o %S/Inputs/verneed1.so %S/Inputs/verneed2.so -o %t
-# RUN: llvm-readobj -sections -dyn-symbols -dynamic-table %t | FileCheck %s
+# RUN: llvm-readobj -V -sections -dyn-symbols -dynamic-table %t | FileCheck %s
 # RUN: llvm-objdump -s %t | FileCheck --check-prefix=CONTENTS %s
 
 # CHECK:        Section {
@@ -93,21 +93,63 @@
 # CHECK-NEXT: 0x000000006FFFFFFE VERNEED              0x10230
 # CHECK-NEXT: 0x000000006FFFFFFF VERNEEDNUM           2
 
-# CONTENTS:      Contents of section .gnu.version:
-# CONTENTS-NEXT:  10228 00000200 03000400
-# CONTENTS-NEXT: Contents of section .gnu.version_r:
-#                       vn_version
-#                           vn_cnt
-#                                vn_file  vn_aux   vn_next
-# CONTENTS-NEXT:  10230 01000200 04000000 20000000 10000000  ........ .......
-# CONTENTS-NEXT:  10240 01000100 1e000000 30000000 00000000  ........0.......
-#                       vna_hash vna_flags
-#                                    vna_other
-#                                         vna_name
-#                                                  vna_next
-# CONTENTS-NEXT:  10250 92070000 00000300 18000000 10000000  ................
-# CONTENTS-NEXT:  10260 93070000 00000200 12000000 00000000  ................
-# CONTENTS-NEXT:  10270 91070000 00000400 2c000000 00000000  ........,.......
+# CHECK:      Version symbols {
+# CHECK-NEXT:    Section Name: .gnu.version
+# CHECK-NEXT:    Address: 0x10228
+# CHECK-NEXT:    Offset: 0x228
+# CHECK-NEXT:    Link: 1
+# CHECK-NEXT:    Symbols [
+# CHECK-NEXT:      Symbol {
+# CHECK-NEXT:        Version: 0
+# CHECK-NEXT:        Name: @
+# CHECK-NEXT:      }
+# CHECK-NEXT:      Symbol {
+# CHECK-NEXT:        Version: 2
+# CHECK-NEXT:        Name: f1 at v3
+# CHECK-NEXT:      }
+# CHECK-NEXT:      Symbol {
+# CHECK-NEXT:        Version: 3
+# CHECK-NEXT:        Name: f2 at v2
+# CHECK-NEXT:      }
+# CHECK-NEXT:      Symbol {
+# CHECK-NEXT:        Version: 4
+# CHECK-NEXT:        Name: g1 at v1
+# CHECK-NEXT:      }
+# CHECK-NEXT:    ]
+# CHECK-NEXT:  }
+# CHECK-NEXT:  Version definition {
+# CHECK-NEXT:  }
+# CHECK-NEXT:  SHT_GNU_verneed {
+# CHECK-NEXT:    Dependency {
+# CHECK-NEXT:      Version: 1
+# CHECK-NEXT:      Count: 2
+# CHECK-NEXT:      FileName: verneed1.so.0
+# CHECK-NEXT:      Entry {
+# CHECK-NEXT:        Hash: 1938
+# CHECK-NEXT:        Flags: 0x0
+# CHECK-NEXT:        Index: 3
+# CHECK-NEXT:        Name: v2
+# CHECK-NEXT:      }
+# CHECK-NEXT:      Entry {
+# CHECK-NEXT:        Hash: 1939
+# CHECK-NEXT:        Flags: 0x0
+# CHECK-NEXT:        Index: 2
+# CHECK-NEXT:        Name: v3
+# CHECK-NEXT:      }
+# CHECK-NEXT:    }
+# CHECK-NEXT:    Dependency {
+# CHECK-NEXT:      Version: 1
+# CHECK-NEXT:      Count: 1
+# CHECK-NEXT:      FileName: verneed2.so.0
+# CHECK-NEXT:      Entry {
+# CHECK-NEXT:        Hash: 1937
+# CHECK-NEXT:        Flags: 0x0
+# CHECK-NEXT:        Index: 4
+# CHECK-NEXT:        Name: v1
+# CHECK-NEXT:      }
+# CHECK-NEXT:    }
+# CHECK-NEXT:  }
+
 # CONTENTS:      Contents of section .dynstr:
 # CONTENTS-NEXT:  102a8 00663100 7665726e 65656431 2e736f2e  .f1.verneed1.so.
 # CONTENTS-NEXT:  102b8 30007633 00663200 76320067 31007665  0.v3.f2.v2.g1.ve


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D21073.59881.patch
Type: text/x-patch
Size: 3446 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160607/3186772a/attachment.bin>


More information about the llvm-commits mailing list