clang 20.0.0git
Namespaces | Macros | Typedefs | Functions | Variables
SemaRISCV.cpp File Reference
#include "clang/Sema/SemaRISCV.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Decl.h"
#include "clang/Basic/Builtins.h"
#include "clang/Basic/TargetBuiltins.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Sema/Attr.h"
#include "clang/Sema/Initialization.h"
#include "clang/Sema/Lookup.h"
#include "clang/Sema/ParsedAttr.h"
#include "clang/Sema/RISCVIntrinsicManager.h"
#include "clang/Sema/Sema.h"
#include "clang/Support/RISCVVIntrinsicUtils.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/TargetParser/RISCVTargetParser.h"
#include <optional>
#include <string>
#include <vector>
#include "clang/Basic/riscv_vector_builtin_sema.inc"
#include "clang/Basic/riscv_sifive_vector_builtin_sema.inc"

Go to the source code of this file.

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 

Macros

#define DECL_SIGNATURE_TABLE
 
#define DECL_SIGNATURE_TABLE
 
#define DECL_INTRINSIC_RECORDS
 
#define DECL_INTRINSIC_RECORDS
 

Typedefs

using IntrinsicKind = sema::RISCVIntrinsicManager::IntrinsicKind
 

Functions

static ArrayRef< PrototypeDescriptorProtoSeq2ArrayRef (IntrinsicKind K, uint16_t Index, uint8_t Length)
 
static QualType RVVType2Qual (ASTContext &Context, const RVVType *Type)
 
std::unique_ptr< sema::RISCVIntrinsicManagerclang::CreateRISCVIntrinsicManager (Sema &S)
 
static bool clang::CheckInvalidVLENandLMUL (const TargetInfo &TI, CallExpr *TheCall, Sema &S, QualType Type, int EGW)
 

Variables

static const PrototypeDescriptor RVVSignatureTable []
 
static const PrototypeDescriptor RVSiFiveVectorSignatureTable []
 
static const RVVIntrinsicRecord RVVIntrinsicRecords []
 
static const RVVIntrinsicRecord RVSiFiveVectorIntrinsicRecords []
 

Macro Definition Documentation

◆ DECL_INTRINSIC_RECORDS [1/2]

#define DECL_INTRINSIC_RECORDS

◆ DECL_INTRINSIC_RECORDS [2/2]

#define DECL_INTRINSIC_RECORDS

◆ DECL_SIGNATURE_TABLE [1/2]

#define DECL_SIGNATURE_TABLE

◆ DECL_SIGNATURE_TABLE [2/2]

#define DECL_SIGNATURE_TABLE

Typedef Documentation

◆ IntrinsicKind

Definition at line 37 of file SemaRISCV.cpp.

Function Documentation

◆ ProtoSeq2ArrayRef()

static ArrayRef< PrototypeDescriptor > ProtoSeq2ArrayRef ( IntrinsicKind  K,
uint16_t  Index,
uint8_t  Length 
)
static

Definition at line 83 of file SemaRISCV.cpp.

References RVSiFiveVectorSignatureTable, and RVVSignatureTable.

◆ RVVType2Qual()

static QualType RVVType2Qual ( ASTContext Context,
const RVVType Type 
)
static

Variable Documentation

◆ RVSiFiveVectorIntrinsicRecords

const RVVIntrinsicRecord RVSiFiveVectorIntrinsicRecords[]
static
Initial value:
= {
#define DECL_INTRINSIC_RECORDS
}

Definition at line 75 of file SemaRISCV.cpp.

◆ RVSiFiveVectorSignatureTable

const PrototypeDescriptor RVSiFiveVectorSignatureTable[]
static
Initial value:
= {
#define DECL_SIGNATURE_TABLE
}

Definition at line 63 of file SemaRISCV.cpp.

Referenced by ProtoSeq2ArrayRef().

◆ RVVIntrinsicRecords

const RVVIntrinsicRecord RVVIntrinsicRecords[]
static
Initial value:
= {
#define DECL_INTRINSIC_RECORDS
}

Definition at line 69 of file SemaRISCV.cpp.

◆ RVVSignatureTable

const PrototypeDescriptor RVVSignatureTable[]
static
Initial value:
= {
#define DECL_SIGNATURE_TABLE
}

Definition at line 57 of file SemaRISCV.cpp.

Referenced by ProtoSeq2ArrayRef().