Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:43:55

0001 //===--- CodeGenOptions.h ---------------------------------------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 //
0009 //  This file defines frontend codegen options common to clang and flang
0010 //
0011 //===----------------------------------------------------------------------===//
0012 
0013 #ifndef LLVM_FRONTEND_DRIVER_CODEGENOPTIONS_H
0014 #define LLVM_FRONTEND_DRIVER_CODEGENOPTIONS_H
0015 
0016 namespace llvm {
0017 class Triple;
0018 class TargetLibraryInfoImpl;
0019 } // namespace llvm
0020 
0021 namespace llvm::driver {
0022 
0023 /// Vector library option used with -fveclib=
0024 enum class VectorLibrary {
0025   NoLibrary,          // Don't use any vector library.
0026   Accelerate,         // Use the Accelerate framework.
0027   LIBMVEC,            // GLIBC vector math library.
0028   MASSV,              // IBM MASS vector library.
0029   SVML,               // Intel short vector math library.
0030   SLEEF,              // SLEEF SIMD Library for Evaluating Elementary Functions.
0031   Darwin_libsystem_m, // Use Darwin's libsystem_m vector functions.
0032   ArmPL,              // Arm Performance Libraries.
0033   AMDLIBM             // AMD vector math library.
0034 };
0035 
0036 TargetLibraryInfoImpl *createTLII(llvm::Triple &TargetTriple,
0037                                   VectorLibrary Veclib);
0038 
0039 } // end namespace llvm::driver
0040 
0041 #endif