use llvm_unreachable() instead of assert(0) for invalid enum values in switch statements

llvm-svn: 158542
diff --git a/lld/lib/Core/Resolver.cpp b/lld/lib/Core/Resolver.cpp
index d50a772..018cb0a 100644
--- a/lld/lib/Core/Resolver.cpp
+++ b/lld/lib/Core/Resolver.cpp
@@ -359,7 +359,7 @@
   } else if (const AbsoluteAtom* abAtom = dyn_cast<AbsoluteAtom>(&atom)) {
     _absoluteAtoms._atoms.push_back(abAtom);
   } else {
-    assert(0 && "atom has unknown definition kind");
+    llvm_unreachable("atom has unknown definition kind");
   }
 }
 
diff --git a/lld/lib/ReaderWriter/MachO/ReferenceKinds.cpp b/lld/lib/ReaderWriter/MachO/ReferenceKinds.cpp
index 8300770..805936b 100644
--- a/lld/lib/ReaderWriter/MachO/ReferenceKinds.cpp
+++ b/lld/lib/ReaderWriter/MachO/ReferenceKinds.cpp
@@ -13,6 +13,7 @@
 #include "llvm/ADT/StringRef.h"
 #include "llvm/ADT/StringSwitch.h"
 
+#include "llvm/Support/ErrorHandling.h"
 
 namespace lld {
 namespace mach_o {
@@ -72,7 +73,7 @@
     .Case("subordinateFDE",        subordinateFDE)
     .Case("subordinateLSDA",       subordinateLSDA);
 
-  assert(0 && "invalid x86_64 Reference kind");
+  llvm_unreachable("invalid x86_64 Reference kind");
   return 0;
 }
 
@@ -113,7 +114,7 @@
     case subordinateLSDA:
       return StringRef("subordinateLSDA");
   }
-  assert(0 && "invalid x86_64 Reference kind");
+  llvm_unreachable("invalid x86_64 Reference kind");
   return StringRef();
 }
 
@@ -197,7 +198,7 @@
     .Case("lazyTarget",            lazyTarget)
     .Case("lazyImmediate",         lazyImmediate);
   
-  assert(0 && "invalid x86 Reference kind");
+  llvm_unreachable("invalid x86 Reference kind");
   return 0;
 }
 
@@ -222,7 +223,7 @@
     case subordinateLSDA:
       return StringRef("subordinateLSDA");
   }
-  assert(0 && "invalid x86 Reference kind");
+  llvm_unreachable("invalid x86 Reference kind");
   return StringRef();
 }
 
@@ -292,7 +293,7 @@
     .Case("lazyImmediate",      lazyImmediate)
     .Case("subordinateLSDA",    subordinateLSDA);
 
-  assert(0 && "invalid ARM Reference kind");
+  llvm_unreachable("invalid ARM Reference kind");
   return 0;
 }
 
@@ -323,7 +324,7 @@
     case subordinateLSDA:
       return StringRef("subordinateLSDA");
   }
-  assert(0 && "invalid ARM Reference kind");
+  llvm_unreachable("invalid ARM Reference kind");
   return StringRef();
 }
 
diff --git a/lld/lib/ReaderWriter/MachO/SimpleAtoms.hpp b/lld/lib/ReaderWriter/MachO/SimpleAtoms.hpp
index 498793f..0db2e05 100644
--- a/lld/lib/ReaderWriter/MachO/SimpleAtoms.hpp
+++ b/lld/lib/ReaderWriter/MachO/SimpleAtoms.hpp
@@ -45,7 +45,7 @@
       _absoluteAtoms._atoms.push_back(abAtom);
     } 
     else {
-      assert(0 && "atom has unknown definition kind");
+      llvm_unreachable("atom has unknown definition kind");
     }
   }
 
diff --git a/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp b/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp
index b909464..9e726a6 100644
--- a/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp
+++ b/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp
@@ -41,7 +41,7 @@
     case arch_armv7:
        return StringRef("armv7");
   }
-  assert(0 && "unknown arch");
+  llvm_unreachable("unknown arch");
   return StringRef("???");
 } 
 
@@ -55,7 +55,7 @@
     case arch_armv7:
        return mach_o::CPU_TYPE_ARM;
   }
-  assert(0 && "unknown arch");
+  llvm_unreachable("unknown arch");
   return 0;
 }
 
@@ -70,7 +70,7 @@
     case arch_armv7:
        return mach_o::CPU_SUBTYPE_ARM_V7;
   }
-  assert(0 && "unknown arch");
+  llvm_unreachable("unknown arch");
   return 0;
 }
 
@@ -84,7 +84,7 @@
       assert(_pageZeroSize == 0);
       return 0;
   }
-  assert(0 && "unknown outputkind");
+  llvm_unreachable("unknown outputkind");
   return 0;
 }
 
@@ -98,7 +98,7 @@
     case outputObjectFile:
       return false;
   }
-  assert(0 && "unknown outputkind");
+  llvm_unreachable("unknown outputkind");
   return false;
 }
 
@@ -112,7 +112,7 @@
     case outputObjectFile:
       return false;
   }
-  assert(0 && "unknown outputkind");
+  llvm_unreachable("unknown outputkind");
   return false;
 }
 
@@ -135,7 +135,7 @@
     case outputObjectFile:
       return StringRef();
   }
-  assert(0 && "unknown outputkind");
+  llvm_unreachable("unknown outputkind");
   return StringRef();
 }