Fix an error where ANTIC_OUT was ending up with more than one expression of
the same value number.  This fixes an infinite loop on 444.namd.

llvm-svn: 37967
diff --git a/llvm/lib/Transforms/Scalar/GVNPRE.cpp b/llvm/lib/Transforms/Scalar/GVNPRE.cpp
index 0661c94..44846cb 100644
--- a/llvm/lib/Transforms/Scalar/GVNPRE.cpp
+++ b/llvm/lib/Transforms/Scalar/GVNPRE.cpp
@@ -1370,7 +1370,7 @@
     unsigned num = VN.lookup_or_add(*I);
     numbers.resize(VN.size());
     
-    if (isa<Instruction>(*I)) {
+    if (isa<Instruction>(*I) && !numbers.test(num)) {
       anticIn.insert(*I);
       numbers.set(num);
     }