[clang] [llvm] [VectorCombine] Shrink loads used in shufflevector rebroadcasts (PR #128938)

2025-04-15 Thread Leon Clark via cfe-commits
@@ -47,21 +47,12 @@ define <8 x i32> @concat_extract_subvectors_poison(<8 x i32> %x) { ; broadcast loads are free on AVX (and blends are much cheap than general 2-operand shuffles) define <4 x double> @blend_broadcasts_v4f64(ptr %p0, ptr %p1) { -; SSE-LABEL: define <4 x do

[clang] [llvm] [VectorCombine] Shrink loads used in shufflevector rebroadcasts (PR #128938)

2025-03-15 Thread Leon Clark via cfe-commits
https://github.com/PeddleSpam updated https://github.com/llvm/llvm-project/pull/128938 >From f1c09277af268256fce71df9a858959b69385ef1 Mon Sep 17 00:00:00 2001 From: Leon Clark Date: Wed, 26 Feb 2025 15:59:02 + Subject: [PATCH 1/7] [AggressiveInstCombine] Shrink loads used in shufflevector

[clang] [llvm] [VectorCombine] Shrink loads used in shufflevector rebroadcasts (PR #128938)

2025-03-15 Thread Leon Clark via cfe-commits
https://github.com/PeddleSpam updated https://github.com/llvm/llvm-project/pull/128938 >From f1c09277af268256fce71df9a858959b69385ef1 Mon Sep 17 00:00:00 2001 From: Leon Clark Date: Wed, 26 Feb 2025 15:59:02 + Subject: [PATCH 1/6] [AggressiveInstCombine] Shrink loads used in shufflevector

[clang] [llvm] [VectorCombine] Shrink loads used in shufflevector rebroadcasts (PR #128938)

2025-03-14 Thread Leon Clark via cfe-commits
@@ -3398,6 +3399,101 @@ bool VectorCombine::foldInterleaveIntrinsics(Instruction &I) { return true; } +// If `I` is a load instruction, used only by shufflevector instructions with +// poison values, attempt to shrink the load to only the lanes being used. +bool VectorCombi

[clang] [llvm] [VectorCombine] Shrink loads used in shufflevector rebroadcasts (PR #128938)

2025-03-14 Thread Leon Clark via cfe-commits
@@ -3398,6 +3399,101 @@ bool VectorCombine::foldInterleaveIntrinsics(Instruction &I) { return true; } +// If `I` is a load instruction, used only by shufflevector instructions with +// poison values, attempt to shrink the load to only the lanes being used. +bool VectorCombi

[clang] [llvm] [AggressiveInstCombine] Shrink loads used in shufflevector rebroadcasts. (PR #128938)

2025-02-28 Thread Leon Clark via cfe-commits
https://github.com/PeddleSpam updated https://github.com/llvm/llvm-project/pull/128938 >From f1c09277af268256fce71df9a858959b69385ef1 Mon Sep 17 00:00:00 2001 From: Leon Clark Date: Wed, 26 Feb 2025 15:59:02 + Subject: [PATCH 1/3] [AggressiveInstCombine] Shrink loads used in shufflevector

[clang] [llvm] [AggressiveInstCombine] Shrink loads used in shufflevector rebroadcasts. (PR #128938)

2025-02-26 Thread Leon Clark via cfe-commits
https://github.com/PeddleSpam updated https://github.com/llvm/llvm-project/pull/128938 >From f1c09277af268256fce71df9a858959b69385ef1 Mon Sep 17 00:00:00 2001 From: Leon Clark Date: Wed, 26 Feb 2025 15:59:02 + Subject: [PATCH 1/2] [AggressiveInstCombine] Shrink loads used in shufflevector