From b5534494c7b4a2513db4e07e0281abd333d64c68 Mon Sep 17 00:00:00 2001 From: "halide-ci[bot]" <266445882+halide-ci[bot]@users.noreply.github.com> Date: Sun, 12 Apr 2026 06:37:55 +0000 Subject: [PATCH 1/5] Upgrade halide-llvm to 23.0.0.dev88930+g53472641 --- uv.lock | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/uv.lock b/uv.lock index 20a789bd8029..660152e88f2b 100644 --- a/uv.lock +++ b/uv.lock @@ -178,7 +178,7 @@ ci-llvm-22 = [ ] ci-llvm-main = [ { name = "cmake" }, - { name = "halide-llvm", version = "23.0.0.dev88125+g7fd02b32", source = { registry = "https://pypi.halide-lang.org/simple" } }, + { name = "halide-llvm", version = "23.0.0.dev88930+g53472641", source = { registry = "https://pypi.halide-lang.org/simple" } }, { name = "ninja" }, { name = "onnx", marker = "platform_machine != 'armv7l' and platform_machine != 'armv8l'" }, { name = "pre-commit" }, @@ -346,7 +346,7 @@ wheels = [ [[package]] name = "halide-llvm" -version = "23.0.0.dev88125+g7fd02b32" +version = "23.0.0.dev88930+g53472641" source = { registry = "https://pypi.halide-lang.org/simple" } resolution-markers = [ "(python_full_version >= '3.11' and platform_machine == 'armv7l' and sys_platform != 'armv7l' and sys_platform != 'armv8l') or (python_full_version >= '3.11' and platform_machine == 'armv8l' and sys_platform != 'armv7l' and sys_platform != 'armv8l')", @@ -363,14 +363,14 @@ resolution-markers = [ "(python_full_version < '3.11' and platform_machine != 'armv7l' and platform_machine != 'armv8l' and sys_platform == 'armv7l') or (python_full_version < '3.11' and platform_machine != 'armv7l' and platform_machine != 'armv8l' and sys_platform == 'armv8l')", ] wheels = [ - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-macosx_11_0_arm64.whl", hash = "sha256:a6df26905577d4203a53f73083d3de06c61fbf1af67b48b2f8e7ee0b1434d549" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-macosx_11_0_x86_64.whl", hash = "sha256:0ebea668a8d477e43cc61295606bdcc44b9282c3eb3171414b5c3371f5c2d4cb" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a19e28150a92bc8e86a7219f06685301e1363d83f6de21bd007fba3f69f2ca57" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c71cf3bbb86075281d5f4210b5995b808f2d6f0830f8d13c6c8004ccca8ad740" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-manylinux_2_28_i686.whl", hash = "sha256:3c23a6608a664b407b4bf9ccb72c222970feba183ad0d7566956375933c89961" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-manylinux_2_31_armv7l.whl", hash = "sha256:ad44e47a9f0ee6bdef4dac0db45a45204ab0094197e2891b80eeee2265f865e8" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-win32.whl", hash = "sha256:34b2e92491050cb392870c36617f6f81002eb319d0f6d80ffd7f206f0ef2325a" }, - { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88125+g7fd02b32-py3-none-win_amd64.whl", hash = "sha256:efbea323c07d775cef50fae9e251109a6ffbc98c522c3616eb068078704efeb1" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-macosx_11_0_arm64.whl", hash = "sha256:0bf5b6489e682a8a27f05342ad40b98998f927f16967571a03b4adc3e7bd4845" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-macosx_11_0_x86_64.whl", hash = "sha256:c32fb9e219a232e37eefacad06ec2cafef2fd2de7d42e927f58e8585e6367746" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e0bba805bdee950de2aafb664013b8091394898bba200e6b30e0293114931e8c" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c09d9c856c2f3ffe7cb292f076c47c0e532ecda61d3f653db4ca74453fd95583" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-manylinux_2_28_i686.whl", hash = "sha256:7ccbeb5b6eef3e7e0977aaa39f7e2ccf78d33fff7368f32cd8546e4c485807f1" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-manylinux_2_31_armv7l.whl", hash = "sha256:e911dd71b70c98a84c89de33f879efa913f6610674c2bc921d469f282b0a8f85" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-win32.whl", hash = "sha256:a9a520ea3ac9b015121737c9581bf248400f1c00dfa0a5fb616260c29c901fe4" }, + { url = "https://pypi.halide-lang.org/packages/halide_llvm-23.0.0.dev88930+g53472641-py3-none-win_amd64.whl", hash = "sha256:b479c076b6bd9cac7c337b47e6ea8907d1a5d97cab01988a066c2750732d0f8d" }, ] [[package]] From 62919c23838e194f3e8f410850153eea77732ff0 Mon Sep 17 00:00:00 2001 From: Andrew Adams Date: Mon, 13 Apr 2026 10:13:03 -0700 Subject: [PATCH 2/5] Fix name mangling for sve strided store --- src/CodeGen_ARM.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/CodeGen_ARM.cpp b/src/CodeGen_ARM.cpp index abfff62a431a..5b413e1e397c 100644 --- a/src/CodeGen_ARM.cpp +++ b/src/CodeGen_ARM.cpp @@ -1565,6 +1565,9 @@ void CodeGen_ARM::visit(const Store *op) { << (intrin_type.lanes() / target_vscale()) << (t.is_float() ? 'f' : 'i') << t.bits(); +#if LLVM_VERSION >= 230 + instr << ".p0"; +#endif arg_types = vector(num_vecs, intrin_llvm_type); arg_types.emplace_back(get_vector_type(i1_t, intrin_type.lanes() / target_vscale(), VectorTypeConstraint::VScale)); // predicate arg_types.emplace_back(ptr_t); From 3471d781d960205f305605ff027d76bd7ac2b613 Mon Sep 17 00:00:00 2001 From: Andrew Adams Date: Mon, 13 Apr 2026 14:18:25 -0700 Subject: [PATCH 3/5] Also fix loads --- src/CodeGen_ARM.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/CodeGen_ARM.cpp b/src/CodeGen_ARM.cpp index 5b413e1e397c..6e24933c54b4 100644 --- a/src/CodeGen_ARM.cpp +++ b/src/CodeGen_ARM.cpp @@ -1871,6 +1871,9 @@ void CodeGen_ARM::visit(const Load *op) { << vscale_natural_lanes << (elt == Float(32) || elt == Float(64) ? 'f' : 'i') << elt.bits(); +#if LLVM_VERSION >= 230 + instr << ".p0"; +#endif llvm::FunctionType *fn_type = FunctionType::get(slice_type, {pred_type, elt_ptr->getType(), slice_index_type}, false); FunctionCallee fn = module->getOrInsertFunction(instr.str(), fn_type); From 00fd3cf832c35d85508b7ba105dfabfc171f8795 Mon Sep 17 00:00:00 2001 From: "halide-ci[bot]" <266445882+halide-ci[bot]@users.noreply.github.com> Date: Mon, 13 Apr 2026 21:19:51 +0000 Subject: [PATCH 4/5] Apply pre-commit auto-fixes --- src/CodeGen_ARM.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/CodeGen_ARM.cpp b/src/CodeGen_ARM.cpp index 6e24933c54b4..35efcf8eea86 100644 --- a/src/CodeGen_ARM.cpp +++ b/src/CodeGen_ARM.cpp @@ -1872,7 +1872,7 @@ void CodeGen_ARM::visit(const Load *op) { << (elt == Float(32) || elt == Float(64) ? 'f' : 'i') << elt.bits(); #if LLVM_VERSION >= 230 - instr << ".p0"; + instr << ".p0"; #endif llvm::FunctionType *fn_type = FunctionType::get(slice_type, {pred_type, elt_ptr->getType(), slice_index_type}, false); From 1dc6726aedfa6956439b6c0755a71044d5666d38 Mon Sep 17 00:00:00 2001 From: Andrew Adams Date: Mon, 13 Apr 2026 15:02:45 -0700 Subject: [PATCH 5/5] ... and scatters --- src/CodeGen_ARM.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/CodeGen_ARM.cpp b/src/CodeGen_ARM.cpp index 6e24933c54b4..2e24aa165b6e 100644 --- a/src/CodeGen_ARM.cpp +++ b/src/CodeGen_ARM.cpp @@ -1696,7 +1696,9 @@ void CodeGen_ARM::visit(const Store *op) { << vscale_natural_lanes << (elt == Float(32) || elt == Float(64) ? 'f' : 'i') << elt.bits(); - +#if LLVM_VERSION >= 230 + instr << ".p0"; +#endif vector arg_types{slice_type, pred_type, elt_ptr->getType(), slice_index_type}; llvm::FunctionType *fn_type = FunctionType::get(void_t, arg_types, false); FunctionCallee fn = module->getOrInsertFunction(instr.str(), fn_type);