remove the code added in r90497. It has several major issues and no tests.
authorChris Lattner <sabre@nondot.org>
Wed, 30 Dec 2009 02:20:07 +0000 (02:20 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 30 Dec 2009 02:20:07 +0000 (02:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92288 91177308-0d34-0410-b5e6-96231b3b80d8

lib/AsmParser/LLParser.cpp
lib/AsmParser/LLParser.h

index e76232db1424927647f405221eb31fcb7eee0daa..db2a5a92ab925fb8932d03966fbc1139431c846d 100644 (file)
@@ -568,37 +568,6 @@ bool LLParser::ParseStandaloneMetadata() {
   return false;
 }
 
-/// ParseInlineMetadata:
-///   !{type %instr}
-///   !{...} MDNode
-///   !"foo" MDString
-bool LLParser::ParseInlineMetadata(Value *&V, PerFunctionState &PFS) {
-  assert(Lex.getKind() == lltok::Metadata && "Only for Metadata");
-  V = 0;
-
-  Lex.Lex();
-  if (EatIfPresent(lltok::lbrace)) {
-    if (ParseTypeAndValue(V, PFS) ||
-        ParseToken(lltok::rbrace, "expected end of metadata node"))
-      return true;
-
-    V = MDNode::get(Context, &V, 1);
-    return false;
-  }
-
-  // FIXME: This can't possibly work at all.  r90497
-  
-  // Standalone metadata reference
-  // !{ ..., !42, ... }
-  if (!ParseMDNode((MDNode *&)V))
-    return false;
-
-  // MDString:
-  // '!' STRINGCONSTANT
-  if (ParseMDString((MDString *&)V)) return true;
-  return false;
-}
-
 /// ParseAlias:
 ///   ::= GlobalVar '=' OptionalVisibility 'alias' OptionalLinkage Aliasee
 /// Aliasee
@@ -1408,14 +1377,6 @@ bool LLParser::ParseParameterList(SmallVectorImpl<ParamInfo> &ArgList,
     if (ParseType(ArgTy, ArgLoc))
       return true;
 
-    // Parse metadata operands to calls (for intrinsics).
-    if (Lex.getKind() == lltok::Metadata) {
-      if (ParseInlineMetadata(V, PFS))
-        return true;
-      ArgList.push_back(ParamInfo(ArgLoc, V, Attribute::None));
-      continue;
-    }
-    
     // Otherwise, handle normal operands.
     if (ParseOptionalAttrs(ArgAttrs1, 0) ||
         ParseValue(ArgTy, V, PFS) ||
@@ -2515,8 +2476,8 @@ bool LLParser::ConvertValIDToValue(const Type *Ty, ValID &ID, Value *&V,
   case ValID::t_MDString: V = ID.MDStringVal;
   case ValID::t_InlineAsm: {
     const PointerType *PTy = dyn_cast<PointerType>(Ty);
-    const FunctionType *FTy =
-    PTy ? dyn_cast<FunctionType>(PTy->getElementType()) : 0;
+    const FunctionType *FTy = 
+      PTy ? dyn_cast<FunctionType>(PTy->getElementType()) : 0;
     if (!FTy || !InlineAsm::Verify(FTy, ID.StrVal2))
       return Error(ID.Loc, "invalid type for inline asm constraint string");
     V = InlineAsm::get(FTy, ID.StrVal, ID.StrVal2, ID.UIntVal&1, ID.UIntVal>>1);
index fd7bf4eb71f1503da4e5a615b07541c570a6620b..31707287913f82e2acd77a25870aa9d4bf134267 100644 (file)
@@ -283,8 +283,6 @@ namespace llvm {
       return ParseTypeAndBasicBlock(BB, Loc, PFS);
     }
 
-    bool ParseInlineMetadata(Value *&V, PerFunctionState &PFS);
-
     struct ParamInfo {
       LocTy Loc;
       Value *V;