[clang] [Clang] Remove 3-element vector load and store special handling (PR #104661)

Craig Topper via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 16 22:28:49 PDT 2024


================
@@ -45,7 +45,7 @@ void test3(packedfloat3 *p) {
   *p = (packedfloat3) { 3.2f, 2.3f, 0.1f };
 }
 // CHECK: @test3(
-// CHECK: store <4 x float> {{.*}}, align 4
+// CHECK: store <3 x float> {{.*}}, align 4
----------------
topperc wrote:

Is the backend able to lower this a a single store? Or will it get split into 2 or more stores? As far as I know the X86 backend will split it into 2 stores, a 64 bit and a 32 bit.

https://github.com/llvm/llvm-project/pull/104661


More information about the cfe-commits mailing list