136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines//===-- X86AsmParserCommon.h - Common functions for X86AsmParser ---------===// 236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines// 336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines// The LLVM Compiler Infrastructure 436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines// 536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines// This file is distributed under the University of Illinois Open Source 636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines// License. See LICENSE.TXT for details. 736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines// 836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines//===----------------------------------------------------------------------===// 936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines#ifndef X86_ASM_PARSER_COMMON_H 1136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines#define X86_ASM_PARSER_COMMON_H 1236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesnamespace llvm { 1436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesinline bool isImmSExti16i8Value(uint64_t Value) { 1636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines return (( Value <= 0x000000000000007FULL)|| 1736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines (0x000000000000FF80ULL <= Value && Value <= 0x000000000000FFFFULL)|| 1836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines (0xFFFFFFFFFFFFFF80ULL <= Value && Value <= 0xFFFFFFFFFFFFFFFFULL)); 1936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines} 2036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 2136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesinline bool isImmSExti32i8Value(uint64_t Value) { 2236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines return (( Value <= 0x000000000000007FULL)|| 2336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines (0x00000000FFFFFF80ULL <= Value && Value <= 0x00000000FFFFFFFFULL)|| 2436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines (0xFFFFFFFFFFFFFF80ULL <= Value && Value <= 0xFFFFFFFFFFFFFFFFULL)); 2536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines} 2636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 2736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesinline bool isImmZExtu32u8Value(uint64_t Value) { 2836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines return (Value <= 0x00000000000000FFULL); 2936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines} 3036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesinline bool isImmSExti64i8Value(uint64_t Value) { 3236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines return (( Value <= 0x000000000000007FULL)|| 3336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines (0xFFFFFFFFFFFFFF80ULL <= Value && Value <= 0xFFFFFFFFFFFFFFFFULL)); 3436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines} 3536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesinline bool isImmSExti64i32Value(uint64_t Value) { 3736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines return (( Value <= 0x000000007FFFFFFFULL)|| 3836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines (0xFFFFFFFF80000000ULL <= Value && Value <= 0xFFFFFFFFFFFFFFFFULL)); 3936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines} 4036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 4136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines} // End of namespace llvm 4236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 4336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines#endif // X86_ASM_PARSER_COMMON_H 44