diff --git a/llvm/utils/gn/build/toolchain/BUILD.gn b/llvm/utils/gn/build/toolchain/BUILD.gn index 63e61db2d16b..077bc9db3e3b 100644 --- a/llvm/utils/gn/build/toolchain/BUILD.gn +++ b/llvm/utils/gn/build/toolchain/BUILD.gn @@ -373,3 +373,17 @@ win_toolchain("stage2_win") { "//:lld($host_toolchain)", ] } + +win_toolchain("stage2_win_x86") { + toolchain_args = { + current_os = host_os + current_cpu = "x86" + + clang_base_path = root_build_dir + use_goma = false + } + deps = [ + "//:clang($host_toolchain)", + "//:lld($host_toolchain)", + ] +} diff --git a/llvm/utils/gn/secondary/compiler-rt/BUILD.gn b/llvm/utils/gn/secondary/compiler-rt/BUILD.gn index 6d7b54fdd01e..9fa7c2569808 100644 --- a/llvm/utils/gn/secondary/compiler-rt/BUILD.gn +++ b/llvm/utils/gn/secondary/compiler-rt/BUILD.gn @@ -7,6 +7,7 @@ import("//llvm/utils/gn/build/toolchain/compiler.gni") # toolchains and then lipo them together for the final output. if (current_os == "win") { supported_toolchains = [ "//llvm/utils/gn/build/toolchain:stage2_win" ] + supported_toolchains += [ "//llvm/utils/gn/build/toolchain:stage2_win_x86" ] } else { supported_toolchains = [ "//llvm/utils/gn/build/toolchain:stage2_unix" ] } diff --git a/llvm/utils/gn/secondary/llvm/triples.gni b/llvm/utils/gn/secondary/llvm/triples.gni index a0ea488e04f3..2f6c08a45b20 100644 --- a/llvm/utils/gn/secondary/llvm/triples.gni +++ b/llvm/utils/gn/secondary/llvm/triples.gni @@ -1,6 +1,8 @@ if (current_cpu == "x86") { if (current_os == "linux") { llvm_current_triple = "i386-unknown-linux-gnu" + } else if (current_os == "win") { + llvm_current_triple = "i386-pc-windows-msvc" } } else if (current_cpu == "x64") { if (current_os == "freebsd") {