//===--- SIMDUnsignedInitializers.swift.gyb -------------------*- swift -*-===// // // This source file is part of the Swift.org open source project // // Copyright (c) 2025 Apple Inc. and the Swift project authors // Licensed under Apache License v2.0 with Runtime Library Exception // // See https://swift.org/LICENSE.txt for license information // See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors // //===----------------------------------------------------------------------===// // RUN: %empty-directory(%t) // RUN: %gyb %s -o %t/SIMDUnsignedInitializers.swift // RUN: %target-swift-frontend -primary-file %t/SIMDUnsignedInitializers.swift -emit-ir | %FileCheck %t/SIMDUnsignedInitializers.swift --check-prefix=CHECK --check-prefix=CHECK-%target-cpu import Swift %for bits in [8,16,32,64]: % for totalBits in [64,128]: % n = totalBits // bits % if n != 1: % neonSuffix = str(n) + {8:'b',16:'h',32:'s',64:'d'}[bits] func repeating${n}_uint${bits}(_ scalar: UInt${bits}) -> SIMD${n} { SIMD${n}(repeating: scalar) } // CHECK: repeating${n}_uint${bits}{{.*}} { // CHECK: entry: // CHECK: [[TMP:%[0-9]+]] = insertelement <${n} x i${bits}> {{.*}}, i${bits} %{{.*}}, i32 0 // CHECK-NEXT: [[REP:%[0-9]+]] = shufflevector <${n} x i${bits}> [[TMP]], <${n} x i${bits}> {{.*}}, <${n} x i32> zeroinitializer % end % end %end