//===-- SparcTargetTransformInfo.cpp - SPARC specific TTI -----------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #include "SparcTargetTransformInfo.h" #include "llvm/Support/MathExtras.h" using namespace llvm; #define DEBUG_TYPE "sparctti" TargetTransformInfo::PopcntSupportKind SparcTTIImpl::getPopcntSupport(unsigned TyWidth) const { assert(isPowerOf2_32(TyWidth) && "Type width must be power of 2"); if (ST->usePopc()) return TTI::PSK_FastHardware; return TTI::PSK_Software; }