<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Green dragon seems sad:<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><a href="http://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-incremental/62906/consoleFull" class="">http://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-incremental/62906/consoleFull</a></div></blockquote><div class=""><br class=""></div><div class="">Is this issue fixed?</div><div class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Jul 8, 2019, at 6:41 AM, Owen Reynolds via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org" class="">llvm-commits@lists.llvm.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Author: gbreynoo<br class="">Date: Mon Jul  8 06:41:52 2019<br class="">New Revision: 365318<br class=""><br class="">URL: <a href="http://llvm.org/viewvc/llvm-project?rev=365318&view=rev" class="">http://llvm.org/viewvc/llvm-project?rev=365318&view=rev</a><br class="">Log:<br class="">Reapply [llvm-ar][test] Increase llvm-ar test coverage<br class=""><br class="">This change adds tests to cover existing llvm-ar functionality.<br class=""><br class="">Differential Revision: <a href="https://reviews.llvm.org/D63935" class="">https://reviews.llvm.org/D63935</a><br class=""><br class="">Added:<br class="">    llvm/trunk/test/tools/llvm-ar/create.test<br class="">    llvm/trunk/test/tools/llvm-ar/dash-before-letter.test<br class="">    llvm/trunk/test/tools/llvm-ar/delete.test<br class="">    llvm/trunk/test/tools/llvm-ar/extract.test<br class="">    llvm/trunk/test/tools/llvm-ar/insert-after.test<br class="">      - copied, changed from r365316, llvm/trunk/test/tools/llvm-ar/insert-after.test<br class="">    llvm/trunk/test/tools/llvm-ar/insert-before.test<br class="">      - copied, changed from r365316, llvm/trunk/test/tools/llvm-ar/insert-before.test<br class="">    llvm/trunk/test/tools/llvm-ar/move-after.test<br class="">    llvm/trunk/test/tools/llvm-ar/move-before.test<br class="">    llvm/trunk/test/tools/llvm-ar/symtab.test<br class="">Modified:<br class="">    llvm/trunk/test/tools/llvm-ar/default-add.test<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/create.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/create.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/create.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/create.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/create.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,14 @@<br class="">+## Test the creation warning and supression of that warning.<br class="">+<br class="">+RUN: touch %t1.txt<br class="">+RUN: touch %t2.txt<br class="">+<br class="">+RUN: rm -f %<a href="http://t.warning.ar" class="">t.warning.ar</a><br class="">+RUN: llvm-ar r %<a href="http://t.warning.ar" class="">t.warning.ar</a> %t1.txt %t2.txt 2>&1 \<br class="">+RUN:   | FileCheck %s -DOUTPUT=%<a href="http://t.warning.ar" class="">t.warning.ar</a><br class="">+<br class="">+CHECK: warning: creating [[OUTPUT]]<br class="">+<br class="">+RUN: rm -f %<a href="http://t.supressed.ar" class="">t.supressed.ar</a><br class="">+RUN: llvm-ar cr %<a href="http://t.supressed.ar" class="">t.supressed.ar</a> %t1.txt %t2.txt 2>&1 \<br class="">+RUN:   | FileCheck --allow-empty /dev/null --implicit-check-not={{.}}<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/dash-before-letter.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/dash-before-letter.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/dash-before-letter.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/dash-before-letter.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/dash-before-letter.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,12 @@<br class="">+# Test the use of dash before key letters.<br class="">+<br class="">+RUN: touch %t1.txt<br class="">+RUN: touch %t2.txt<br class="">+<br class="">+RUN: rm -f %<a href="http://t.ar" class="">t.ar</a><br class="">+RUN: llvm-ar s -cr %<a href="http://t.ar" class="">t.ar</a> %t1.txt<br class="">+RUN: llvm-ar -r -s %<a href="http://t.ar" class="">t.ar</a> %t2.txt -s<br class="">+RUN: llvm-ar -t %<a href="http://t.ar" class="">t.ar</a> | FileCheck %s<br class="">+<br class="">+CHECK:      1.txt<br class="">+CHECK-NEXT: 2.txt<br class=""><br class="">Modified: llvm/trunk/test/tools/llvm-ar/default-add.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/default-add.test?rev=365318&r1=365317&r2=365318&view=diff" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/default-add.test?rev=365318&r1=365317&r2=365318&view=diff</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/default-add.test (original)<br class="">+++ llvm/trunk/test/tools/llvm-ar/default-add.test Mon Jul  8 06:41:52 2019<br class="">@@ -1,34 +1,20 @@<br class=""> RUN: yaml2obj %S/Inputs/macho.yaml -o %t-macho.o<br class=""> RUN: yaml2obj %S/Inputs/coff.yaml -o %t-coff.o<br class="">+RUN: yaml2obj %S/Inputs/elf.yaml -o %t-elf.o<br class=""><br class=""> RUN: rm -f %<a href="http://t.ar" class="">t.ar</a><br class=""> RUN: llvm-ar crs %<a href="http://t.ar" class="">t.ar</a> %t-macho.o<br class=""> RUN: grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class="">-Test that an option string prefixed by a dash works.<br class="">-RUN: llvm-ar -crs %<a href="http://t.ar" class="">t.ar</a> %t-coff.o<br class="">-RUN: grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class=""><br class=""> RUN: rm -f %<a href="http://t.ar" class="">t.ar</a><br class=""> RUN: llvm-ar crs %<a href="http://t.ar" class="">t.ar</a> %t-coff.o<br class=""> RUN: not grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class=""> RUN: llvm-ar crs %<a href="http://t.ar" class="">t.ar</a> %t-macho.o<br class=""> RUN: not grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class="">-<br class="">-RUN: rm -f %<a href="http://t.ar" class="">t.ar</a><br class="">-Test that multiple dashed options works.<br class="">-RUN: llvm-ar -c -r -s %<a href="http://t.ar" class="">t.ar</a> %t-macho.o<br class="">-RUN: grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class="">-Test with duplicated options.<br class="">-RUN: llvm-ar -c -r -s -c -s %<a href="http://t.ar" class="">t.ar</a> %t-coff.o<br class="">-RUN: grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class="">+RUN: llvm-ar crs %<a href="http://t.ar" class="">t.ar</a> %t-elf.o<br class="">+RUN: not grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class=""><br class=""> RUN: rm -f %<a href="http://t.ar" class="">t.ar</a><br class=""> Test with the options in a different order.<br class=""> RUN: llvm-ar rsc %<a href="http://t.ar" class="">t.ar</a> %t-macho.o<br class=""> RUN: grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class="">-Test with options everywhere.<br class="">-RUN: llvm-ar rsc -cs -sc %<a href="http://t.ar" class="">t.ar</a> %t-coff.o -cs -sc<br class="">-RUN: grep -q __.SYMDEF %<a href="http://t.ar" class="">t.ar</a><br class="">-<br class="">-Ensure that we select the existing format when updating.<br class="">-<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/delete.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/delete.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/delete.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/delete.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/delete.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,67 @@<br class="">+## Test the deletion of members and that symbols are removed from the symbol table.<br class="">+<br class="">+# RUN: yaml2obj %s -o %t-delete.o --docnum=1<br class="">+# RUN: yaml2obj %s -o %t-keep.o --docnum=2<br class="">+# RUN: touch %t1.txt<br class="">+# RUN: touch %t2.txt<br class="">+<br class="">+## Add file:<br class="">+# RUN: rm -f %t.a<br class="">+# RUN: llvm-ar rc %t.a %t1.txt %t-delete.o %t-keep.o %t2.txt<br class="">+# RUN: llvm-nm --print-armap %t.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMBOL-ADDED<br class="">+# RUN: llvm-ar t %t.a | FileCheck %s --check-prefix=FILE-ADDED<br class="">+<br class="">+# SYMBOL-ADDED:      symbol1<br class="">+# SYMBOL-ADDED-NEXT: symbol2<br class="">+<br class="">+# FILE-ADDED:      1.txt<br class="">+# FILE-ADDED-NEXT: delete.o<br class="">+# FILE-ADDED-NEXT: keep.o<br class="">+# FILE-ADDED-NEXT: 2.txt<br class="">+<br class="">+## Delete file that is not a member:<br class="">+# RUN: cp %t.a %t-archive-copy.a<br class="">+# RUN: llvm-ar d %t.a t/missing.o<br class="">+# RUN: cmp %t.a %t-archive-copy.a<br class="">+<br class="">+## Delete file:<br class="">+# RUN: llvm-ar d %t.a %t-delete.o<br class="">+# RUN: llvm-nm --print-armap %t.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMBOL-DELETED --implicit-check-not symbol1<br class="">+# RUN: llvm-ar t %t.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=FILE-DELETED --implicit-check-not delete.o<br class="">+<br class="">+# SYMBOL-DELETED: symbol2<br class="">+<br class="">+# FILE-DELETED:      1.txt<br class="">+# FILE-DELETED-NEXT: keep.o<br class="">+# FILE-DELETED-NEXT: 2.txt<br class="">+<br class="">+--- !ELF<br class="">+FileHeader:<br class="">+  Class:   ELFCLASS64<br class="">+  Data:    ELFDATA2LSB<br class="">+  Type:    ET_REL<br class="">+  Machine: EM_X86_64<br class="">+Sections:<br class="">+  - Name: .text<br class="">+    Type: SHT_PROGBITS<br class="">+Symbols:<br class="">+  - Name:    symbol1<br class="">+    Binding: STB_GLOBAL<br class="">+    Section: .text<br class="">+<br class="">+--- !ELF<br class="">+FileHeader:<br class="">+  Class:   ELFCLASS64<br class="">+  Data:    ELFDATA2LSB<br class="">+  Type:    ET_REL<br class="">+  Machine: EM_X86_64<br class="">+Sections:<br class="">+  - Name: .text<br class="">+    Type: SHT_PROGBITS<br class="">+Symbols:<br class="">+  - Name:    symbol2<br class="">+    Binding: STB_GLOBAL<br class="">+    Section: .text<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/extract.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/extract.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/extract.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/extract.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/extract.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,21 @@<br class="">+## Test extract operation.<br class="">+RUN: rm -rf %t && mkdir -p %t/extracted/<br class="">+<br class="">+# Extracting from an empty archive should not warn or error:<br class="">+RUN: llvm-ar cr %t/empty.a<br class="">+RUN: llvm-ar x %t/empty.a 2>&1 \<br class="">+RUN:   | FileCheck --allow-empty /dev/null --implicit-check-not={{.}}<br class="">+<br class="">+RUN: echo filea > %t/a.txt<br class="">+RUN: echo fileb > %t/b.txt<br class="">+RUN: llvm-ar rc %t/archive.a %t/a.txt %t/b.txt<br class="">+<br class="">+# Single member:<br class="">+RUN: cd %t/extracted && llvm-ar x %t/archive.a a.txt<br class="">+RUN: diff %t/a.txt %t/extracted/a.txt <br class="">+<br class="">+# All members:<br class="">+RUN: rm %t/extracted/a.txt<br class="">+RUN: cd %t/extracted && llvm-ar x %t/archive.a<br class="">+RUN: diff %t/a.txt %t/extracted/a.txt <br class="">+RUN: diff %t/b.txt %t/extracted/b.txt <br class=""><br class="">Copied: llvm/trunk/test/tools/llvm-ar/insert-after.test (from r365316, llvm/trunk/test/tools/llvm-ar/insert-after.test)<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/insert-after.test?p2=llvm/trunk/test/tools/llvm-ar/insert-after.test&p1=llvm/trunk/test/tools/llvm-ar/insert-after.test&r1=365316&r2=365318&rev=365318&view=diff" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/insert-after.test?p2=llvm/trunk/test/tools/llvm-ar/insert-after.test&p1=llvm/trunk/test/tools/llvm-ar/insert-after.test&r1=365316&r2=365318&rev=365318&view=diff</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/insert-after.test (original)<br class="">+++ llvm/trunk/test/tools/llvm-ar/insert-after.test Mon Jul  8 06:41:52 2019<br class="">@@ -6,7 +6,7 @@ RUN: touch %t3.txt<br class=""> RUN: touch %t4.txt<br class=""><br class=""> # Insert one file:<br class="">-RUN: rm -f %<a href="http://t-one.ar" class="">t-one.ar</a><br class="">+RUN: rm -f %t-one.a<br class=""> RUN: llvm-ar rc %t-one.a %t1.txt %t2.txt<br class=""> RUN: llvm-ar ra %t1.txt %t-one.a %t3.txt<br class=""> RUN: llvm-ar t %t-one.a | FileCheck %s --check-prefix=ONE<br class="">@@ -16,7 +16,7 @@ ONE-NEXT: 3.txt<br class=""> ONE-NEXT: 2.txt<br class=""><br class=""> # Insert file at back:<br class="">-RUN: rm -f %<a href="http://t-back.ar" class="">t-back.ar</a><br class="">+RUN: rm -f %t-back.a<br class=""> RUN: llvm-ar rc %t-back.a %t1.txt %t2.txt<br class=""> RUN: llvm-ar ra %t2.txt %t-back.a %t3.txt<br class=""> RUN: llvm-ar t %t-back.a | FileCheck %s --check-prefix=BACK<br class="">@@ -26,18 +26,18 @@ BACK-NEXT: 2.txt<br class=""> BACK-NEXT: 3.txt<br class=""><br class=""> # Insert multiple files:<br class="">-RUN: rm -f %<a href="http://t-multiple.ar" class="">t-multiple.ar</a><br class="">+RUN: rm -f %t-multiple.a<br class=""> RUN: llvm-ar rc %t-multiple.a %t1.txt %t2.txt<br class=""> RUN: llvm-ar ra %t1.txt %t-multiple.a %t4.txt %t3.txt<br class=""> RUN: llvm-ar t %t-multiple.a | FileCheck %s --check-prefix=MULTIPLE<br class=""><br class=""> MULTIPLE:      1.txt<br class="">-MULTIPLE-NEXT: 3.txt<br class=""> MULTIPLE-NEXT: 4.txt<br class="">+MULTIPLE-NEXT: 3.txt<br class=""> MULTIPLE-NEXT: 2.txt<br class=""><br class=""> # Insert after invalid file:<br class="">-RUN: rm -f %<a href="http://t-invalid.ar" class="">t-invalid.ar</a><br class="">+RUN: rm -f %t-invalid.a<br class=""> RUN: llvm-ar rc %t-invalid.a %t1.txt %t2.txt %t3.txt<br class=""> RUN: not llvm-ar ra invalid.txt %t-invalid.a %t2.txt 2>&1 \<br class=""> RUN:   | FileCheck %s --check-prefix=ERROR<br class="">@@ -49,7 +49,7 @@ INVALID-NEXT: 2.txt<br class=""> INVALID-NEXT: 3.txt<br class=""><br class=""> # Insert file at the same position:<br class="">-RUN: rm -f %<a href="http://t-position.ar" class="">t-position.ar</a><br class="">+RUN: rm -f %t-position.a<br class=""> RUN: llvm-ar rc %t-position.a %t1.txt %t2.txt %t3.txt<br class=""> RUN: llvm-ar ra %t1.txt %t-position.a %t2.txt<br class=""> RUN: llvm-ar t %t-position.a | FileCheck %s --check-prefix=POSITION<br class=""><br class="">Copied: llvm/trunk/test/tools/llvm-ar/insert-before.test (from r365316, llvm/trunk/test/tools/llvm-ar/insert-before.test)<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/insert-before.test?p2=llvm/trunk/test/tools/llvm-ar/insert-before.test&p1=llvm/trunk/test/tools/llvm-ar/insert-before.test&r1=365316&r2=365318&rev=365318&view=diff" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/insert-before.test?p2=llvm/trunk/test/tools/llvm-ar/insert-before.test&p1=llvm/trunk/test/tools/llvm-ar/insert-before.test&r1=365316&r2=365318&rev=365318&view=diff</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/insert-before.test (original)<br class="">+++ llvm/trunk/test/tools/llvm-ar/insert-before.test Mon Jul  8 06:41:52 2019<br class="">@@ -6,7 +6,7 @@ RUN: touch %t3.txt<br class=""> RUN: touch %t4.txt<br class=""><br class=""> # Insert one file:<br class="">-RUN: rm -f %<a href="http://t-one.ar" class="">t-one.ar</a><br class="">+RUN: rm -f %t-one.a<br class=""> RUN: llvm-ar rc %t-one.a %t1.txt %t2.txt<br class=""> RUN: llvm-ar rb %t2.txt %t-one.a %t3.txt<br class=""> RUN: llvm-ar t %t-one.a | FileCheck %s --check-prefix=ONE<br class="">@@ -16,7 +16,7 @@ ONE-NEXT: 3.txt<br class=""> ONE-NEXT: 2.txt<br class=""><br class=""> # Insert file at front:<br class="">-RUN: rm -f %<a href="http://t-front.ar" class="">t-front.ar</a><br class="">+RUN: rm -f %t-front.a<br class=""> RUN: llvm-ar rc %t-front.a %t1.txt %t2.txt<br class=""> RUN: llvm-ar rb %t1.txt %t-front.a %t3.txt<br class=""> RUN: llvm-ar t %t-front.a | FileCheck %s --check-prefix=FRONT<br class="">@@ -26,18 +26,18 @@ FRONT-NEXT: 1.txt<br class=""> FRONT-NEXT: 2.txt<br class=""><br class=""> # Insert multiple files:<br class="">-RUN: rm -f %<a href="http://t-multiple.ar" class="">t-multiple.ar</a><br class="">+RUN: rm -f %t-multiple.a<br class=""> RUN: llvm-ar rc %t-multiple.a %t1.txt %t2.txt<br class=""> RUN: llvm-ar rb %t2.txt %t-multiple.a %t4.txt %t3.txt<br class=""> RUN: llvm-ar t %t-multiple.a | FileCheck %s --check-prefix=MULTIPLE<br class=""><br class=""> MULTIPLE:      1.txt<br class="">-MULTIPLE-NEXT: 3.txt<br class=""> MULTIPLE-NEXT: 4.txt<br class="">+MULTIPLE-NEXT: 3.txt<br class=""> MULTIPLE-NEXT: 2.txt<br class=""><br class=""> # Insert before an invalid file:<br class="">-RUN: rm -f %<a href="http://t-invalid.ar" class="">t-invalid.ar</a><br class="">+RUN: rm -f %t-invalid.a<br class=""> RUN: llvm-ar rc %t-invalid.a %t1.txt %t2.txt %t3.txt<br class=""> RUN: not llvm-ar rb invalid.txt %t-invalid.a %t2.txt 2>&1 \<br class=""> RUN:   | FileCheck %s --check-prefix=ERROR<br class="">@@ -49,7 +49,7 @@ INVALID-NEXT: 2.txt<br class=""> INVALID-NEXT: 3.txt<br class=""><br class=""> # Insert file at the same position:<br class="">-RUN: rm -f %<a href="http://t-position.ar" class="">t-position.ar</a><br class="">+RUN: rm -f %t-position.a<br class=""> RUN: llvm-ar rc %t-position.a %t1.txt %t2.txt %t3.txt<br class=""> RUN: llvm-ar rb %t3.txt %t-position.a %t2.txt<br class=""> RUN: llvm-ar t %t-position.a | FileCheck %s --check-prefix=POSITION<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/move-after.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/move-after.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/move-after.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/move-after.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/move-after.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,59 @@<br class="">+## Test moving files after a file.<br class="">+<br class="">+RUN: touch %t1.txt<br class="">+RUN: touch %t2.txt<br class="">+RUN: touch %t3.txt<br class="">+RUN: touch %t4.txt<br class="">+<br class="">+# Move one file:<br class="">+RUN: rm -f %<a href="http://t-one.ar" class="">t-one.ar</a><br class="">+RUN: llvm-ar rc %t-one.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar ma %t1.txt %t-one.a %t3.txt<br class="">+RUN: llvm-ar t %t-one.a | FileCheck %s --check-prefix=ONE<br class="">+<br class="">+ONE:      1.txt<br class="">+ONE-NEXT: 3.txt<br class="">+ONE-NEXT: 2.txt<br class="">+<br class="">+# Move file to back:<br class="">+RUN: rm -f %<a href="http://t-back.ar" class="">t-back.ar</a><br class="">+RUN: llvm-ar rc %t-back.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar ma %t2.txt %t-back.a %t1.txt<br class="">+RUN: llvm-ar t %t-back.a | FileCheck %s --check-prefix=BACK<br class="">+<br class="">+BACK:      2.txt<br class="">+BACK-NEXT: 1.txt<br class="">+BACK-NEXT: 3.txt<br class="">+<br class="">+# Move multiple files:<br class="">+RUN: rm -f %<a href="http://t-multiple.ar" class="">t-multiple.ar</a><br class="">+RUN: llvm-ar rc %t-multiple.a %t1.txt %t2.txt %t3.txt %t4.txt<br class="">+RUN: llvm-ar ma %t1.txt %t-multiple.a  %t4.txt %t3.txt<br class="">+RUN: llvm-ar t %t-multiple.a | FileCheck %s --check-prefix=MULTIPLE<br class="">+<br class="">+MULTIPLE:      1.txt<br class="">+MULTIPLE-NEXT: 3.txt<br class="">+MULTIPLE-NEXT: 4.txt<br class="">+MULTIPLE-NEXT: 2.txt<br class="">+<br class="">+# Move after invalid file:<br class="">+RUN: rm -f %<a href="http://t-invalid.ar" class="">t-invalid.ar</a><br class="">+RUN: llvm-ar rc %t-invalid.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: not llvm-ar ma invalid.txt %t-invalid.a %t2.txt 2>&1 \<br class="">+RUN:   | FileCheck %s --check-prefix=ERROR<br class="">+RUN: llvm-ar t %t-invalid.a | FileCheck %s --check-prefix=INVALID<br class="">+<br class="">+ERROR: error: Insertion point not found.<br class="">+INVALID:      1.txt<br class="">+INVALID-NEXT: 2.txt<br class="">+INVALID-NEXT: 3.txt<br class="">+<br class="">+# Move file to the same position:<br class="">+RUN: rm -f %<a href="http://t-position.ar" class="">t-position.ar</a><br class="">+RUN: llvm-ar rc %t-position.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar ma %t1.txt %t-position.a %t2.txt<br class="">+RUN: llvm-ar t %t-position.a | FileCheck %s --check-prefix=POSITION<br class="">+<br class="">+POSITION:      1.txt<br class="">+POSITION-NEXT: 2.txt<br class="">+POSITION-NEXT: 3.txt<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/move-before.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/move-before.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/move-before.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/move-before.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/move-before.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,69 @@<br class="">+## Test moving files after a file.<br class="">+<br class="">+RUN: touch %t1.txt<br class="">+RUN: touch %t2.txt<br class="">+RUN: touch %t3.txt<br class="">+RUN: touch %t4.txt<br class="">+<br class="">+# Move one file:<br class="">+RUN: rm -f %<a href="http://t-one.ar" class="">t-one.ar</a><br class="">+RUN: llvm-ar rc %t-one.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar mb %t2.txt %t-one.a %t3.txt<br class="">+RUN: llvm-ar t %t-one.a | FileCheck %s --check-prefix=ONE<br class="">+<br class="">+ONE:      1.txt<br class="">+ONE-NEXT: 3.txt<br class="">+ONE-NEXT: 2.txt<br class="">+<br class="">+# Move file to front:<br class="">+RUN: rm -f %<a href="http://t-front.ar" class="">t-front.ar</a><br class="">+RUN: llvm-ar rc %<a href="http://t-front.ar" class="">t-front.ar</a> %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar mb %t1.txt %<a href="http://t-front.ar" class="">t-front.ar</a> %t3.txt<br class="">+RUN: llvm-ar t %<a href="http://t-front.ar" class="">t-front.ar</a> | FileCheck %s --check-prefix=FRONT<br class="">+<br class="">+FRONT:      3.txt<br class="">+FRONT-NEXT: 1.txt<br class="">+FRONT-NEXT: 2.txt<br class="">+<br class="">+# Move multiple files:<br class="">+RUN: rm -f %<a href="http://t-multiple.ar" class="">t-multiple.ar</a><br class="">+RUN: llvm-ar rc %t-multiple.a %t1.txt %t2.txt %t3.txt %t4.txt<br class="">+RUN: llvm-ar mb %t2.txt %t-multiple.a %t4.txt %t3.txt<br class="">+RUN: llvm-ar t %t-multiple.a | FileCheck %s --check-prefix=MULTIPLE<br class="">+<br class="">+MULTIPLE:      1.txt<br class="">+MULTIPLE-NEXT: 3.txt<br class="">+MULTIPLE-NEXT: 4.txt<br class="">+MULTIPLE-NEXT: 2.txt<br class="">+<br class="">+# Move before invalid file:<br class="">+RUN: rm -f %<a href="http://t-invalid.ar" class="">t-invalid.ar</a><br class="">+RUN: llvm-ar rc %t-invalid.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: not llvm-ar mb invalid.txt %t-invalid.a %t2.txt 2>&1 \<br class="">+RUN:   | FileCheck %s --check-prefix=ERROR<br class="">+RUN: llvm-ar t %t-invalid.a | FileCheck %s --check-prefix=INVALID<br class="">+<br class="">+ERROR: error: Insertion point not found.<br class="">+INVALID:      1.txt<br class="">+INVALID-NEXT: 2.txt<br class="">+INVALID-NEXT: 3.txt<br class="">+<br class="">+# Move file to the same position:<br class="">+RUN: rm -f %<a href="http://t-position.ar" class="">t-position.ar</a><br class="">+RUN: llvm-ar rc %t-position.a %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar mb %t3.txt %t-position.a %t2.txt<br class="">+RUN: llvm-ar t %t-position.a | FileCheck %s --check-prefix=POSITION<br class="">+<br class="">+POSITION:      1.txt<br class="">+POSITION-NEXT: 2.txt<br class="">+POSITION-NEXT: 3.txt<br class="">+<br class="">+# Move file after itself:<br class="">+RUN: rm -f %<a href="http://t-same.ar" class="">t-same.ar</a><br class="">+RUN: llvm-ar rc %<a href="http://t-same.ar" class="">t-same.ar</a> %t1.txt %t2.txt %t3.txt<br class="">+RUN: llvm-ar mb %t2.txt %<a href="http://t-same.ar" class="">t-same.ar</a> %t2.txt<br class="">+RUN: llvm-ar t %<a href="http://t-same.ar" class="">t-same.ar</a> | FileCheck %s --check-prefix=SAME<br class="">+<br class="">+SAME:      1.txt<br class="">+SAME-NEXT: 2.txt<br class="">+SAME-NEXT: 3.txt<br class=""><br class="">Added: llvm/trunk/test/tools/llvm-ar/symtab.test<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/symtab.test?rev=365318&view=auto" class="">http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-ar/symtab.test?rev=365318&view=auto</a><br class="">==============================================================================<br class="">--- llvm/trunk/test/tools/llvm-ar/symtab.test (added)<br class="">+++ llvm/trunk/test/tools/llvm-ar/symtab.test Mon Jul  8 06:41:52 2019<br class="">@@ -0,0 +1,70 @@<br class="">+## Test the s and S modifiers. Build and do not build a symbol table.<br class="">+<br class="">+# RUN: yaml2obj %s -o %t.o<br class="">+# RUN: touch %t-other.txt<br class="">+<br class="">+## Default:<br class="">+# RUN: rm -f %t-default.a<br class="">+# RUN: llvm-ar rc %t-default.a %t.o<br class="">+# RUN: llvm-nm --print-armap %t-default.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMTAB<br class="">+<br class="">+## Use a modifer:<br class="">+# RUN: rm -f %t-symtab.a<br class="">+# RUN: llvm-ar rcs %t-symtab.a %t.o<br class="">+# RUN: llvm-nm --print-armap %t-symtab.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMTAB<br class="">+<br class="">+# RUN: rm -f %t-no-symtab.a<br class="">+# RUN: llvm-ar rcS %t-no-symtab.a %t.o<br class="">+# RUN: llvm-nm --print-armap %t-no-symtab.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=NO-SYMTAB<br class="">+<br class="">+## Use both modifers:<br class="">+# RUN: rm -f %t-symtab-last.a<br class="">+# RUN: llvm-ar rcSs %t-symtab-last.a %t.o<br class="">+# RUN: llvm-nm --print-armap %t-symtab-last.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMTAB<br class="">+<br class="">+# RUN: rm -f %t-no-symtab-last.a<br class="">+# RUN: llvm-ar rcsS %t-no-symtab-last.a %t.o<br class="">+# RUN: llvm-nm --print-armap %t-no-symtab-last.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=NO-SYMTAB<br class="">+<br class="">+## Use an existing archive:<br class="">+# RUN: rm -f %t-to-symtab.a<br class="">+# RUN: llvm-ar rcS %t-to-symtab.a %t.o<br class="">+# RUN: llvm-ar rs %t-to-symtab.a %t-other.txt<br class="">+# RUN: llvm-nm --print-armap %t-to-symtab.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMTAB<br class="">+<br class="">+# RUN: llvm-ar rs %t-to-symtab.a %t-other.txt<br class="">+# RUN: llvm-nm --print-armap %t-to-symtab.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=SYMTAB<br class="">+<br class="">+# RUN: rm -f %t-to-no-symtab.a<br class="">+# RUN: llvm-ar rcs %t-to-no-symtab.a %t.o<br class="">+# RUN: llvm-ar rS %t-to-no-symtab.a %t-other.txt<br class="">+# RUN: llvm-nm --print-armap %t-to-no-symtab.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=NO-SYMTAB<br class="">+<br class="">+# RUN: llvm-ar rS %t-to-no-symtab.a %t-other.txt<br class="">+# RUN: llvm-nm --print-armap %t-to-no-symtab.a \<br class="">+# RUN:   | FileCheck %s --check-prefix=NO-SYMTAB<br class="">+<br class="">+# SYMTAB:        symbol in<br class="">+# NO-SYMTAB-NOT: symbol in<br class="">+<br class="">+--- !ELF<br class="">+FileHeader:<br class="">+  Class:   ELFCLASS64<br class="">+  Data:    ELFDATA2LSB<br class="">+  Type:    ET_REL<br class="">+  Machine: EM_X86_64<br class="">+Sections:<br class="">+  - Name: .text<br class="">+    Type: SHT_PROGBITS<br class="">+Symbols:<br class="">+  - Name:    symbol<br class="">+    Binding: STB_GLOBAL<br class="">+    Section: .text<br class=""><br class=""><br class="">_______________________________________________<br class="">llvm-commits mailing list<br class=""><a href="mailto:llvm-commits@lists.llvm.org" class="">llvm-commits@lists.llvm.org</a><br class="">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits<br class=""></div></div></blockquote></div><br class=""></div></body></html>