From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ua1-x933.google.com (mail-ua1-x933.google.com [IPv6:2607:f8b0:4864:20::933]) by sourceware.org (Postfix) with ESMTPS id C45BE3857C65 for ; Fri, 7 Jan 2022 19:15:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org C45BE3857C65 Received: by mail-ua1-x933.google.com with SMTP id p1so11956491uap.9 for ; Fri, 07 Jan 2022 11:15:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=1vSGCPUco2f5A9YRqmm50HzABMoH+j7+0bmFtlqTXDg=; b=u4NSPBHZw0dVXa95NqO1146Mkq546R/OVtDlx/wYwqFqVkT5Vq4fhTlnqnTNiU/+0J kgIO4mmwr02qqoZS8r1+lpx/ehrszMu4OjUVLiQbYg1CgHafJKxKd0R7Brsi4UwY4jEq bv/lURsx07dOuzZb4TbQFWkz/uHqPp+wtDQknQ0p8iMn9qE8sIZZVizNEArHZEftfAIh JWpiMh2h5tnHQ3+zz4ljj86w9ylCjVpKaZ/WVjAR1OCo9hCsJFr85o3JabXOV9eU5Urw HZYSstHyJQpBcaSZAl5AIBxKaO/SdoluA7ykBq2U5BAQdOh1l57Tm0noKzNKKsfgQvN/ NuLA== X-Gm-Message-State: AOAM530WQbBZxrbRmTrD2MMwYbYXYbexuskbUQrvD+yGSrYc53SU6Xy5 I3We/1Z1DT40dvP2XHUv+NEAo2pu8eC6sV0E0Dk= X-Google-Smtp-Source: ABdhPJzBqz+RvJa+ylPtIyE84PMVjv6Hl9kOswwALZOjDZvspP7VpDYFaoY34lfw3mE+jvxNQatFhWwTYrhiZG3XaUM= X-Received: by 2002:a67:e244:: with SMTP id w4mr20519897vse.51.1641582933291; Fri, 07 Jan 2022 11:15:33 -0800 (PST) MIME-Version: 1.0 From: David Edelsohn Date: Fri, 7 Jan 2022 14:15:22 -0500 Message-ID: Subject: Re: [PATCH] rs6000: Add Power10 optimization for _mm_blendv* To: "Paul A. Clarke" , Segher Boessenkool Cc: GCC Patches Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Jan 2022 19:15:34 -0000 > Power10 ISA added `xxblendv*` instructions which are realized in the > `vec_blendv` instrinsic. > > Use `vec_blendv` for `_mm_blendv_epi8`, `_mm_blendv_ps`, and > `_mm_blendv_pd` compatibility intrinsics, when `_ARCH_PWR10`. > > Also, copy a test from i386 for testing `_mm_blendv_ps`. > This should have come with commit ed04cf6d73e233c74c4e55c27f1cbd89ae4710e8, > but was inadvertently omitted. > > 2021-10-20 Paul A. Clarke > > gcc > * config/rs6000/smmintrin.h (_mm_blendv_epi8): Use vec_blendv > when _ARCH_PWR10. > (_mm_blendv_ps): Likewise. > (_mm_blendv_pd): Likewise. > > gcc/testsuite > * gcc.target/powerpc/sse4_1-blendvps.c: Copy from gcc.target/i386, > adjust dg directives to suit. > --- > Tested on Power10 powerpc64le-linux (compiled with and without > `-mcpu=power10`). > > OK for trunk? This is okay modulo > + return (__m128i) vec_blendv ((__v16qu) __A, (__v16qu) __B, (__v16qu) __mask); Should the above be __v16qi like x86? Thanks, David