1515#include " llvm/ADT/SmallString.h"
1616#include " llvm/IR/Constants.h"
1717#include " llvm/IR/Module.h"
18+ #include " llvm/IR/SystemLibraries.h"
1819#include " llvm/InitializePasses.h"
19- #include " llvm/Support/CommandLine.h"
2020#include " llvm/TargetParser/Triple.h"
2121using namespace llvm ;
2222
23- static cl::opt<TargetLibraryInfoImpl::VectorLibrary> ClVectorLibrary (
24- " vector-library" , cl::Hidden, cl::desc(" Vector functions library" ),
25- cl::init(TargetLibraryInfoImpl::NoLibrary),
26- cl::values(clEnumValN(TargetLibraryInfoImpl::NoLibrary, " none" ,
27- " No vector functions library" ),
28- clEnumValN(TargetLibraryInfoImpl::Accelerate, " Accelerate" ,
29- " Accelerate framework" ),
30- clEnumValN(TargetLibraryInfoImpl::DarwinLibSystemM,
31- " Darwin_libsystem_m" , " Darwin libsystem_m" ),
32- clEnumValN(TargetLibraryInfoImpl::LIBMVEC, " LIBMVEC" ,
33- " GLIBC Vector Math library" ),
34- clEnumValN(TargetLibraryInfoImpl::MASSV, " MASSV" ,
35- " IBM MASS vector library" ),
36- clEnumValN(TargetLibraryInfoImpl::SVML, " SVML" ,
37- " Intel SVML library" ),
38- clEnumValN(TargetLibraryInfoImpl::SLEEFGNUABI, " sleefgnuabi" ,
39- " SIMD Library for Evaluating Elementary Functions" ),
40- clEnumValN(TargetLibraryInfoImpl::ArmPL, " ArmPL" ,
41- " Arm Performance Libraries" ),
42- clEnumValN(TargetLibraryInfoImpl::AMDLIBM, " AMDLIBM" ,
43- " AMD vector math library" )));
44-
4523StringLiteral const TargetLibraryInfoImpl::StandardNames[LibFunc::NumLibFuncs] =
4624 {
4725#define TLI_DEFINE_STRING
@@ -1392,15 +1370,15 @@ const VecDesc VecFuncs_AMDLIBM[] = {
13921370void TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib (
13931371 enum VectorLibrary VecLib, const llvm::Triple &TargetTriple) {
13941372 switch (VecLib) {
1395- case Accelerate: {
1373+ case VectorLibrary:: Accelerate: {
13961374 addVectorizableFunctions (VecFuncs_Accelerate);
13971375 break ;
13981376 }
1399- case DarwinLibSystemM: {
1377+ case VectorLibrary:: DarwinLibSystemM: {
14001378 addVectorizableFunctions (VecFuncs_DarwinLibSystemM);
14011379 break ;
14021380 }
1403- case LIBMVEC: {
1381+ case VectorLibrary:: LIBMVEC: {
14041382 switch (TargetTriple.getArch ()) {
14051383 default :
14061384 break ;
@@ -1415,15 +1393,15 @@ void TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib(
14151393 }
14161394 break ;
14171395 }
1418- case MASSV: {
1396+ case VectorLibrary:: MASSV: {
14191397 addVectorizableFunctions (VecFuncs_MASSV);
14201398 break ;
14211399 }
1422- case SVML: {
1400+ case VectorLibrary:: SVML: {
14231401 addVectorizableFunctions (VecFuncs_SVML);
14241402 break ;
14251403 }
1426- case SLEEFGNUABI: {
1404+ case VectorLibrary:: SLEEFGNUABI: {
14271405 switch (TargetTriple.getArch ()) {
14281406 default :
14291407 break ;
@@ -1439,7 +1417,7 @@ void TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib(
14391417 }
14401418 break ;
14411419 }
1442- case ArmPL: {
1420+ case VectorLibrary:: ArmPL: {
14431421 switch (TargetTriple.getArch ()) {
14441422 default :
14451423 break ;
@@ -1450,11 +1428,11 @@ void TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib(
14501428 }
14511429 break ;
14521430 }
1453- case AMDLIBM: {
1431+ case VectorLibrary:: AMDLIBM: {
14541432 addVectorizableFunctions (VecFuncs_AMDLIBM);
14551433 break ;
14561434 }
1457- case NoLibrary:
1435+ case VectorLibrary:: NoLibrary:
14581436 break ;
14591437 }
14601438}
0 commit comments