[{"id":3685042,"web_url":"http://patchwork.ozlabs.org/comment/3685042/","msgid":"<CAFULd4bFpzKg08qZqWU_XbPxfUkLfu7AGPwWiBZcxfR6c_pUaQ@mail.gmail.com>","list_archive_url":null,"date":"2026-05-01T07:32:22","subject":"Re: [PATCH] x86: Correct last_4x_vec_label in ix86_expand_movmem","submitter":{"id":808,"url":"http://patchwork.ozlabs.org/api/people/808/","name":"Uros Bizjak","email":"ubizjak@gmail.com"},"content":"On Fri, May 1, 2026 at 4:34 AM H.J. Lu <hjl.tools@gmail.com> wrote:\n>\n> commit b41f96465190751561f6909e858604ceab00595b\n> Author: H.J. Lu <hjl.tools@gmail.com>\n>\n>     x86-64: Inline memmove with overlapping unaligned loads and stores\n>\n> has\n>\n>       rtx_code_label *last_4x_vec_label = nullptr;\n>       if (min_size == 0 || min_size < 4 * move_max)\n>         last_4x_vec_label = gen_label_rtx ();\n>\n>       /* Jump to LAST_4X_VEC_LABEL if size < 4 * MOVE_MAX.  */\n>       if (last_4x_vec_label)\n>         emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LTU,\n>                                  nullptr, count_mode, 1,\n>                                  last_4x_vec_label);\n>\n> ...\n>\n>       if (last_4x_vec_label)\n>         {\n>           /* Size > 2 * MOVE_MAX and size <= 4 * MOVE_MAX.  */\n>           emit_label (last_4x_vec_label);\n>\n> The last_4x_vec_label block covers min_size <= 4 * MOVE_MAX, not\n> min_size < 4 * MOVE_MAX.  When MOVE_MAX == 16 bytes and min_size == 64,\n> the last_4x_vec_label isn't generated.  Change min_size < 4 * move_max\n> to min_size <= 4 * move_max to correct the last_4x_vec_label condition.\n>\n> gcc/\n>\n> PR target/125117\n> * config/i386/i386-expand.cc (ix86_expand_movmem): Generate\n> last_4x_vec_label when min_size <= 4 * MOVE_MAX.\n>\n> gcc/testsuite/\n>\n> PR target/125117\n> * gcc.dg/pr125117.c: New test.\n> * gfortran.dg/pr125117.f90: Likewise.\n\nOK, also for backport.\n\nThanks,\nUros.","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=cd0yjmC5;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=38.145.34.32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=cd0yjmC5","sourceware.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","sourceware.org; spf=pass smtp.mailfrom=gmail.com","server2.sourceware.org;\n arc=pass smtp.remote-ip=209.85.167.48"],"Received":["from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g6N751zB6z1xqf\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 01 May 2026 17:33:05 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 3412943B5504\n\tfor <incoming@patchwork.ozlabs.org>; Fri,  1 May 2026 07:33:03 +0000 (GMT)","from mail-lf1-f48.google.com (mail-lf1-f48.google.com\n [209.85.167.48])\n by sourceware.org (Postfix) with ESMTPS id 4226C43B5504\n for <gcc-patches@gcc.gnu.org>; Fri,  1 May 2026 07:32:36 +0000 (GMT)","by mail-lf1-f48.google.com with SMTP id\n 2adb3069b0e04-5a746f9c092so1968233e87.1\n for <gcc-patches@gcc.gnu.org>; Fri, 01 May 2026 00:32:36 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 3412943B5504","OpenDKIM Filter v2.11.0 sourceware.org 4226C43B5504"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 4226C43B5504","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 4226C43B5504","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777620756; cv=pass;\n b=x04hUHCaIbq5dUfKP9XJvq8yD2XdUCHB4wJh5dDHoui1kcVqxzfgBCl5k8wpBLcniW2WBIPyfyEiLjxSV1Vwy++z4qRtDvFmZcVuwGhqHK8buTs+zyF0EduDdRzryviD3IO2zCot77C9ExVBPCjip2eCkYL80qTryo8Af/DPAYo=","i=1; a=rsa-sha256; t=1777620755; cv=none;\n d=google.com; s=arc-20240605;\n b=AUg0D3Llvx9Alzay1NG1rCF5EU6xCW3PFAzBxkdifrBtHt3AvnOgsDnV5upD+dKW+Z\n v/dBdBDBv3TcxoKUleCddkoh3Tf6hVUQip0PgU24k6cvFIAWFSa64bWp46j9qYVdfYSQ\n DHceBLhAMywrrEjJuadKAliFvB/3FbFvyg10vka2zpe4lSXQKzQDCipe97zJpNYa14Zx\n uOQSSGn22CqA/v1xT9lfvgS6+HgVA4IjsUgWwcdZzzPRBC1WkymGov2CqEWIi2nRg6sz\n DvXHBYWTtwwWnc/vwxt/+v57KKJrl3ZgddPMLta7xyQcfK0PFGLavtBjFJgZ0aiFVIKy\n NTEQ=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777620756; c=relaxed/simple;\n bh=Clf08X+mbVlsL+ZSjQvl+DVVR9ATIlgcy1qgL8tHLfA=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=WLdt1L3PgUTYzWt5fERMGNXyJRq2IaruwFy1hGbGETeTKKe2nSibNf6o144A3TktNhOvhr1swIP4wawTktz6I1onTJa4GJKGve0LZCAaEQuhi52Tznxi7ZRxEgSMqTaZFeAQKlw9GQVf+UZp8N3I/1sL9YVu0Z5q3hX5qsdeA2U=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:dkim-signature;\n bh=cd7meiI9RTLGY2zB1Em1FrOvJBQkv6COtDkFBqhvYqU=;\n fh=9U/ZvTDAy9ZO+ZJVhrwl5ljCvQbV706HLnZjeDLktPg=;\n b=QplTWj5fMDQMW9Fqu6cfR/4k9jRucMGaiMtYhKJzILiIWurJYA/1M0lrGWj5rwmb3A\n IUM26TaWQMahZdEeK1E5ZxYUfT41MADQzFX34PHzPEEeVQLW/iN88L4aJhtLtZh818tb\n kZk33eHg8T6EKcT0aGK7TE77mipi6fyiktck3djl3ascicM7sPy1kZwEY6imInDvSbL0\n 4z8MerqyHPg9Wjshh8wMAKzJvgSoHTVXudUG4GT7vI0Me3lvGXo7YlWgaVT59LWgA8rH\n fi1W7FF4r31BmnPwWOC4lNqBApr2t6Cd0X6fr4/d4YL5i7SuGJiSO4kthDVeXVNwpkKz\n 1u7Q==; darn=gcc.gnu.org"],"ARC-Authentication-Results":["i=2; server2.sourceware.org","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777620755; x=1778225555; darn=gcc.gnu.org;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:from:to:cc:subject:date\n :message-id:reply-to;\n bh=cd7meiI9RTLGY2zB1Em1FrOvJBQkv6COtDkFBqhvYqU=;\n b=cd0yjmC5U11uJUhiWz9JOCgZURLs+6sSVLYsy5p9DvrOhHMSS7J6fh8zF5kjUEZNhA\n S7rR+Msch2B/EBZb0unUXf6HZi6tYOur04OVbUcpPd14YO1TCfTB0mmuW7pI/2zTRa62\n /baY0zXbLIT7VrVh5x5alr/nAirNLS1QOF6CYagA1HB+jGkJgInWGhD48vu2zlICpL7D\n 3mdpby8tSRE6em5hADzW17W1R3xd/3R4eU3LM66iKaU15b6vSsYhJOy2BkBiJJqLKrd5\n gcKtOZUYG0qt7pSBAczoOPMalNYwVTO5tx/y8dlobqqIlsdg9LtwdRlZ/u9cHFFQoB4W\n QrcQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777620755; x=1778225555;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=cd7meiI9RTLGY2zB1Em1FrOvJBQkv6COtDkFBqhvYqU=;\n b=qakYy295Tkrq9+etGi4yTZz/BBSLmkNtRV57awp2oHXm/vsS3TOkRN8zA5dKXJ5MWj\n /xRLHdpdx8BzmFUohFmI6R3eTNXnp1ckJTPFrQcWKlQeen6i5G6v9Kjto/OYMguRnu1L\n TBaFTA4yz9zKYL58KSMu3f9/qWIwWVfBV6PNJ+2sutKXvmhsva9mIDneXx9MvpN9wXur\n EFqUxc+x2LxzWhdFgXlCl/HkFidmnS2TwAys2t3h7dM1mJd086EXlSCUOBNj/IYBDHW0\n nBwDxgBbrilptvXcAFXz5Ag3zoCCTF2JbI2jFxV8vvaWaaRl68u158Oit5DJe/3saY/J\n IvMQ==","X-Gm-Message-State":"AOJu0YxILtcI3ytRsHF2h5rq3G9EKc8XhtMa8UeaU7o6faXJ4zo3AqJg\n +G4OI3/IQ2E3c+KY3oF9F+fUIN3duaxSXpTCIV1zQXQs43vj0DUNDQ4r7u04tDQfYpVqC6Dijpm\n kz7ZX/sGlEKbfWbW6erx5KGe8RrPSxA9a8A==","X-Gm-Gg":"AeBDieuYAKDFJvnnjQOlbcmIlyIN0LWbHEbGv1JuoIDLAcgYFtB2LuFHAr1iG59YkUZ\n TMVoMS6j//dyh0oRD+0AWNFxuIrq49hDKC+XqYoAdIahObv61YBIV44NJu/znWoStFbhnvuty4i\n KC4BpQ5TkAm3mxLNdrLbSBnijwvYCc2yImG/85CK4FpI/L8URbvdoTC4/nXGNw8vpYG0fAed03/\n 5/K36Qw3KhYjme0aSEi5iuGTk/7kbnMqDANfWuRT6wYl/WgkGZpr223UOfRNpR9VDQWEzO/5/1/\n 1FTZmudIFyGipR2MekHy0dbSSoH5GCeo9vewhrwzJRESin0bVvFcIlCGPV388oSRyN0zau0RNW4\n zNk7MglW6gDIzpkwsdiHFGAL4sHde9nXcOXhXmo8dmd4=","X-Received":"by 2002:a05:6512:1594:b0:5a2:b57d:950d with SMTP id\n 2adb3069b0e04-5a85271c8d2mr1808686e87.5.1777620754579; Fri, 01 May 2026\n 00:32:34 -0700 (PDT)","MIME-Version":"1.0","References":"\n <CAMe9rOqLjhvhqVfwZZUZrUhjVs+fFdvEUGFoY5aFCsQ=9aJ45Q@mail.gmail.com>","In-Reply-To":"\n <CAMe9rOqLjhvhqVfwZZUZrUhjVs+fFdvEUGFoY5aFCsQ=9aJ45Q@mail.gmail.com>","From":"Uros Bizjak <ubizjak@gmail.com>","Date":"Fri, 1 May 2026 09:32:22 +0200","X-Gm-Features":"AVHnY4JDfYYtNOmezo471xJBpXg9FuEejtclmmXg6qSrDkf7v02y8-h3MWkS0gQ","Message-ID":"\n <CAFULd4bFpzKg08qZqWU_XbPxfUkLfu7AGPwWiBZcxfR6c_pUaQ@mail.gmail.com>","Subject":"Re: [PATCH] x86: Correct last_4x_vec_label in ix86_expand_movmem","To":"\"H.J. Lu\" <hjl.tools@gmail.com>","Cc":"GCC Patches <gcc-patches@gcc.gnu.org>, Hongtao Liu <hongtao.liu@intel.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}},{"id":3685049,"web_url":"http://patchwork.ozlabs.org/comment/3685049/","msgid":"<CAMe9rOpKEYf1BhqzYffVm4AMteytRjQEBtYMo68V5BR8sJPZaw@mail.gmail.com>","list_archive_url":null,"date":"2026-05-01T07:52:50","subject":"Re: [PATCH] x86: Correct last_4x_vec_label in ix86_expand_movmem","submitter":{"id":4387,"url":"http://patchwork.ozlabs.org/api/people/4387/","name":"H.J. Lu","email":"hjl.tools@gmail.com"},"content":"On Fri, May 1, 2026 at 3:32 PM Uros Bizjak <ubizjak@gmail.com> wrote:\n>\n> On Fri, May 1, 2026 at 4:34 AM H.J. Lu <hjl.tools@gmail.com> wrote:\n> >\n> > commit b41f96465190751561f6909e858604ceab00595b\n> > Author: H.J. Lu <hjl.tools@gmail.com>\n> >\n> >     x86-64: Inline memmove with overlapping unaligned loads and stores\n> >\n> > has\n> >\n> >       rtx_code_label *last_4x_vec_label = nullptr;\n> >       if (min_size == 0 || min_size < 4 * move_max)\n> >         last_4x_vec_label = gen_label_rtx ();\n> >\n> >       /* Jump to LAST_4X_VEC_LABEL if size < 4 * MOVE_MAX.  */\n> >       if (last_4x_vec_label)\n> >         emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LTU,\n> >                                  nullptr, count_mode, 1,\n> >                                  last_4x_vec_label);\n> >\n> > ...\n> >\n> >       if (last_4x_vec_label)\n> >         {\n> >           /* Size > 2 * MOVE_MAX and size <= 4 * MOVE_MAX.  */\n> >           emit_label (last_4x_vec_label);\n> >\n> > The last_4x_vec_label block covers min_size <= 4 * MOVE_MAX, not\n> > min_size < 4 * MOVE_MAX.  When MOVE_MAX == 16 bytes and min_size == 64,\n> > the last_4x_vec_label isn't generated.  Change min_size < 4 * move_max\n> > to min_size <= 4 * move_max to correct the last_4x_vec_label condition.\n> >\n> > gcc/\n> >\n> > PR target/125117\n> > * config/i386/i386-expand.cc (ix86_expand_movmem): Generate\n> > last_4x_vec_label when min_size <= 4 * MOVE_MAX.\n> >\n> > gcc/testsuite/\n> >\n> > PR target/125117\n> > * gcc.dg/pr125117.c: New test.\n> > * gfortran.dg/pr125117.f90: Likewise.\n>\n> OK, also for backport.\n>\n> Thanks,\n> Uros.\n\nI noticed\n\nFAIL: gcc.target/i386/builtin-memmove-10.c check-function-bodies gcc_memmove\n\nwhich needs adjustment for size == 64 case\n\nMy patch also missed\n\n@@ -10585,12 +10585,12 @@ ix86_expand_movmem (rtx operands[])\n             more_8x_vec_label);\n\n       rtx_code_label *last_4x_vec_label = nullptr;\n-      if (min_size == 0 || min_size < 4 * move_max)\n+      if (min_size == 0 || min_size <= 4 * move_max)\n   last_4x_vec_label = gen_label_rtx ();\n\n-      /* Jump to LAST_4X_VEC_LABEL if size < 4 * MOVE_MAX.  */\n+      /* Jump to LAST_4X_VEC_LABEL if size <= 4 * MOVE_MAX.  */\n       if (last_4x_vec_label)\n-  emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LTU,\n+  emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LEU,\n             nullptr, count_mode, 1,\n             last_4x_vec_label);\n\nIt is < vs <=.  When RDX == 64,\n\n       cmpq    $64, %rdx\n        jb      .L6  <<< LTU\n        jbe     .L6  <<< LEU\n\njb branches to\n\n        movdqu  (%rsi), %xmm7\n        movdqu  16(%rsi), %xmm6\n        movdqu  32(%rsi), %xmm5\n        movdqu  48(%rsi), %xmm4\n        movdqu  -16(%rsi,%rdx), %xmm3\n        movdqu  -32(%rsi,%rdx), %xmm2\n        movdqu  -48(%rsi,%rdx), %xmm1\n        movdqu  -64(%rsi,%rdx), %xmm0\n        movups  %xmm7, (%rdi)\n        movups  %xmm6, 16(%rdi)\n        movups  %xmm5, 32(%rdi)\n        movups  %xmm4, 48(%rdi)\n        movups  %xmm3, -16(%rdi,%rdx)\n        movups  %xmm2, -32(%rdi,%rdx)\n        movups  %xmm1, -48(%rdi,%rdx)\n        movups  %xmm0, -64(%rdi,%rdx)\n        ret\n\nIt runs correctly, but is less efficient.  jbe branches to\n\n.L6:\n        movdqu  (%rsi), %xmm3\n        movdqu  16(%rsi), %xmm2\n        movdqu  -16(%rsi,%rdx), %xmm1\n        movdqu  -32(%rsi,%rdx), %xmm0\n        movups  %xmm3, (%rdi)\n        movups  %xmm2, 16(%rdi)\n        movups  %xmm1, -16(%rdi,%rdx)\n        movups  %xmm0, -32(%rdi,%rdx)\n        ret\n\nIt is shorter.  I am testing the enclosed v2 patch.  I will check it\nin after testing.","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=S+qAseSk;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=S+qAseSk","sourceware.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","sourceware.org; spf=pass smtp.mailfrom=gmail.com","server2.sourceware.org;\n arc=pass smtp.remote-ip=209.85.215.169"],"Received":["from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g6NbH5HhYz1yHZ\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 01 May 2026 17:54:00 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 3935F4374229\n\tfor <incoming@patchwork.ozlabs.org>; Fri,  1 May 2026 07:53:58 +0000 (GMT)","from mail-pg1-f169.google.com (mail-pg1-f169.google.com\n [209.85.215.169])\n by sourceware.org (Postfix) with ESMTPS id 05E9643B5524\n for <gcc-patches@gcc.gnu.org>; Fri,  1 May 2026 07:53:29 +0000 (GMT)","by mail-pg1-f169.google.com with SMTP id\n 41be03b00d2f7-c7961d7bc09so710135a12.1\n for <gcc-patches@gcc.gnu.org>; Fri, 01 May 2026 00:53:28 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 3935F4374229","OpenDKIM Filter v2.11.0 sourceware.org 05E9643B5524"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 05E9643B5524","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 05E9643B5524","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777622009; cv=pass;\n b=BUheXprKYC7WK1u2EsFSXvIE+8gZr4AKEc5PhXkz5Ab80FkOhgMIMq40E0wAjExrZb9w25K2jR/HGeYiL8ByPsP8sojgvowBLGGNNRYZSdAQy3UWvxWotM1fQ6Yh8iurQ3WbiZmWtzffTxEL44nXwbMdl1p0CGqsp7w5gX3O/+o=","i=1; a=rsa-sha256; t=1777622007; cv=none;\n d=google.com; s=arc-20240605;\n b=c7LwwpQMSh/GJcKIa2EAHCaZ7tvRYEHgqapylBX6VaArLkvghEwXyb9iJsM+OQoEI/\n OeF1lOLNlByFC1EnXH/9B4dx1+tXwHC/vlTwbZ8+IWYmVp7JN3sZxUCrkKo+GfMIitam\n CrbvMR1Yc20+PSMx0NE9CJce5qmkwRn5NZQSjJ/M0VesqBMtRGdAqGsVt0MolC9c4IMd\n /U3xT5EZVKdnmWvzospo+59rW8WJdywgECb4xyhTip55Y8V7fDm0uAWb37b3ZqgpjkGw\n Hg6VB/XlQToF7ixCjHgomwGB8RvJ6M0CDG99/hHCfWLzbmnL6vBqGfhYjdQ9G/089OzG\n HxoA=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777622009; c=relaxed/simple;\n bh=D57P6gdrXsEBloCwLDUFMEqDzNUPrwFd30WEvBAqfTA=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=UUsA0WShqjGXfWilWKzXrScmb5gm8SDUDekgAWNlggJZ0z9y7DX5f6gyM1femWxKY9MWQkNSy/SrKYJm475yfUX74CVs9q2+NvUC2XpNCzwIzQs2yItcl//ZMpb2MHXMFGEr0PSatEeiAq9PXLDwAXMQBDIc3Wzf3PDj+XgPsgI=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:dkim-signature;\n bh=cGrjsZRQSZ2DtldBwXt7C3qRN7jB4zU/usr7byBCosQ=;\n fh=2otrt9BqMDhOObLajOMOkcRCoVIWbqZkzQLV1IUvjBs=;\n b=H1RsTtF4p6HnjzcIWDYdE2yQ2auk5mxsLFuP/IZjRUWk0fTT4NUPTnCdTIIrH3laaK\n maXdicu+O1xsNdfOMY2HZWzfbY0EM3XsF4SSuiNJM7YvybRRH3/xYoudeVBvBpDXn6Zj\n DMO4BVIdQ/XRJ++QTTUdgM3EWhdCabiBMKvqpjV2QXWiSX982KaMsBhGkf9R7AVx9773\n sXArBQKT1BI8r4DTXCab+5Zz9ZbSetgVB/3O0l6aayyz/aT1d+TWfxRyEnZzjrtNasDy\n eoSMcqOM4dsQ/P57Y2AR+e4V7vNems6moDDDJxu63cfJ2mwYZYvSqRybPGOGHZYgziJv\n mxjA==; darn=gcc.gnu.org"],"ARC-Authentication-Results":["i=2; server2.sourceware.org","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777622007; x=1778226807; darn=gcc.gnu.org;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:from:to:cc:subject:date:message-id:reply-to;\n bh=cGrjsZRQSZ2DtldBwXt7C3qRN7jB4zU/usr7byBCosQ=;\n b=S+qAseSk3g43Od3EKs6m/1C8qcvlOFJrkfSdqA11mvAKmafHCZ5/0mHjvUE4kicstw\n yFzfzetbrBLL+qqSujDbTpskqMzJn9dEk9arH8avKHnlfUgzt6SnyLmvJPKtz9NpDgdK\n q3wkf41zzkt+ks+XsVadEpnUmEBkVmRl/mzkJ4vbq6cf5AG9X7ttl2vXqAUSXsgVE8mP\n C55VFLm53LAJKoJhris8uUd8GSHD+DgWZrEsOdj0BmFxl5my4oa2nsR6hMbUot6kcUMp\n 4v3h4ji+QBT1jcq4KHHzmSPSwEfQdHvt1G3SDnocura8G9SBAmQFDeSrODiJTeVdKzqx\n jJbA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777622007; x=1778226807;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=cGrjsZRQSZ2DtldBwXt7C3qRN7jB4zU/usr7byBCosQ=;\n b=P4SJPXEi9IKPX2FOABaRZ4UrtUaSGC5R6aYZ4XIkm8V4yrcqVLVaOIOXMKZbw/Ygp4\n Rtbg0f5FuiXHUbL6omzyrJ+ptiy3BUPR+C0nrLvxG6lxZ+9OKXSvR+xY3H5aH4Nc6fDA\n 0/yQrx2qPDP5QzHBl8nBgk+rnlDC2S5cLnvzVE9NSFsEBgDY1XZqozeZ54XDQUFWEFvl\n fOm+EY4o9UyS84A186GUBTWE+8+LLjDrek4ganyxI4VPpHDwZ5Zn7byZzb2vDxvWOiqU\n 6KYrziSRRuw6ggckpsfNogUh8AeKy61R5R+bxn5Et9wfT7VkVtvwS1M9paS2eqi1xBOp\n 7qhQ==","X-Gm-Message-State":"AOJu0YzHKpaN23LDORfXXG1kY0q3bVdcVmE+xn0j5vOf5bY1UCfrjV/d\n gagCDEOSvgMf/tM5vmT/hSX/3FNorB7IcuEmxhS6MQRquI2POAmtxTwINrxiAmHyQjbiFP1yeFc\n zPmvMGD660tKKFSElJ6Yk8Za1wZKIISE=","X-Gm-Gg":"AeBDietgbg447/2nm4U6nWK1lRI7buUVRRekRkvvIdjMhFLeVfzGOOB2+sya26CYGxC\n mqAJDHP756jwf2kinHD8QryqWl6QVRFPpsZKlQyZrLYFNWAmyOpzoyJtyvfED0QMjox8fNjfdt4\n e9pK7JFGlYmfq8pIWQrIx91FNxTRqPaxvic4wG91mAh8SNuc30Xayse3u+6Djzo+FZAlLMTmqyO\n wxOoCKRZ8w/mQBngH0Sql9fToYmb3ooOSx2C+pktgyOUSE5Ji/4eEkMcIlrjUY66exhBGauyRYD\n EjBytcoG/80MEMBxQGw=","X-Received":"by 2002:a05:6a20:5493:b0:398:7c6b:8615 with SMTP id\n adf61e73a8af0-3a3cf57529amr6717507637.6.1777622007284; Fri, 01 May 2026\n 00:53:27 -0700 (PDT)","MIME-Version":"1.0","References":"\n <CAMe9rOqLjhvhqVfwZZUZrUhjVs+fFdvEUGFoY5aFCsQ=9aJ45Q@mail.gmail.com>\n <CAFULd4bFpzKg08qZqWU_XbPxfUkLfu7AGPwWiBZcxfR6c_pUaQ@mail.gmail.com>","In-Reply-To":"\n <CAFULd4bFpzKg08qZqWU_XbPxfUkLfu7AGPwWiBZcxfR6c_pUaQ@mail.gmail.com>","From":"\"H.J. Lu\" <hjl.tools@gmail.com>","Date":"Fri, 1 May 2026 15:52:50 +0800","X-Gm-Features":"AVHnY4LRGY0KVdsfr4fioyDOAPnVjFQztLCtKpfINtZIOrFBdf_7V0FpjrmHZr0","Message-ID":"\n <CAMe9rOpKEYf1BhqzYffVm4AMteytRjQEBtYMo68V5BR8sJPZaw@mail.gmail.com>","Subject":"Re: [PATCH] x86: Correct last_4x_vec_label in ix86_expand_movmem","To":"Uros Bizjak <ubizjak@gmail.com>","Cc":"GCC Patches <gcc-patches@gcc.gnu.org>, Hongtao Liu <hongtao.liu@intel.com>","Content-Type":"multipart/mixed; boundary=\"0000000000004a1dd30650bce0eb\"","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}},{"id":3685094,"web_url":"http://patchwork.ozlabs.org/comment/3685094/","msgid":"<CAMe9rOpruKSYpw-Pt+t6V6ydXW2=soxpgk3-tRmvdtF=bhJ1cw@mail.gmail.com>","list_archive_url":null,"date":"2026-05-01T10:23:12","subject":"Re: [PATCH] x86: Correct last_4x_vec_label in ix86_expand_movmem","submitter":{"id":4387,"url":"http://patchwork.ozlabs.org/api/people/4387/","name":"H.J. Lu","email":"hjl.tools@gmail.com"},"content":"On Fri, May 1, 2026 at 3:52 PM H.J. Lu <hjl.tools@gmail.com> wrote:\n>\n> On Fri, May 1, 2026 at 3:32 PM Uros Bizjak <ubizjak@gmail.com> wrote:\n> >\n> > On Fri, May 1, 2026 at 4:34 AM H.J. Lu <hjl.tools@gmail.com> wrote:\n> > >\n> > > commit b41f96465190751561f6909e858604ceab00595b\n> > > Author: H.J. Lu <hjl.tools@gmail.com>\n> > >\n> > >     x86-64: Inline memmove with overlapping unaligned loads and stores\n> > >\n> > > has\n> > >\n> > >       rtx_code_label *last_4x_vec_label = nullptr;\n> > >       if (min_size == 0 || min_size < 4 * move_max)\n> > >         last_4x_vec_label = gen_label_rtx ();\n> > >\n> > >       /* Jump to LAST_4X_VEC_LABEL if size < 4 * MOVE_MAX.  */\n> > >       if (last_4x_vec_label)\n> > >         emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LTU,\n> > >                                  nullptr, count_mode, 1,\n> > >                                  last_4x_vec_label);\n> > >\n> > > ...\n> > >\n> > >       if (last_4x_vec_label)\n> > >         {\n> > >           /* Size > 2 * MOVE_MAX and size <= 4 * MOVE_MAX.  */\n> > >           emit_label (last_4x_vec_label);\n> > >\n> > > The last_4x_vec_label block covers min_size <= 4 * MOVE_MAX, not\n> > > min_size < 4 * MOVE_MAX.  When MOVE_MAX == 16 bytes and min_size == 64,\n> > > the last_4x_vec_label isn't generated.  Change min_size < 4 * move_max\n> > > to min_size <= 4 * move_max to correct the last_4x_vec_label condition.\n> > >\n> > > gcc/\n> > >\n> > > PR target/125117\n> > > * config/i386/i386-expand.cc (ix86_expand_movmem): Generate\n> > > last_4x_vec_label when min_size <= 4 * MOVE_MAX.\n> > >\n> > > gcc/testsuite/\n> > >\n> > > PR target/125117\n> > > * gcc.dg/pr125117.c: New test.\n> > > * gfortran.dg/pr125117.f90: Likewise.\n> >\n> > OK, also for backport.\n> >\n> > Thanks,\n> > Uros.\n>\n> I noticed\n>\n> FAIL: gcc.target/i386/builtin-memmove-10.c check-function-bodies gcc_memmove\n>\n> which needs adjustment for size == 64 case\n>\n> My patch also missed\n>\n> @@ -10585,12 +10585,12 @@ ix86_expand_movmem (rtx operands[])\n>              more_8x_vec_label);\n>\n>        rtx_code_label *last_4x_vec_label = nullptr;\n> -      if (min_size == 0 || min_size < 4 * move_max)\n> +      if (min_size == 0 || min_size <= 4 * move_max)\n>    last_4x_vec_label = gen_label_rtx ();\n>\n> -      /* Jump to LAST_4X_VEC_LABEL if size < 4 * MOVE_MAX.  */\n> +      /* Jump to LAST_4X_VEC_LABEL if size <= 4 * MOVE_MAX.  */\n>        if (last_4x_vec_label)\n> -  emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LTU,\n> +  emit_cmp_and_jump_insns (count_exp, GEN_INT (4 * move_max), LEU,\n>              nullptr, count_mode, 1,\n>              last_4x_vec_label);\n>\n> It is < vs <=.  When RDX == 64,\n>\n>        cmpq    $64, %rdx\n>         jb      .L6  <<< LTU\n>         jbe     .L6  <<< LEU\n>\n> jb branches to\n>\n>         movdqu  (%rsi), %xmm7\n>         movdqu  16(%rsi), %xmm6\n>         movdqu  32(%rsi), %xmm5\n>         movdqu  48(%rsi), %xmm4\n>         movdqu  -16(%rsi,%rdx), %xmm3\n>         movdqu  -32(%rsi,%rdx), %xmm2\n>         movdqu  -48(%rsi,%rdx), %xmm1\n>         movdqu  -64(%rsi,%rdx), %xmm0\n>         movups  %xmm7, (%rdi)\n>         movups  %xmm6, 16(%rdi)\n>         movups  %xmm5, 32(%rdi)\n>         movups  %xmm4, 48(%rdi)\n>         movups  %xmm3, -16(%rdi,%rdx)\n>         movups  %xmm2, -32(%rdi,%rdx)\n>         movups  %xmm1, -48(%rdi,%rdx)\n>         movups  %xmm0, -64(%rdi,%rdx)\n>         ret\n>\n> It runs correctly, but is less efficient.  jbe branches to\n>\n> .L6:\n>         movdqu  (%rsi), %xmm3\n>         movdqu  16(%rsi), %xmm2\n>         movdqu  -16(%rsi,%rdx), %xmm1\n>         movdqu  -32(%rsi,%rdx), %xmm0\n>         movups  %xmm3, (%rdi)\n>         movups  %xmm2, 16(%rdi)\n>         movups  %xmm1, -16(%rdi,%rdx)\n>         movups  %xmm0, -32(%rdi,%rdx)\n>         ret\n>\n> It is shorter.  I am testing the enclosed v2 patch.  I will check it\n> in after testing.\n>\n\nMore tests need adjustments.   Here is the v3 patch I am checking in.\nTested on Linux/x86-64.\n\n\n\n--\nH.J.","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=EwEjy03X;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=38.145.34.32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=EwEjy03X","sourceware.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","sourceware.org; spf=pass smtp.mailfrom=gmail.com","server2.sourceware.org;\n arc=pass smtp.remote-ip=209.85.210.175"],"Received":["from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g6Rwn4m7kz1yHZ\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 01 May 2026 20:24:23 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id C284A4BB3BE1\n\tfor <incoming@patchwork.ozlabs.org>; Fri,  1 May 2026 10:24:21 +0000 (GMT)","from mail-pf1-f175.google.com (mail-pf1-f175.google.com\n [209.85.210.175])\n by sourceware.org (Postfix) with ESMTPS id EFCEE4BA2E12\n for <gcc-patches@gcc.gnu.org>; Fri,  1 May 2026 10:23:52 +0000 (GMT)","by mail-pf1-f175.google.com with SMTP id\n d2e1a72fcca58-82f8cebc935so868279b3a.0\n for <gcc-patches@gcc.gnu.org>; Fri, 01 May 2026 03:23:52 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org C284A4BB3BE1","OpenDKIM Filter v2.11.0 sourceware.org EFCEE4BA2E12"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org EFCEE4BA2E12","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org EFCEE4BA2E12","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777631033; cv=pass;\n b=PjsIvTwQl+aMOv1QxGps7T8llZGY36yprLI3b+sW1BfEm/fN99WoDBBD5CV5hrtOw50Smimd6Nv3h6XXiCfZBwiOP4874Cim1bs/E9+FLnivhbFh3TExrThPd282k51b8Lj9V2vQLnO3TYCDyOjFlKkxJnG7q1yrRJp3JMW8B9Y=","i=1; a=rsa-sha256; t=1777631031; cv=none;\n d=google.com; s=arc-20240605;\n b=clossG/HD1riH+O9P2LFo+0AKcMyRQnoQ8ninfu1KJpumurRG8zd2PdnAeZkVdeVnO\n zs23kAaODCfysgXvLdlFbMTCFiysjR76RnGxFBQiWuAJnfVUR/sTOYaPdpIIbkdOwVDQ\n SQfO2QHyigb7I0pdSa3lZFRMLK4dLml1ju1jBr0ltCQ/U+4RARFYYqMr/Yp6uJFWUTGS\n ve4po5iKNEWpMryYEklUbd9HkGmjDVHxIsyzdb38kmq2gR+BahsMvXh9C9tKtvMvvAqF\n VCuju831yh9+DgZ/g4irubYqoxII2I3IfgYCqFNMsO/lmKMXV4bg1haYJdtv9JtNORf3\n n3Vg=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777631033; c=relaxed/simple;\n bh=oeP2u+BDa0SNk4Jj/hkJuTlBFj5GX1cUc289dctLGF0=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=dcDcnvQ+nl6SPMyHGNI/gdPR4jmgXEm8AP/LcZekuRFXbgs96fADP9WGY002aTvxcUWnI17DGbTCC9OtUPU232ojaLvOYdA9K77hdXtJxkpa2mhCieJpIJAtBGgCmcgmCsGm2+VK1VKf48YG4OVDPhnANWxcb0xd5z7f30g/UD0=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:dkim-signature;\n bh=8Tf/aniXv2b5vIKJVVA9TIaNZrITUip86GIrPDfvuDw=;\n fh=2otrt9BqMDhOObLajOMOkcRCoVIWbqZkzQLV1IUvjBs=;\n b=EpQbtWA5OfDoboud3giMAwVc4MUdHJhYM/5KWVnBUhIm5bRoYKTVaT7j4MKa5bPkG2\n grcoUYgrYRXc15qsmPmUrpcPu0H3+ROjrm8DBjj2PnCqnISNPw5LD+UFxU8zymp/2vck\n vUHpipQGxiydg+VVtNfx8V4DRsg9E1+kVcikZAL5wF0BizqSNIESfOiNboFjNQicwWfo\n eqR/0oN3VJURlMV4t5+zRPQCrQa0Q5IbJ9+i8X5yEOdlFc2DuCxDsScQWEIIjvnK8E3w\n hZr7KDlM5KAzq4FNCjtMPp74/WdZwhkqnGPCA6HlflHIb8OS891kb3N7iOQ4xaA6rjbZ\n mrtQ==; darn=gcc.gnu.org"],"ARC-Authentication-Results":["i=2; server2.sourceware.org","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777631031; x=1778235831; darn=gcc.gnu.org;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:from:to:cc:subject:date:message-id:reply-to;\n bh=8Tf/aniXv2b5vIKJVVA9TIaNZrITUip86GIrPDfvuDw=;\n b=EwEjy03XcfOIWj5zvWnhe4GwxjzcXyWQXcNeET9n9g+V7uB8247dbbS+OMfs7B1van\n GdHIJqeS67XIIzTnBxUJlVl29wMNWgunhR2GpYG6Faarcj/z5rupF6iruGyJegE14j4l\n hGxb+y4ge98wyLa5hPpDsE6gm1qC6leeKn1/EaWCTsVjDfl69HujrGGgR06jjo777Ki0\n En3c01sA65q3B1pXt6cHap8x9brxtcn5WnkPnuk56bpIai7IF8qjvD8NFxt8JoOnW/Ou\n j2Xl92XwbNKrMV2/9cQbWHl1kSBo5EHa4jpIGOzk1kjr6t41QDJ0kw4mpjDv/M/7QUCS\n h3+w==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777631031; x=1778235831;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=8Tf/aniXv2b5vIKJVVA9TIaNZrITUip86GIrPDfvuDw=;\n b=BhOOrzB9wB0Bza4QEWlnpGdQE3rI1UocnsQfAwohb3PDhvjTpXboIlQP2vgboAEOdK\n 56HPP5OMcZylrWApH2adrOG5yF0eARF0BWshivcL0ZOsvu9RgJtQgpshXjQYtKnS74EG\n cli18RydaL05FIC9Ho7B5D9EmxmZx4PgUJ5CQBiCje809yZKv4TzDMJTV41BOEVGG5wQ\n QPuMEN3gCjrCfR7vCGNkK934lNmg6M1+H1OFnhjbMdwJ2Ymt9dboT5t06q9MTgMsnN6l\n LjHZ8jf6DseIAU3Y5I49LB7LJv3UEPODtLufM2Y1gVBBJyI1qf5Ev4QuaMBXkClLPm6t\n yb3g==","X-Gm-Message-State":"AOJu0YwI975KtopBrLXrLQBF5Mt5fZYM32XRJCz/iOpow3wdGx9HW56p\n F9C9dJ/b96ySsucunCuJFMzkViEdUCk2/9vqxUTTzJTA3aLRedv/WK3n0s7cjcBkMHzUGIFdg0d\n Wu0ymUCpsXlY9xLkAnOaLFk5BuSzcm/0=","X-Gm-Gg":"AeBDiev+HFYLnhmt0077cErDKT5g/Pb5HQFYmZ7bCfPI/VbEAHiqUYXvND6HyVZN98f\n izhb6YdtyGzQSKCch/sFe73juIdldw32OKFeY8BQC79t26wWHLCFooHUYK0F3+9z+HmZumjFR63\n kxpF65gzEv7KPcy6qiTSXfXtTO37JhN+XdAOmHexi8SGWMmDTw/ah0QD0J5DUS2XfR86U5KN9Ar\n Ag/GCADBdeko6y45ngZuqin0DxciV4qKrYoJmWdSPSyqYjwfEG/IrVtoLmE7Lwb1+RIp6g0yF8E\n 4hYOZlWlF2FAAzORCL0=","X-Received":"by 2002:a05:6a00:b46:b0:82f:44dc:f85c with SMTP id\n d2e1a72fcca58-834fdcb651cmr7720627b3a.34.1777631031525; Fri, 01 May 2026\n 03:23:51 -0700 (PDT)","MIME-Version":"1.0","References":"\n <CAMe9rOqLjhvhqVfwZZUZrUhjVs+fFdvEUGFoY5aFCsQ=9aJ45Q@mail.gmail.com>\n <CAFULd4bFpzKg08qZqWU_XbPxfUkLfu7AGPwWiBZcxfR6c_pUaQ@mail.gmail.com>\n <CAMe9rOpKEYf1BhqzYffVm4AMteytRjQEBtYMo68V5BR8sJPZaw@mail.gmail.com>","In-Reply-To":"\n <CAMe9rOpKEYf1BhqzYffVm4AMteytRjQEBtYMo68V5BR8sJPZaw@mail.gmail.com>","From":"\"H.J. Lu\" <hjl.tools@gmail.com>","Date":"Fri, 1 May 2026 18:23:12 +0800","X-Gm-Features":"AVHnY4L6WjP2Sz3LtoJ1t6ev-ghDnAg0zZMuVJZLd4Dl61RHjji2gFlOgMvW8-I","Message-ID":"\n <CAMe9rOpruKSYpw-Pt+t6V6ydXW2=soxpgk3-tRmvdtF=bhJ1cw@mail.gmail.com>","Subject":"Re: [PATCH] x86: Correct last_4x_vec_label in ix86_expand_movmem","To":"Uros Bizjak <ubizjak@gmail.com>","Cc":"GCC Patches <gcc-patches@gcc.gnu.org>, Hongtao Liu <hongtao.liu@intel.com>","Content-Type":"multipart/mixed; boundary=\"0000000000002d20210650befab7\"","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}}]