[yaml2obj] Remove --format option in favor of YAML tags

Summary:
Our YAML library's handling of tags isn't perfect, but it is good enough to get rid of the need for the --format argument to yaml2obj. This patch does exactly that.

Instead of requiring --format, it infers the format based on the tags found in the object file. The supported tags are:

!ELF
!COFF
!mach-o
!fat-mach-o

I have a corresponding patch that is quite large that fixes up all the in-tree test cases.

Reviewers: rafael, Bigcheese, compnerd, silvas

Subscribers: compnerd, llvm-commits

Differential Revision: http://reviews.llvm.org/D21711

llvm-svn: 273915
diff --git a/llvm/test/tools/llvm-ar/default-elf.test b/llvm/test/tools/llvm-ar/default-elf.test
index 216e874..d2d35a5 100644
--- a/llvm/test/tools/llvm-ar/default-elf.test
+++ b/llvm/test/tools/llvm-ar/default-elf.test
@@ -1,4 +1,4 @@
-RUN: yaml2obj -format elf %S/Inputs/elf.yaml -o %t.o
+RUN: yaml2obj %S/Inputs/elf.yaml -o %t.o
 
 RUN: rm -f %t.ar
 RUN: llvm-ar crs %t.ar %t.o