diff --git a/llvm/include/llvm/IR/Intrinsics.td b/llvm/include/llvm/IR/Intrinsics.td --- a/llvm/include/llvm/IR/Intrinsics.td +++ b/llvm/include/llvm/IR/Intrinsics.td @@ -404,6 +404,7 @@ string MSBuiltinName = name; } +#ifndef TEST_INTRINSICS_SUPPRESS_DEFS //===--------------- Variable Argument Handling Intrinsics ----------------===// // @@ -2203,3 +2204,5 @@ include "llvm/IR/IntrinsicsVE.td" include "llvm/IR/IntrinsicsDirectX.td" include "llvm/IR/IntrinsicsLoongArch.td" + +#endif // TEST_INTRINSICS_SUPPRESS_DEFS diff --git a/llvm/test/TableGen/intrinsic-pointer-to-any.td b/llvm/test/TableGen/intrinsic-pointer-to-any.td --- a/llvm/test/TableGen/intrinsic-pointer-to-any.td +++ b/llvm/test/TableGen/intrinsic-pointer-to-any.td @@ -1,4 +1,4 @@ -// RUN: llvm-tblgen -gen-intrinsic-impl %s | FileCheck %s +// RUN: llvm-tblgen -gen-intrinsic-impl -I %p/../../include %s -DTEST_INTRINSICS_SUPPRESS_DEFS | FileCheck %s // This test is validating that it an Intrinsic with an LLVMPointerType to // llvm_any_ty still properly work after r363233. That patch rewrote the @@ -6,52 +6,7 @@ // case, so TableGen would hit an assertion in EncodeFixedType that was checking // to ensure that the substitution being processed was correctly replaced. -class IntrinsicProperty { - bit IsDefault = is_default; -} - -class SDNodeProperty; - -class ValueType { - string Namespace = "MVT"; - int Size = size; - int Value = value; -} - -def iPTR : ValueType<0 , 254>; -def Any : ValueType<0 , 255>; - -class LLVMType { - ValueType VT = vt; - int isAny = 0; -} - - -class Intrinsic ret_types> { - string LLVMName = ""; - string TargetPrefix = ""; // Set to a prefix for target-specific intrinsics. - list RetTypes = ret_types; - list ParamTypes = []; - list IntrProperties = []; - list Properties = []; - bit isTarget = 0; - bit DisableDefaultAttributes = 1; -} - -class LLVMQualPointerType - : LLVMType{ - LLVMType ElTy = elty; - int AddrSpace = 0; -} - -class LLVMPointerType - : LLVMQualPointerType; - -let isAny = 1 in { - def llvm_any_ty : LLVMType; -} -def i8 : ValueType<8, 5>; -def llvm_i8_ty : LLVMType; +include "llvm/IR/Intrinsics.td" def int_has_ptr_to_any : Intrinsic<[LLVMPointerType, llvm_i8_ty]>; // CHECK: /* 0 */ 21, 14, 15, 0, 2, 0 diff --git a/llvm/test/TableGen/intrinsic-varargs.td b/llvm/test/TableGen/intrinsic-varargs.td --- a/llvm/test/TableGen/intrinsic-varargs.td +++ b/llvm/test/TableGen/intrinsic-varargs.td @@ -1,29 +1,7 @@ -// RUN: llvm-tblgen -gen-intrinsic-impl -I %p/../../include %s | FileCheck %s +// RUN: llvm-tblgen -gen-intrinsic-impl -I %p/../../include %s -DTEST_INTRINSICS_SUPPRESS_DEFS | FileCheck %s // XFAIL: vg_leak -include "llvm/CodeGen/ValueTypes.td" - -class IntrinsicProperty { - bit IsDefault = is_default; -} -class SDNodeProperty; - -class LLVMType { - ValueType VT = vt; -} - -class Intrinsic param_types = []> { - string LLVMName = name; - bit isTarget = 0; - string TargetPrefix = ""; - list RetTypes = []; - list ParamTypes = param_types; - list IntrProperties = []; - list Properties = []; - bit DisableDefaultAttributes = 1; -} - -def llvm_vararg_ty : LLVMType; // this means vararg here +include "llvm/IR/Intrinsics.td" // CHECK: /* 0 */ 0, 29, 0, -def int_foo : Intrinsic<"llvm.foo", [llvm_vararg_ty]>; +def int_foo : Intrinsic<[], [llvm_vararg_ty]>;