1//===--- BuiltinsVE.def - VE Builtin function database ----------*- C++ -*-===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8// 9// This file defines the VE-specific builtin function database. Users of 10// this file must define the BUILTIN macro to make use of this information. 11// 12//===----------------------------------------------------------------------===// 13 14#if defined(BUILTIN) && !defined(TARGET_BUILTIN) 15# define TARGET_BUILTIN(ID, TYPE, ATTRS, FEATURE) BUILTIN(ID, TYPE, ATTRS) 16#endif 17 18// The format of this database is described in clang/Basic/Builtins.def. 19 20BUILTIN(__builtin_ve_vl_pack_f32p, "ULifC*fC*", "n") 21BUILTIN(__builtin_ve_vl_pack_f32a, "ULifC*", "n") 22 23BUILTIN(__builtin_ve_vl_extract_vm512u, "V256bV512b", "n") 24BUILTIN(__builtin_ve_vl_extract_vm512l, "V256bV512b", "n") 25BUILTIN(__builtin_ve_vl_insert_vm512u, "V512bV512bV256b", "n") 26BUILTIN(__builtin_ve_vl_insert_vm512l, "V512bV512bV256b", "n") 27 28// Use generated BUILTIN definitions 29#include "clang/Basic/BuiltinsVEVL.gen.def" 30 31#undef BUILTIN 32#undef TARGET_BUILTIN 33