xref: /llvm-project/llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp (revision 4a84b7322fb251cd2af65a0526b555e0a2e0714f)
1 //===-- WebAssemblyTargetTransformInfo.cpp - WebAssembly-specific TTI -----===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 ///
10 /// \file
11 /// \brief This file defines the WebAssembly-specific TargetTransformInfo
12 /// implementation.
13 ///
14 //===----------------------------------------------------------------------===//
15 
16 #include "WebAssemblyTargetTransformInfo.h"
17 #include "llvm/Support/Debug.h"
18 #include "llvm/Target/CostTable.h"
19 using namespace llvm;
20 
21 #define DEBUG_TYPE "wasmtti"
22 
23 TargetTransformInfo::PopcntSupportKind
24 WebAssemblyTTIImpl::getPopcntSupport(unsigned TyWidth) const {
25   assert(isPowerOf2_32(TyWidth) && "Ty width must be power of 2");
26   return TargetTransformInfo::PSK_FastHardware;
27 }
28