set(LLVM_TARGET_DEFINITIONS Attributes.td)
llvm_tablegen(Attributes.inc -gen-attrs)

set(LLVM_TARGET_DEFINITIONS RuntimeLibcalls.td)
llvm_tablegen(RuntimeLibcalls.inc -gen-runtime-libcalls)

set(LLVM_TARGET_DEFINITIONS Intrinsics.td)
llvm_tablegen(IntrinsicImpl.inc -gen-intrinsic-impl)
llvm_tablegen(IntrinsicEnums.inc -gen-intrinsic-enums)
llvm_tablegen(IntrinsicsAArch64.h -gen-intrinsic-enums -intrinsic-prefix=aarch64)
llvm_tablegen(IntrinsicsAMDGPU.h -gen-intrinsic-enums -intrinsic-prefix=amdgcn)
llvm_tablegen(IntrinsicsARM.h -gen-intrinsic-enums -intrinsic-prefix=arm)
llvm_tablegen(IntrinsicsAVR.h -gen-intrinsic-enums -intrinsic-prefix=avr)
llvm_tablegen(IntrinsicsBPF.h -gen-intrinsic-enums -intrinsic-prefix=bpf)
llvm_tablegen(IntrinsicsDirectX.h -gen-intrinsic-enums -intrinsic-prefix=dx)
llvm_tablegen(IntrinsicsHexagon.h -gen-intrinsic-enums -intrinsic-prefix=hexagon)
llvm_tablegen(IntrinsicsLoongArch.h -gen-intrinsic-enums -intrinsic-prefix=loongarch)
llvm_tablegen(IntrinsicsMips.h -gen-intrinsic-enums -intrinsic-prefix=mips)
llvm_tablegen(IntrinsicsNVPTX.h -gen-intrinsic-enums -intrinsic-prefix=nvvm)
llvm_tablegen(IntrinsicsPowerPC.h -gen-intrinsic-enums -intrinsic-prefix=ppc)
llvm_tablegen(IntrinsicsR600.h -gen-intrinsic-enums -intrinsic-prefix=r600)
llvm_tablegen(IntrinsicsRISCV.h -gen-intrinsic-enums -intrinsic-prefix=riscv)
llvm_tablegen(IntrinsicsSPIRV.h -gen-intrinsic-enums -intrinsic-prefix=spv)
llvm_tablegen(IntrinsicsS390.h -gen-intrinsic-enums -intrinsic-prefix=s390)
llvm_tablegen(IntrinsicsWebAssembly.h -gen-intrinsic-enums -intrinsic-prefix=wasm)
llvm_tablegen(IntrinsicsX86.h -gen-intrinsic-enums -intrinsic-prefix=x86)
llvm_tablegen(IntrinsicsXCore.h -gen-intrinsic-enums -intrinsic-prefix=xcore)
llvm_tablegen(IntrinsicsVE.h -gen-intrinsic-enums -intrinsic-prefix=ve)
add_public_tablegen_target(intrinsics_gen)
