Do not generate empty 'if's for the output_suffix property.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51737 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/TableGen/LLVMCConfigurationEmitter.cpp b/utils/TableGen/LLVMCConfigurationEmitter.cpp
index 93fe90b..a294928 100644
--- a/utils/TableGen/LLVMCConfigurationEmitter.cpp
+++ b/utils/TableGen/LLVMCConfigurationEmitter.cpp
@@ -790,12 +790,20 @@
   }
 }
 
-// A helper function used by EmitOptionPropertyHandlingCode() that
-// tells us whether we should emit any code at all.
+// ToolOptionHasInterestingProperties - A helper function used by
+// EmitOptionPropertyHandlingCode() that tells us whether we should
+// emit any property handling code at all.
 bool ToolOptionHasInterestingProperties(const ToolOptionDescription& D) {
-  if (!D.isForward() && !D.isUnpackValues() && D.Props.empty())
-    return false;
-  return true;
+  bool ret = false;
+  for (OptionPropertyList::const_iterator B = D.Props.begin(),
+         E = D.Props.end(); B != E; ++B) {
+      const OptionProperty& OptProp = *B;
+      if (OptProp.first == OptionPropertyType::AppendCmd)
+        ret = true;
+    }
+  if (D.isForward() || D.isUnpackValues())
+    ret = true;
+  return ret;
 }
 
 /// EmitOptionPropertyHandlingCode - Helper function used by