File indexing completed on 2026-05-10 08:37:05
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef LLVM_CLANG_SEMA_SEMAX86_H
0014 #define LLVM_CLANG_SEMA_SEMAX86_H
0015
0016 #include "clang/AST/ASTFwd.h"
0017 #include "clang/Basic/LLVM.h"
0018 #include "clang/Sema/SemaBase.h"
0019
0020 namespace clang {
0021 class ParsedAttr;
0022 class TargetInfo;
0023
0024 class SemaX86 : public SemaBase {
0025 public:
0026 SemaX86(Sema &S);
0027
0028 bool CheckBuiltinRoundingOrSAE(unsigned BuiltinID, CallExpr *TheCall);
0029 bool CheckBuiltinGatherScatterScale(unsigned BuiltinID, CallExpr *TheCall);
0030 bool CheckBuiltinTileArguments(unsigned BuiltinID, CallExpr *TheCall);
0031 bool CheckBuiltinTileArgumentsRange(CallExpr *TheCall, ArrayRef<int> ArgNums);
0032 bool CheckBuiltinTileDuplicate(CallExpr *TheCall, ArrayRef<int> ArgNums);
0033 bool CheckBuiltinTileRangeAndDuplicate(CallExpr *TheCall,
0034 ArrayRef<int> ArgNums);
0035 bool CheckBuiltinFunctionCall(const TargetInfo &TI, unsigned BuiltinID,
0036 CallExpr *TheCall);
0037
0038 void handleAnyInterruptAttr(Decl *D, const ParsedAttr &AL);
0039 void handleForceAlignArgPointerAttr(Decl *D, const ParsedAttr &AL);
0040 };
0041 }
0042
0043 #endif