1// -*- C++ -*- 2//===----------------------------------------------------------------------===// 3// 4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5// See https://llvm.org/LICENSE.txt for license information. 6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7// 8//===----------------------------------------------------------------------===// 9 10#ifndef _LIBCPP_EXPERIMENTAL_CONFIG 11#define _LIBCPP_EXPERIMENTAL_CONFIG 12 13#include <__config> 14 15#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 16# pragma GCC system_header 17#endif 18 19#define _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL \ 20 namespace std { \ 21 namespace experimental { 22#define _LIBCPP_END_NAMESPACE_EXPERIMENTAL \ 23 } \ 24 } 25 26#define _LIBCPP_BEGIN_NAMESPACE_LFTS _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL inline namespace fundamentals_v1 { 27#define _LIBCPP_END_NAMESPACE_LFTS \ 28 } \ 29 } \ 30 } 31 32#define _LIBCPP_BEGIN_NAMESPACE_LFTS_V2 _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL inline namespace fundamentals_v2 { 33#define _LIBCPP_END_NAMESPACE_LFTS_V2 \ 34 } \ 35 } \ 36 } 37 38// TODO: support more targets 39#if defined(__AVX__) 40# define _LIBCPP_NATIVE_SIMD_WIDTH_IN_BYTES 32 41#else 42# define _LIBCPP_NATIVE_SIMD_WIDTH_IN_BYTES 16 43#endif 44 45#endif 46