1//===--- CodeGenOptions.h ---------------------------------------*- 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 frontend codegen options common to clang and flang
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_FRONTEND_DRIVER_CODEGENOPTIONS_H
14#define LLVM_FRONTEND_DRIVER_CODEGENOPTIONS_H
15
16namespace llvm {
17class Triple;
18class TargetLibraryInfoImpl;
19} // namespace llvm
20
21namespace llvm::driver {
22
23/// Vector library option used with -fveclib=
24enum class VectorLibrary {
25 NoLibrary, // Don't use any vector library.
26 Accelerate, // Use the Accelerate framework.
27 LIBMVEC, // GLIBC vector math library.
28 MASSV, // IBM MASS vector library.
29 SVML, // Intel short vector math library.
30 SLEEF, // SLEEF SIMD Library for Evaluating Elementary Functions.
31 Darwin_libsystem_m, // Use Darwin's libsystem_m vector functions.
32 ArmPL // Arm Performance Libraries.
33};
34
35TargetLibraryInfoImpl *createTLII(llvm::Triple &TargetTriple,
36 VectorLibrary Veclib);
37
38} // end namespace llvm::driver
39
40#endif
41

source code of llvm/include/llvm/Frontend/Driver/CodeGenOptions.h