Home | History | Annotate | Line # | Download | only in AsmParser
      1 //===-- X86AsmParserCommon.h - Common functions for X86AsmParser ---------===//
      2 //
      3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
      4 // See https://llvm.org/LICENSE.txt for license information.
      5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
      6 //
      7 //===----------------------------------------------------------------------===//
      8 
      9 #ifndef LLVM_LIB_TARGET_X86_ASMPARSER_X86ASMPARSERCOMMON_H
     10 #define LLVM_LIB_TARGET_X86_ASMPARSER_X86ASMPARSERCOMMON_H
     11 
     12 #include "llvm/Support/MathExtras.h"
     13 
     14 namespace llvm {
     15 
     16 inline bool isImmSExti16i8Value(uint64_t Value) {
     17   return isInt<8>(Value) ||
     18          (isUInt<16>(Value) && isInt<8>(static_cast<int16_t>(Value)));
     19 }
     20 
     21 inline bool isImmSExti32i8Value(uint64_t Value) {
     22   return isInt<8>(Value) ||
     23          (isUInt<32>(Value) && isInt<8>(static_cast<int32_t>(Value)));
     24 }
     25 
     26 inline bool isImmSExti64i8Value(uint64_t Value) {
     27   return isInt<8>(Value);
     28 }
     29 
     30 inline bool isImmSExti64i32Value(uint64_t Value) {
     31   return isInt<32>(Value);
     32 }
     33 
     34 inline bool isImmUnsignedi8Value(uint64_t Value) {
     35   return isUInt<8>(Value) || isInt<8>(Value);
     36 }
     37 
     38 inline bool isImmUnsignedi4Value(uint64_t Value) {
     39   return isUInt<4>(Value);
     40 }
     41 
     42 } // End of namespace llvm
     43 
     44 #endif
     45