1## The END MRI command is optional. Scripts that omit 2## or include END should be handled by llvm-ar. 3 4# RUN: rm -rf %t && split-file %s %t 5# RUN: cd %t 6 7# RUN: yaml2obj %S/Inputs/elf.yaml -o elf.o 8 9## Empty file. 10# RUN: touch empty.mri 11# RUN: llvm-ar -M < empty.mri 12# RUN: llvm-ar -M < empty-end.mri 13 14## Comment only. 15# RUN: llvm-ar -M < comment.mri 16# RUN: llvm-ar -M < comment-end.mri 17 18## Without SAVE. 19# RUN: llvm-ar -M < no-save.mri 20# RUN: test ! -e no-save.ar 21 22# RUN: llvm-ar -M < no-save-end.mri 23# RUN: test ! -e no-save-end.ar 24 25## With SAVE. 26# RUN: llvm-ar -M < save.mri 27# RUN: llvm-ar t save.ar | FileCheck %s 28 29# RUN: llvm-ar -M < save-end.mri 30# RUN: llvm-ar t save-end.ar | FileCheck %s 31 32## Duplicate use of END. 33# RUN: llvm-ar -M < duplicate-end-no-save.mri 34# RUN: test ! -e duplicate-end-no-save.ar 35 36# RUN: llvm-ar -M < duplicate-end-save.mri 37# RUN: llvm-ar t duplicate-end-save.ar | FileCheck %s 38 39## Use of END before saving. 40# RUN: llvm-ar -M < end-before-save.mri 41# RUN: llvm-ar t end-before-save.ar | FileCheck %s 42 43# CHECK: elf.o 44 45#--- empty-end.mri 46END 47 48#--- comment.mri 49; a comment 50 51#--- comment-end.mri 52; a comment 53END 54 55#--- no-save.mri 56create no-save.ar 57addmod elf.o 58 59#--- no-save-end.mri 60create no-save-end.ar 61addmod elf.o 62END 63 64#--- save.mri 65create save.ar 66addmod elf.o 67save 68 69#--- save-end.mri 70create save-end.ar 71addmod elf.o 72save 73end 74 75#--- duplicate-end-no-save.mri 76create duplicate-end-no-save.ar 77addmod elf.o 78END 79END 80 81#--- duplicate-end-save.mri 82create duplicate-end-save.ar 83addmod elf.o 84save 85END 86END 87 88#--- end-before-save.mri 89create end-before-save.ar 90addmod elf.o 91end 92save 93