[PATCH] D115750: [SLP]Further improvement of the cost model for scalars used in buildvectors.

Alexey Bataev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 16 07:34:54 PDT 2022


ABataev added a comment.

In D115750#3513649 <https://reviews.llvm.org/D115750#3513649>, @aeubanks wrote:

> another one :)
>
>   target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
>   target triple = "x86_64-unknown-linux-android23"
>   
>   %0 = type { float, float, float, float }
>   
>   define internal void @0() {
>     %1 = getelementptr inbounds %0, ptr undef, i64 0, i32 2
>     %2 = load float, ptr %1, align 4
>     %3 = load float, ptr undef, align 4
>     %4 = fsub float %2, %3
>     %5 = getelementptr inbounds %0, ptr undef, i64 0, i32 3
>     %6 = load float, ptr %5, align 4
>     %7 = getelementptr inbounds %0, ptr undef, i64 0, i32 1
>     %8 = load float, ptr %7, align 4
>     %9 = fsub float %6, %8
>     %10 = fcmp olt float %9, %4
>     %.sroa.0.0.vec.insert.i5.i10 = insertelement <2 x float> undef, float %3, i64 0
>     %.sroa.0.4.vec.insert.i10.i13 = insertelement <2 x float> %.sroa.0.0.vec.insert.i5.i10, float %8, i64 1
>     store <2 x float> %.sroa.0.4.vec.insert.i10.i13, ptr null, align 4
>     %.sroa.0.4.vec.insert.i10.i13.2 = insertelement <2 x float> %.sroa.0.0.vec.insert.i5.i10, float %6, i64 1
>     store <2 x float> %.sroa.0.4.vec.insert.i10.i13.2, ptr null, align 4
>     ret void
>   }

Fixed in 152072801e24fb1e5cd962b0cb089230bc27b6b9 <https://reviews.llvm.org/rG152072801e24fb1e5cd962b0cb089230bc27b6b9>


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D115750/new/

https://reviews.llvm.org/D115750



More information about the llvm-commits mailing list