Make "@name =" mandatory for globals in .ll files.

An oddity of the .ll syntax is that the "@var = " in

@var = global i32 42

is optional. Writing just

global i32 42

is equivalent to

@0 = global i32 42

This means that there is a pretty big First set at the top level. The
current implementation maintains it manually. I was trying to refactor
it, but then started wondering why keep it a all. I personally find the
above syntax confusing. It looks like something is missing.

This patch removes the feature and simplifies the parser.

llvm-svn: 269096
diff --git a/llvm/test/Feature/testconstants.ll b/llvm/test/Feature/testconstants.ll
index 81d67f9..a836865 100644
--- a/llvm/test/Feature/testconstants.ll
+++ b/llvm/test/Feature/testconstants.ll
@@ -4,7 +4,7 @@
 
 @somestr = constant [11 x i8] c"hello world"            ; <[11 x i8]*> [#uses=1]
 @array = constant [2 x i32] [ i32 12, i32 52 ]          ; <[2 x i32]*> [#uses=1]
-constant { i32, i32 } { i32 4, i32 3 }          ; <{ i32, i32 }*>:0 [#uses=0]
+@0 = constant { i32, i32 } { i32 4, i32 3 }        ; <{ i32, i32 }*>:0 [#uses=0]
 
 define [2 x i32]* @testfunction(i32 %i0, i32 %j0) {
         ret [2 x i32]* @array