diff options
author | Nico Weber <thakis@chromium.org> | 2022-11-10 16:59:44 +0300 |
---|---|---|
committer | Nico Weber <thakis@chromium.org> | 2022-11-13 17:38:53 +0300 |
commit | 6e8f8b19645358506492ebc8adcc7414edf41fb5 (patch) | |
tree | 7359f6f0c493e8457e51472b6253d5baafa6d31f | |
parent | 313a4aef7f501f3d21c9843ed67248df6ea30d29 (diff) |
[gn build] Extract gen_arch_intrinsics() template to remove some duplication
No behavior change.
Differential Revision: https://reviews.llvm.org/D137784
-rw-r--r-- | llvm/utils/gn/secondary/llvm/include/llvm/IR/BUILD.gn | 182 |
1 files changed, 46 insertions, 136 deletions
diff --git a/llvm/utils/gn/secondary/llvm/include/llvm/IR/BUILD.gn b/llvm/utils/gn/secondary/llvm/include/llvm/IR/BUILD.gn index 31d2f4171360..148fe951b432 100644 --- a/llvm/utils/gn/secondary/llvm/include/llvm/IR/BUILD.gn +++ b/llvm/utils/gn/secondary/llvm/include/llvm/IR/BUILD.gn @@ -17,174 +17,84 @@ tablegen("IntrinsicEnums") { td_file = "Intrinsics.td" } -tablegen("IntrinsicsAArch64") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsAArch64.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=aarch64", - ] - td_file = "Intrinsics.td" +template("gen_arch_intrinsics") { + tablegen(target_name) { + visibility = [ ":public_tablegen" ] + output_name = "$target_name.h" + args = [ + "-gen-intrinsic-enums", + "-intrinsic-prefix=${invoker.intrinsic_prefix}", + ] + td_file = "Intrinsics.td" + } } -tablegen("IntrinsicsAMDGPU") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsAMDGPU.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=amdgcn", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsAArch64") { + intrinsic_prefix = "aarch64" } -tablegen("IntrinsicsARM") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsARM.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=arm", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsAMDGPU") { + intrinsic_prefix = "amdgcn" } -tablegen("IntrinsicsBPF") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsBPF.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=bpf", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsARM") { + intrinsic_prefix = "arm" } -tablegen("IntrinsicsDirectX") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsDirectX.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=dx", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsBPF") { + intrinsic_prefix = "bpf" } -tablegen("IntrinsicsHexagon") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsHexagon.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=hexagon", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsDirectX") { + intrinsic_prefix = "dx" } -tablegen("IntrinsicsLoongArch") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsLoongArch.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=loongarch", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsHexagon") { + intrinsic_prefix = "hexagon" } -tablegen("IntrinsicsMips") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsMips.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=mips", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsLoongArch") { + intrinsic_prefix = "loongarch" } -tablegen("IntrinsicsNVPTX") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsNVPTX.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=nvvm", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsMips") { + intrinsic_prefix = "mips" } -tablegen("IntrinsicsPowerPC") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsPowerPC.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=ppc", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsNVPTX") { + intrinsic_prefix = "nvvm" } -tablegen("IntrinsicsR600") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsR600.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=r600", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsPowerPC") { + intrinsic_prefix = "ppc" } -tablegen("IntrinsicsRISCV") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsRISCV.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=riscv", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsR600") { + intrinsic_prefix = "r600" } -tablegen("IntrinsicsS390") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsS390.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=s390", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsRISCV") { + intrinsic_prefix = "riscv" } -tablegen("IntrinsicsVE") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsVE.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=ve", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsS390") { + intrinsic_prefix = "s390" } -tablegen("IntrinsicsWebAssembly") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsWebAssembly.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=wasm", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsVE") { + intrinsic_prefix = "ve" } -tablegen("IntrinsicsX86") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsX86.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=x86", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsWebAssembly") { + intrinsic_prefix = "wasm" } -tablegen("IntrinsicsXCore") { - visibility = [ ":public_tablegen" ] - output_name = "IntrinsicsXCore.h" - args = [ - "-gen-intrinsic-enums", - "-intrinsic-prefix=xcore", - ] - td_file = "Intrinsics.td" +gen_arch_intrinsics("IntrinsicsX86") { + intrinsic_prefix = "x86" +} + +gen_arch_intrinsics("IntrinsicsXCore") { + intrinsic_prefix = "xcore" } # Groups all tablegen() calls that create .inc files that are included in |