LLVM
22.0.0git
include
llvm
TableGen
AArch64ImmCheck.h
Go to the documentation of this file.
1
//===----- AArch64ImmCheck.h -- ARM immediate range check -----*- C++ -*---===//
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
/// \file
9
/// This file implements the ImmCheck class which supports the range-checking of
10
/// immediate values supplied to AArch64 SVE/SME and NEON intrinsics.
11
///
12
//===----------------------------------------------------------------------===//
13
14
#ifndef AARCH64_IMMCHECK_H
15
#define AARCH64_IMMCHECK_H
16
17
class
ImmCheck
{
18
int
ImmArgIdx;
19
unsigned
Kind;
20
unsigned
ElementSizeInBits;
21
unsigned
VecSizeInBits;
22
23
public
:
24
ImmCheck
(
int
ImmArgIdx,
unsigned
Kind,
unsigned
ElementSizeInBits = 0,
25
unsigned
VecSizeInBits = 128)
26
: ImmArgIdx(ImmArgIdx), Kind(Kind), ElementSizeInBits(ElementSizeInBits),
27
VecSizeInBits(VecSizeInBits) {}
28
ImmCheck
(
const
ImmCheck
&Other) =
default
;
29
~ImmCheck
() =
default
;
30
31
int
getImmArgIdx
()
const
{
return
ImmArgIdx; }
32
unsigned
getKind
()
const
{
return
Kind; }
33
unsigned
getElementSizeInBits
()
const
{
return
ElementSizeInBits; }
34
unsigned
getVecSizeInBits
()
const
{
return
VecSizeInBits; }
35
};
36
37
#endif
ImmCheck::ImmCheck
ImmCheck(int ImmArgIdx, unsigned Kind, unsigned ElementSizeInBits=0, unsigned VecSizeInBits=128)
Definition
AArch64ImmCheck.h:24
ImmCheck::getElementSizeInBits
unsigned getElementSizeInBits() const
Definition
AArch64ImmCheck.h:33
ImmCheck::getImmArgIdx
int getImmArgIdx() const
Definition
AArch64ImmCheck.h:31
ImmCheck::getVecSizeInBits
unsigned getVecSizeInBits() const
Definition
AArch64ImmCheck.h:34
ImmCheck::getKind
unsigned getKind() const
Definition
AArch64ImmCheck.h:32
ImmCheck::ImmCheck
ImmCheck(const ImmCheck &Other)=default
ImmCheck::~ImmCheck
~ImmCheck()=default
Generated on
for LLVM by
1.14.0