Path: blob/master/thirdparty/jolt_physics/Jolt/ConfigurationString.h
9903 views
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)1// SPDX-FileCopyrightText: 2023 Jorrit Rouwe2// SPDX-License-Identifier: MIT34#pragma once56JPH_NAMESPACE_BEGIN78/// Construct a string that lists the most important configuration settings9inline const char *GetConfigurationString()10{11return JPH_IF_SINGLE_PRECISION_ELSE("Single", "Double") " precision "12#if defined(JPH_CPU_X86)13"x86 "14#elif defined(JPH_CPU_ARM)15"ARM "16#elif defined(JPH_CPU_RISCV)17"RISC-V "18#elif defined(JPH_CPU_PPC)19"PowerPC "20#ifdef JPH_CPU_BIG_ENDIAN21"(Big Endian) "22#else23"(Little Endian) "24#endif25#elif defined(JPH_CPU_LOONGARCH)26"LoongArch "27#elif defined(JPH_CPU_E2K)28"E2K "29#elif defined(JPH_CPU_WASM)30"WASM "31#else32#error Unknown CPU architecture33#endif34#if JPH_CPU_ADDRESS_BITS == 6435"64-bit "36#elif JPH_CPU_ADDRESS_BITS == 3237"32-bit "38#endif39"with instructions: "40#ifdef JPH_USE_NEON41"NEON "42#endif43#ifdef JPH_USE_SSE44"SSE2 "45#endif46#ifdef JPH_USE_SSE4_147"SSE4.1 "48#endif49#ifdef JPH_USE_SSE4_250"SSE4.2 "51#endif52#ifdef JPH_USE_AVX53"AVX "54#endif55#ifdef JPH_USE_AVX256"AVX2 "57#endif58#ifdef JPH_USE_AVX51259"AVX512 "60#endif61#ifdef JPH_USE_F16C62"F16C "63#endif64#ifdef JPH_USE_LZCNT65"LZCNT "66#endif67#ifdef JPH_USE_TZCNT68"TZCNT "69#endif70#ifdef JPH_USE_FMADD71"FMADD "72#endif73#ifdef JPH_CROSS_PLATFORM_DETERMINISTIC74"(Cross Platform Deterministic) "75#endif76#ifdef JPH_FLOATING_POINT_EXCEPTIONS_ENABLED77"(FP Exceptions) "78#endif79#ifdef JPH_DEBUG_RENDERER80"(Debug Renderer) "81#endif82#ifdef JPH_PROFILE_ENABLED83"(Profile) "84#endif85#if defined(JPH_OBJECT_LAYER_BITS) && JPH_OBJECT_LAYER_BITS == 3286"(32-bit ObjectLayer) "87#else88"(16-bit ObjectLayer) "89#endif90#ifdef JPH_ENABLE_ASSERTS91"(Assertions) "92#endif93#ifdef JPH_OBJECT_STREAM94"(ObjectStream) "95#endif96#ifdef JPH_DEBUG97"(Debug) "98#endif99#if defined(__cpp_rtti) && __cpp_rtti100"(C++ RTTI) "101#endif102#if defined(__cpp_exceptions) && __cpp_exceptions103"(C++ Exceptions) "104#endif105;106}107108JPH_NAMESPACE_END109110111