Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164766

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164769 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CGBuiltin.cpp b/lib/CodeGen/CGBuiltin.cpp
index 4a3b3e9..7a0abd7 100644
--- a/lib/CodeGen/CGBuiltin.cpp
+++ b/lib/CodeGen/CGBuiltin.cpp
@@ -597,7 +597,7 @@
   }
 
   case Builtin::BI__builtin___memcpy_chk: {
-    // fold __builtin_memcpy_chk(x, y, cst1, cst2) to memcpy if cst1<=cst2.
+    // fold __builtin_memcpy_chk(x, y, cst1, cst2) to memcpy iff cst1<=cst2.
     llvm::APSInt Size, DstSize;
     if (!E->getArg(2)->EvaluateAsInt(Size, CGM.getContext()) ||
         !E->getArg(3)->EvaluateAsInt(DstSize, CGM.getContext()))
@@ -624,7 +624,7 @@
   }
 
   case Builtin::BI__builtin___memmove_chk: {
-    // fold __builtin_memmove_chk(x, y, cst1, cst2) to memmove if cst1<=cst2.
+    // fold __builtin_memmove_chk(x, y, cst1, cst2) to memmove iff cst1<=cst2.
     llvm::APSInt Size, DstSize;
     if (!E->getArg(2)->EvaluateAsInt(Size, CGM.getContext()) ||
         !E->getArg(3)->EvaluateAsInt(DstSize, CGM.getContext()))
@@ -663,7 +663,7 @@
     return RValue::get(Dest.first);
   }
   case Builtin::BI__builtin___memset_chk: {
-    // fold __builtin_memset_chk(x, y, cst1, cst2) to memset if cst1<=cst2.
+    // fold __builtin_memset_chk(x, y, cst1, cst2) to memset iff cst1<=cst2.
     llvm::APSInt Size, DstSize;
     if (!E->getArg(2)->EvaluateAsInt(Size, CGM.getContext()) ||
         !E->getArg(3)->EvaluateAsInt(DstSize, CGM.getContext()))
diff --git a/lib/CodeGen/CGDecl.cpp b/lib/CodeGen/CGDecl.cpp
index 88a252a..b9489e3 100644
--- a/lib/CodeGen/CGDecl.cpp
+++ b/lib/CodeGen/CGDecl.cpp
@@ -1179,7 +1179,7 @@
   // If we haven't chosen a more specific destroyer, use the default.
   if (!destroyer) destroyer = getDestroyer(dtorKind);
 
-  // Use an EH cleanup in array destructors if the destructor itself
+  // Use an EH cleanup in array destructors iff the destructor itself
   // is being pushed as an EH cleanup.
   bool useEHCleanup = (cleanupKind & EHCleanup);
   EHStack.pushCleanup<DestroyObject>(cleanupKind, addr, type, destroyer,
diff --git a/lib/CodeGen/CGObjCMac.cpp b/lib/CodeGen/CGObjCMac.cpp
index e9aa3b7..08e706c 100644
--- a/lib/CodeGen/CGObjCMac.cpp
+++ b/lib/CodeGen/CGObjCMac.cpp
@@ -1028,8 +1028,8 @@
   /// EmitMethodDescList - Emit a method description list for a list of
   /// method declarations.
   ///  - TypeName: The name for the type containing the methods.
-  ///  - IsProtocol: True if these methods are for a protocol.
-  ///  - ClassMethds: True if these are class methods.
+  ///  - IsProtocol: True iff these methods are for a protocol.
+  ///  - ClassMethds: True iff these are class methods.
   ///  - Required: When true, only "required" methods are
   ///    listed. Similarly, when false only "optional" methods are
   ///    listed. For classes this should always be true.
diff --git a/lib/CodeGen/CGRTTI.cpp b/lib/CodeGen/CGRTTI.cpp
index ee1a770..e46423b 100644
--- a/lib/CodeGen/CGRTTI.cpp
+++ b/lib/CodeGen/CGRTTI.cpp
@@ -347,7 +347,7 @@
 
 // CanUseSingleInheritance - Return whether the given record decl has a "single, 
 // public, non-virtual base at offset zero (i.e. the derived class is dynamic 
-// if the base is)", according to Itanium C++ ABI, 2.95p6b.
+// iff the base is)", according to Itanium C++ ABI, 2.95p6b.
 static bool CanUseSingleInheritance(const CXXRecordDecl *RD) {
   // Check the number of bases.
   if (RD->getNumBases() != 1)
@@ -364,7 +364,7 @@
   if (Base->getAccessSpecifier() != AS_public)
     return false;
   
-  // Check that the class is dynamic if the base is.
+  // Check that the class is dynamic iff the base is.
   const CXXRecordDecl *BaseDecl = 
     cast<CXXRecordDecl>(Base->getType()->getAs<RecordType>()->getDecl());
   if (!BaseDecl->isEmpty() && 
diff --git a/lib/CodeGen/CGVTables.h b/lib/CodeGen/CGVTables.h
index f5b59c8..828330e 100644
--- a/lib/CodeGen/CGVTables.h
+++ b/lib/CodeGen/CGVTables.h
@@ -58,7 +58,7 @@
 
   /// MaybeEmitThunkAvailableExternally - Try to emit the given thunk with
   /// available_externally linkage to allow for inlining of thunks.
-  /// This will be done if optimizations are enabled and the member function
+  /// This will be done iff optimizations are enabled and the member function
   /// doesn't contain any incomplete types.
   void MaybeEmitThunkAvailableExternally(GlobalDecl GD, const ThunkInfo &Thunk);
 
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h
index a31a64e..fc930ec 100644
--- a/lib/CodeGen/CodeGenFunction.h
+++ b/lib/CodeGen/CodeGenFunction.h
@@ -583,7 +583,7 @@
   JumpDest ReturnBlock;
 
   /// ReturnValue - The temporary alloca to hold the return value. This is null
-  /// if the function has no return value.
+  /// iff the function has no return value.
   llvm::Value *ReturnValue;
 
   /// AllocaInsertPoint - This is an instruction in the entry block before which
@@ -1655,7 +1655,7 @@
 
   /// EmitAggregateCopy - Emit an aggrate copy.
   ///
-  /// \param isVolatile - True if either the source or the destination is
+  /// \param isVolatile - True iff either the source or the destination is
   /// volatile.
   void EmitAggregateCopy(llvm::Value *DestPtr, llvm::Value *SrcPtr,
                          QualType EltTy, bool isVolatile=false,
diff --git a/lib/CodeGen/CodeGenModule.h b/lib/CodeGen/CodeGenModule.h
index 0e15e7b..6e81693 100644
--- a/lib/CodeGen/CodeGenModule.h
+++ b/lib/CodeGen/CodeGenModule.h
@@ -372,7 +372,7 @@
     return *ObjCRuntime;
   }
 
-  /// hasObjCRuntime() - Return true if an Objective-C runtime has
+  /// hasObjCRuntime() - Return true iff an Objective-C runtime has
   /// been configured.
   bool hasObjCRuntime() { return !!ObjCRuntime; }
 
@@ -788,15 +788,15 @@
   /// which only apply to a function definintion.
   void SetLLVMFunctionAttributesForDefinition(const Decl *D, llvm::Function *F);
 
-  /// ReturnTypeUsesSRet - Return true if the given type uses 'sret' when used
+  /// ReturnTypeUsesSRet - Return true iff the given type uses 'sret' when used
   /// as a return type.
   bool ReturnTypeUsesSRet(const CGFunctionInfo &FI);
 
-  /// ReturnTypeUsesFPRet - Return true if the given type uses 'fpret' when
+  /// ReturnTypeUsesFPRet - Return true iff the given type uses 'fpret' when
   /// used as a return type.
   bool ReturnTypeUsesFPRet(QualType ResultType);
 
-  /// ReturnTypeUsesFP2Ret - Return true if the given type uses 'fp2ret' when
+  /// ReturnTypeUsesFP2Ret - Return true iff the given type uses 'fp2ret' when
   /// used as a return type.
   bool ReturnTypeUsesFP2Ret(QualType ResultType);
 
diff --git a/lib/CodeGen/CodeGenTBAA.cpp b/lib/CodeGen/CodeGenTBAA.cpp
index 3d5725d..bab60af 100644
--- a/lib/CodeGen/CodeGenTBAA.cpp
+++ b/lib/CodeGen/CodeGenTBAA.cpp
@@ -135,7 +135,7 @@
   // Enum types are distinct types. In C++ they have "underlying types",
   // however they aren't related for TBAA.
   if (const EnumType *ETy = dyn_cast<EnumType>(Ty)) {
-    // In C mode, two anonymous enums are compatible if their members
+    // In C mode, two anonymous enums are compatible iff their members
     // are the same -- see C99 6.2.7p1. For now, be conservative. We could
     // theoretically implement this by combining information about all the
     // members into a single identifying MDNode.
diff --git a/lib/CodeGen/TargetInfo.cpp b/lib/CodeGen/TargetInfo.cpp
index 15ccfd5..419ce02 100644
--- a/lib/CodeGen/TargetInfo.cpp
+++ b/lib/CodeGen/TargetInfo.cpp
@@ -109,7 +109,7 @@
 
 static bool isEmptyRecord(ASTContext &Context, QualType T, bool AllowArrays);
 
-/// isEmptyField - Return true if a the field is "empty", that is it
+/// isEmptyField - Return true iff a the field is "empty", that is it
 /// is an unnamed bit-field or an (array of) empty record(s).
 static bool isEmptyField(ASTContext &Context, const FieldDecl *FD,
                          bool AllowArrays) {
@@ -141,7 +141,7 @@
   return isEmptyRecord(Context, FT, AllowArrays);
 }
 
-/// isEmptyRecord - Return true if a structure contains only empty
+/// isEmptyRecord - Return true iff a structure contains only empty
 /// fields. Note that a structure with a flexible array member is not
 /// considered empty.
 static bool isEmptyRecord(ASTContext &Context, QualType T, bool AllowArrays) {
@@ -1070,7 +1070,7 @@
   /// be passed in Memory then at least the classification of \arg Lo
   /// will be Memory.
   ///
-  /// The \arg Lo class will be NoClass if the argument is ignored.
+  /// The \arg Lo class will be NoClass iff the argument is ignored.
   ///
   /// If the \arg Lo class is ComplexX87, then the \arg Hi class will
   /// also be ComplexX87.