#include "clang/Basic/TargetInfo.h" #include "llvm/ADT/Triple.h" #includeint main() { llvm::Triple triple("x86_64-unknown-linux-gnu"); const clang::TargetInfo* info = clang::TargetInfo::CreateTargetInfo(triple); std::cout << info->getArchName() << std::endl; delete info; return 0; }
#include "clang/Basic/TargetInfo.h" #include "llvm/ADT/Triple.h" #includeThis example demonstrates how to use TargetInfo to check if the target supports SSE2 instructions. Package Library: clangint main() { llvm::Triple triple("x86_64-unknown-linux-gnu"); const clang::TargetInfo* info = clang::TargetInfo::CreateTargetInfo(triple); bool hasSSE2 = info->getDefaultFeatures().hasFeature("sse2"); std::cout << (hasSSE2 ? "SSE2 supported" : "SSE2 not supported") << std::endl; delete info; return 0; }