diff --git a/include/swift/ABI/MetadataValues.h b/include/swift/ABI/MetadataValues.h index 20e7dd3af63..8f597c20ee9 100644 --- a/include/swift/ABI/MetadataValues.h +++ b/include/swift/ABI/MetadataValues.h @@ -20,7 +20,7 @@ #define SWIFT_ABI_METADATAVALUES_H #include "swift/AST/Ownership.h" -#include "swift/Basic/Unreachable.h" +#include "swift/Runtime/Unreachable.h" #include #include @@ -381,7 +381,7 @@ public: return true; } - swift_unreachable("Unhandled ProtocolDispatchStrategy in switch."); + swift_runtime_unreachable("Unhandled ProtocolDispatchStrategy in switch."); } /// Return the identifier if this is a special runtime-known protocol. diff --git a/include/swift/Reflection/ReflectionContext.h b/include/swift/Reflection/ReflectionContext.h index 114a08f0b30..8f30096532c 100644 --- a/include/swift/Reflection/ReflectionContext.h +++ b/include/swift/Reflection/ReflectionContext.h @@ -18,13 +18,13 @@ #ifndef SWIFT_REFLECTION_REFLECTIONCONTEXT_H #define SWIFT_REFLECTION_REFLECTIONCONTEXT_H -#include "swift/Basic/Unreachable.h" #include "swift/Remote/MemoryReader.h" #include "swift/Remote/MetadataReader.h" #include "swift/Reflection/Records.h" #include "swift/Reflection/TypeLowering.h" #include "swift/Reflection/TypeRef.h" #include "swift/Reflection/TypeRefBuilder.h" +#include "swift/Runtime/Unreachable.h" #include #include @@ -454,7 +454,7 @@ private: return true; } - swift_unreachable("Unhandled MetadataSourceKind in switch."); + swift_runtime_unreachable("Unhandled MetadataSourceKind in switch."); } /// Read metadata for a captured generic type from a closure context. diff --git a/include/swift/Reflection/TypeRef.h b/include/swift/Reflection/TypeRef.h index fd24dcf68ad..9f4c7157da4 100644 --- a/include/swift/Reflection/TypeRef.h +++ b/include/swift/Reflection/TypeRef.h @@ -21,7 +21,7 @@ #include "llvm/ADT/DenseMap.h" #include "llvm/Support/Casting.h" #include "swift/ABI/MetadataValues.h" -#include "swift/Basic/Unreachable.h" +#include "swift/Runtime/Unreachable.h" #include @@ -783,7 +783,7 @@ public: #include "swift/Reflection/TypeRefs.def" } - swift_unreachable("Unhandled TypeRefKind in switch."); + swift_runtime_unreachable("Unhandled TypeRefKind in switch."); } }; diff --git a/include/swift/Remote/MetadataReader.h b/include/swift/Remote/MetadataReader.h index e0a9210ff49..6f51e38f659 100644 --- a/include/swift/Remote/MetadataReader.h +++ b/include/swift/Remote/MetadataReader.h @@ -21,7 +21,7 @@ #include "swift/Remote/MemoryReader.h" #include "swift/Basic/Demangle.h" #include "swift/Basic/LLVM.h" -#include "swift/Basic/Unreachable.h" +#include "swift/Runtime/Unreachable.h" #include #include @@ -763,7 +763,7 @@ public: } } - swift_unreachable("Unhandled MetadataKind in switch"); + swift_runtime_unreachable("Unhandled MetadataKind in switch"); } BuiltType readTypeFromMangledName(const char *MangledTypeName, diff --git a/include/swift/Runtime/Debug.h b/include/swift/Runtime/Debug.h index d8ce205491f..a6904529fad 100644 --- a/include/swift/Runtime/Debug.h +++ b/include/swift/Runtime/Debug.h @@ -19,9 +19,9 @@ #include #include -#include "swift/Basic/Unreachable.h" #include "swift/Runtime/Config.h" #include "swift/Runtime/Metadata.h" +#include "swift/Runtime/Unreachable.h" #ifdef SWIFT_HAVE_CRASHREPORTERCLIENT @@ -72,7 +72,7 @@ static inline void crash(const char *message) { CRSetCrashLogMessage(message); LLVM_BUILTIN_TRAP; - swift_unreachable("Expected compiler to crash."); + swift_runtime_unreachable("Expected compiler to crash."); } /// Report a corrupted type object. diff --git a/include/swift/Runtime/Metadata.h b/include/swift/Runtime/Metadata.h index 5a1d4f9a4ab..b9dbfe0a285 100644 --- a/include/swift/Runtime/Metadata.h +++ b/include/swift/Runtime/Metadata.h @@ -33,7 +33,7 @@ #include "swift/Basic/FlaggedPointer.h" #include "swift/Basic/RelativePointer.h" #include "swift/Basic/ManglingMacros.h" -#include "swift/Basic/Unreachable.h" +#include "swift/Runtime/Unreachable.h" #include "../../../stdlib/public/SwiftShims/HeapObject.h" namespace swift { @@ -1160,7 +1160,7 @@ public: return false; } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } /// Is this metadata for an existential type? @@ -1186,7 +1186,7 @@ public: return false; } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } /// Is this either type metadata or a class object for any kind of class? @@ -1267,7 +1267,7 @@ public: return RelativeDirectPointerNullPtrRef; } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } /// Get the generic metadata pattern from which this generic type instance was diff --git a/include/swift/Basic/Unreachable.h b/include/swift/Runtime/Unreachable.h similarity index 66% rename from include/swift/Basic/Unreachable.h rename to include/swift/Runtime/Unreachable.h index 6ed40eda1c3..671e2616207 100644 --- a/include/swift/Basic/Unreachable.h +++ b/include/swift/Runtime/Unreachable.h @@ -1,4 +1,4 @@ -//===--- Unreachable.h - Implements swift_unreachable -----------*- C++ -*-===// +//===--- Unreachable.h - Implements swift_runtime_unreachable ---*- C++ -*-===// // // This source file is part of the Swift.org open source project // @@ -10,23 +10,23 @@ // //===----------------------------------------------------------------------===// // -// This file defines swift_unreachable, an LLVM-independent implementation of -// llvm_unreachable. +// This file defines swift_runtime_unreachable, an LLVM-independent +// implementation of llvm_unreachable. // //===----------------------------------------------------------------------===// -#ifndef SWIFT_BASIC_UNREACHABLE_H -#define SWIFT_BASIC_UNREACHABLE_H +#ifndef SWIFT_RUNTIME_UNREACHABLE_H +#define SWIFT_RUNTIME_UNREACHABLE_H #include "llvm/Support/Compiler.h" #include #include LLVM_ATTRIBUTE_NORETURN -inline static void swift_unreachable(const char* msg) { +inline static void swift_runtime_unreachable(const char *msg) { assert(false && msg); (void)msg; abort(); } -#endif // SWIFT_BASIC_UNREACHABLE_H +#endif // SWIFT_RUNTIME_UNREACHABLE_H diff --git a/stdlib/public/Reflection/TypeLowering.cpp b/stdlib/public/Reflection/TypeLowering.cpp index 4a83c0ceb9d..81bcaa45e8c 100644 --- a/stdlib/public/Reflection/TypeLowering.cpp +++ b/stdlib/public/Reflection/TypeLowering.cpp @@ -19,9 +19,9 @@ //===----------------------------------------------------------------------===// #include "swift/Reflection/TypeLowering.h" -#include "swift/Basic/Unreachable.h" #include "swift/Reflection/TypeRef.h" #include "swift/Reflection/TypeRefBuilder.h" +#include "swift/Runtime/Unreachable.h" #include @@ -186,7 +186,7 @@ public: } } - swift_unreachable("Bad TypeInfo kind"); + swift_runtime_unreachable("Bad TypeInfo kind"); } }; @@ -1043,7 +1043,7 @@ public: return nullptr; } - swift_unreachable("Unhandled FieldDescriptorKind in switch."); + swift_runtime_unreachable("Unhandled FieldDescriptorKind in switch."); } const TypeInfo *visitNominalTypeRef(const NominalTypeRef *N) { @@ -1074,7 +1074,7 @@ public: return TC.getTypeInfo(TC.getThinFunctionTypeRef()); } - swift_unreachable("Unhandled FunctionMetadataConvention in switch."); + swift_runtime_unreachable("Unhandled FunctionMetadataConvention in switch."); } const TypeInfo *visitProtocolTypeRef(const ProtocolTypeRef *P) { @@ -1102,7 +1102,7 @@ public: return TC.getTypeInfo(TC.getAnyMetatypeTypeRef()); } - swift_unreachable("Unhandled MetatypeRepresentation in switch."); + swift_runtime_unreachable("Unhandled MetatypeRepresentation in switch."); } const TypeInfo * @@ -1285,7 +1285,7 @@ const TypeInfo *TypeConverter::getClassInstanceTypeInfo(const TypeRef *TR, return nullptr; } - swift_unreachable("Unhandled FieldDescriptorKind in switch."); + swift_runtime_unreachable("Unhandled FieldDescriptorKind in switch."); } } // namespace reflection diff --git a/stdlib/public/SwiftRemoteMirror/SwiftRemoteMirror.cpp b/stdlib/public/SwiftRemoteMirror/SwiftRemoteMirror.cpp index e994dce9a24..e202f43dc72 100644 --- a/stdlib/public/SwiftRemoteMirror/SwiftRemoteMirror.cpp +++ b/stdlib/public/SwiftRemoteMirror/SwiftRemoteMirror.cpp @@ -10,10 +10,10 @@ // //===----------------------------------------------------------------------===// -#include "swift/Basic/Unreachable.h" #include "swift/Reflection/ReflectionContext.h" #include "swift/Reflection/TypeLowering.h" #include "swift/Remote/CMemoryReader.h" +#include "swift/Runtime/Unreachable.h" #include "swift/SwiftRemoteMirror/SwiftRemoteMirror.h" using namespace swift; @@ -177,7 +177,7 @@ swift_layout_kind_t getTypeInfoKind(const TypeInfo &TI) { } } - swift_unreachable("Unhandled TypeInfoKind in switch"); + swift_runtime_unreachable("Unhandled TypeInfoKind in switch"); } static swift_typeinfo_t convertTypeInfo(const TypeInfo *TI) { diff --git a/stdlib/public/runtime/Casting.cpp b/stdlib/public/runtime/Casting.cpp index 7a23e353ff7..80783f53c14 100644 --- a/stdlib/public/runtime/Casting.cpp +++ b/stdlib/public/runtime/Casting.cpp @@ -18,12 +18,12 @@ #include "swift/Basic/Demangle.h" #include "swift/Basic/Fallthrough.h" #include "swift/Basic/Lazy.h" -#include "swift/Basic/Unreachable.h" #include "swift/Runtime/Config.h" #include "swift/Runtime/Enum.h" #include "swift/Runtime/HeapObject.h" #include "swift/Runtime/Metadata.h" #include "swift/Runtime/Mutex.h" +#include "swift/Runtime/Unreachable.h" #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/PointerIntPair.h" #include "swift/Runtime/Debug.h" @@ -1013,7 +1013,7 @@ static bool _dynamicCastToExistential(OpaqueValue *dest, } } - swift_unreachable("Unhandled ExistentialTypeRepresentation in switch."); + swift_runtime_unreachable("Unhandled ExistentialTypeRepresentation in switch."); } /******************************************************************************/ @@ -1276,7 +1276,7 @@ swift::swift_dynamicCastMetatype(const Metadata *sourceType, return origSourceType; } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } const Metadata * @@ -1388,7 +1388,7 @@ swift::swift_dynamicCastMetatypeUnconditional(const Metadata *sourceType, return origSourceType; } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } /******************************************************************************/ @@ -1523,7 +1523,8 @@ static bool _dynamicCastToUnknownClassFromExistential(OpaqueValue *dest, } } - swift_unreachable("Unhandled ExistentialTypeRepresentation in switch."); + swift_runtime_unreachable( + "Unhandled ExistentialTypeRepresentation in switch."); } static void unwrapExistential(OpaqueValue *src, @@ -1994,7 +1995,7 @@ static bool _dynamicCastToFunction(OpaqueValue *dest, return _fail(src, srcType, targetType, flags); } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } /******************************************************************************/ diff --git a/stdlib/public/runtime/Metadata.cpp b/stdlib/public/runtime/Metadata.cpp index 817d838b5e6..59c317ef183 100644 --- a/stdlib/public/runtime/Metadata.cpp +++ b/stdlib/public/runtime/Metadata.cpp @@ -2200,7 +2200,7 @@ getExistentialValueWitnesses(ProtocolClassConstraint classConstraint, return getOpaqueExistentialValueWitnesses(numWitnessTables); } - swift_unreachable("Unhandled ProtocolClassConstraint in switch."); + swift_runtime_unreachable("Unhandled ProtocolClassConstraint in switch."); } template<> ExistentialTypeRepresentation @@ -2243,7 +2243,8 @@ ExistentialTypeMetadata::mayTakeValue(const OpaqueValue *container) const { } } - swift_unreachable("Unhandled ExistentialTypeRepresentation in switch."); + swift_runtime_unreachable( + "Unhandled ExistentialTypeRepresentation in switch."); } template<> void @@ -2294,7 +2295,8 @@ ExistentialTypeMetadata::projectValue(const OpaqueValue *container) const { } } - swift_unreachable("Unhandled ExistentialTypeRepresentation in switch."); + swift_runtime_unreachable( + "Unhandled ExistentialTypeRepresentation in switch."); } template<> const Metadata * @@ -2318,7 +2320,8 @@ ExistentialTypeMetadata::getDynamicType(const OpaqueValue *container) const { } } - swift_unreachable("Unhandled ExistentialTypeRepresentation in switch."); + swift_runtime_unreachable( + "Unhandled ExistentialTypeRepresentation in switch."); } template<> const WitnessTable * @@ -2609,7 +2612,7 @@ Metadata::getClassObject() const { return nullptr; } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } #ifndef NDEBUG diff --git a/stdlib/public/runtime/ProtocolConformance.cpp b/stdlib/public/runtime/ProtocolConformance.cpp index f0a9798c72b..70660a53154 100644 --- a/stdlib/public/runtime/ProtocolConformance.cpp +++ b/stdlib/public/runtime/ProtocolConformance.cpp @@ -16,10 +16,10 @@ #include "swift/Basic/LLVM.h" #include "swift/Basic/Lazy.h" -#include "swift/Basic/Unreachable.h" #include "swift/Runtime/Concurrent.h" #include "swift/Runtime/Metadata.h" #include "swift/Runtime/Mutex.h" +#include "swift/Runtime/Unreachable.h" #include "ImageInspection.h" #include "Private.h" @@ -118,7 +118,7 @@ const { return nullptr; } - swift_unreachable("Unhandled TypeMetadataRecordKind in switch."); + swift_runtime_unreachable("Unhandled TypeMetadataRecordKind in switch."); } template<> @@ -133,7 +133,8 @@ const { return getWitnessTableAccessor()(type); } - swift_unreachable("Unhandled ProtocolConformanceReferenceKind in switch."); + swift_runtime_unreachable( + "Unhandled ProtocolConformanceReferenceKind in switch."); } namespace { diff --git a/stdlib/public/runtime/Reflection.mm b/stdlib/public/runtime/Reflection.mm index ead123a1bde..9b6ce1a416f 100644 --- a/stdlib/public/runtime/Reflection.mm +++ b/stdlib/public/runtime/Reflection.mm @@ -11,12 +11,12 @@ //===----------------------------------------------------------------------===// #include "swift/Basic/Fallthrough.h" -#include "swift/Basic/Unreachable.h" #include "swift/Runtime/Reflection.h" #include "swift/Runtime/Config.h" #include "swift/Runtime/HeapObject.h" #include "swift/Runtime/Metadata.h" #include "swift/Runtime/Enum.h" +#include "swift/Runtime/Unreachable.h" #include "swift/Basic/Demangle.h" #include "swift/Runtime/Debug.h" #include "swift/Runtime/Portability.h" @@ -1100,7 +1100,7 @@ getImplementationForType(const Metadata *T, const OpaqueValue *Value) { swift::crash("Swift mirror lookup failure"); } - swift_unreachable("Unhandled MetadataKind in switch."); + swift_runtime_unreachable("Unhandled MetadataKind in switch."); } /// MagicMirror ownership-taking whole-value constructor.