diff --git a/llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn b/llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn index 8db5b99ab3471..04e945eab49a7 100644 --- a/llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn @@ -158,3 +158,15 @@ clang_tablegen("arm_cde_builtin_aliases") { args = [ "-gen-arm-cde-builtin-aliases" ] td_file = "arm_cde.td" } + +# RISC-V + +clang_tablegen("riscv_vector_builtins") { + args = [ "-gen-riscv-vector-builtins" ] + td_file = "riscv_vector.td" +} + +clang_tablegen("riscv_vector_builtin_cg") { + args = [ "-gen-riscv-vector-builtin-codegen" ] + td_file = "riscv_vector.td" +} diff --git a/llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn b/llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn index 71d67c777b177..ee8ae40ef2a02 100644 --- a/llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn @@ -29,6 +29,7 @@ static_library("Basic") { "//clang/include/clang/Basic:arm_sve_builtins", "//clang/include/clang/Basic:arm_sve_typeflags", "//clang/include/clang/Basic:diags_tablegen", + "//clang/include/clang/Basic:riscv_vector_builtins", "//clang/include/clang/Basic:version", ] deps = [ diff --git a/llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn b/llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn index b7ecb646429e3..bdc0b91b36b9b 100644 --- a/llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn @@ -5,6 +5,7 @@ static_library("CodeGen") { "//clang/include/clang/Basic:arm_cde_builtin_cg", "//clang/include/clang/Basic:arm_mve_builtin_cg", "//clang/include/clang/Basic:arm_sve_builtin_cg", + "//clang/include/clang/Basic:riscv_vector_builtin_cg", "//clang/lib/AST", "//clang/lib/Analysis", "//clang/lib/Basic", diff --git a/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn b/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn index b13b6e59ba3b1..479ba31eec685 100644 --- a/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn @@ -43,7 +43,21 @@ clang_tablegen("arm_cde") { output_name = "arm_cde.h" } -copy("arm_headers") { +# Generate riscv_vector.h +clang_tablegen("riscv_vector") { + args = [ "-gen-riscv-vector-header" ] + td_file = "//clang/include/clang/Basic/riscv_vector.td" + output_name = "riscv_vector.h" +} + +# Generate riscv_vector_generic.h +clang_tablegen("riscv_vector_generic") { + args = [ "-gen-riscv-vector-generic-header" ] + td_file = "//clang/include/clang/Basic/riscv_vector.td" + output_name = "riscv_vector_generic.h" +} + +copy("tablegen_headers") { visibility = [ ":Headers" ] deps = [ ":arm_bf16", @@ -52,6 +66,8 @@ copy("arm_headers") { ":arm_mve", ":arm_neon", ":arm_sve", + ":riscv_vector", + ":riscv_vector_generic", ] sources = [] foreach(dep, deps) { @@ -61,7 +77,7 @@ copy("arm_headers") { } copy("Headers") { - deps = [ ":arm_headers" ] + deps = [ ":tablegen_headers" ] sources = [ "__clang_cuda_builtin_vars.h", diff --git a/llvm/utils/gn/secondary/clang/utils/TableGen/BUILD.gn b/llvm/utils/gn/secondary/clang/utils/TableGen/BUILD.gn index 860f2b85e3d70..c94f76a0d0fa3 100644 --- a/llvm/utils/gn/secondary/clang/utils/TableGen/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/utils/TableGen/BUILD.gn @@ -21,6 +21,7 @@ executable("clang-tblgen") { "ClangTypeNodesEmitter.cpp", "MveEmitter.cpp", "NeonEmitter.cpp", + "RISCVVEmitter.cpp", "SveEmitter.cpp", "TableGen.cpp", ]