[{"id":3685369,"web_url":"http://patchwork.ozlabs.org/comment/3685369/","msgid":"<CAFULd4b9mLOL4adK0BPagVP=0hny+fLdhWKfUOzS8QNX0+U2pg@mail.gmail.com>","list_archive_url":null,"date":"2026-05-03T11:58:58","subject":"Re: [x86 PATCH] Shorter load immediate constants with -Oz","submitter":{"id":808,"url":"http://patchwork.ozlabs.org/api/people/808/","name":"Uros Bizjak","email":"ubizjak@gmail.com"},"content":"On Sat, May 2, 2026 at 10:17 PM Roger Sayle <roger@nextmovesoftware.com> wrote:\n>\n>\n> This patch adds two peephole2 patterns to i386.md to decrease the size\n> of some inteer loads.  These replace \"movl $const, %eax\" (5 bytes)\n> with \"xorl %eax, %eax\" followed by either \"movb $const,%al\" or\n> \"movb $const,%ah\" (together 4 bytes), for suitable constants and\n> suitable genral registers, when the flags register is dead.\n>\n> Ideally modern Intel and AMD prcoessors can recognize these sequences\n> during instruction decode (avoiding any partial register stall in\n> the same way they avoid the false dependence for the xorl), and\n> internally generate a single uop, treating these bytes like an\n> alternate instruction encoding.\n>\n>\n> This patch has been tested on x86_64-pc-linux-gnu with make bootstrap\n> and make -k check, both with and without --target_board=unix{-m32}\n> with no new failures.  Ok for mainline?\n>\n>\n> 2026-05-02  Roger Sayle  <roger@nextmovesoftware.com>\n>\n> gcc/ChangeLog\n>         PR target/32803\n>         * config/i386/i386.md (peephole2): Don't transform xorl;movb into\n>         movzb with -Oz.\n>         (peephole2): Convert movl into xorl;movb (strict_low_part) with -Oz.\n>         (peephole2): Likewise, convert movl into xorl;movb [abcd]h with -Oz.\n>\n> gcc/testsuite/ChangeLog\n>         PR target/32803\n>         * gcc.target/i386/pr32803-2.c: New test case.\n>         * gcc.target/i386/pr32803-3.c: Likewise.\n\n+;; With -Oz, convert mov eax,200 (5 bytes) to xor eax,eax; mov al,200\n+;; (4 bytes) when the flags register is dead.\n+(define_peephole2\n+  [(set (match_operand:SWI48 0 \"general_reg_operand\")\n+ (match_operand:SWI48 1 \"const_int_operand\"))]\n+  \"optimize_insn_for_size_p () && optimize_size > 1\n+   && IN_RANGE (INTVAL (operands[1]), 128, 255)\n+   && peep2_regno_dead_p (0, FLAGS_REG)\"\n+  [(parallel [(set (match_dup 0) (const_int 0))\n+      (clobber (reg:CC FLAGS_REG))])\n+   (set (strict_low_part (match_dup 2)) (match_dup 3))]\n+{\n+  operands[2] = gen_lowpart (QImode, operands[0]);\n+  operands[3] = gen_int_mode (INTVAL (operands[1]), QImode);\n+})\n\nThis one will fail on 32-bit targets when trying to get QImode lowpart\nof %esi, %edi, %ebp (and %esp).\n\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=RJdnp93M;\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=RJdnp93M","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=2a00:1450:4864:20::22e"],"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 4g7jxq35Nfz1yJ0\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 03 May 2026 21:59:41 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 74CD44BB1C3A\n\tfor <incoming@patchwork.ozlabs.org>; Sun,  3 May 2026 11:59:39 +0000 (GMT)","from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com\n [IPv6:2a00:1450:4864:20::22e])\n by sourceware.org (Postfix) with ESMTPS id 05A734BB1C1C\n for <gcc-patches@gcc.gnu.org>; Sun,  3 May 2026 11:59:11 +0000 (GMT)","by mail-lj1-x22e.google.com with SMTP id\n 38308e7fff4ca-38e7d983f79so32301941fa.0\n for <gcc-patches@gcc.gnu.org>; Sun, 03 May 2026 04:59:10 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 74CD44BB1C3A","OpenDKIM Filter v2.11.0 sourceware.org 05A734BB1C1C"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 05A734BB1C1C","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 05A734BB1C1C","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777809551; cv=pass;\n b=uMYVf6vczdIURpnGj9sw4t8u3vuKr6Qp2Isu1gpXQGQWaN0Vs+Ko/TLPm9zDlqtBQu6sbY2tmhVQTefGppowjFnSR9l4O10YGum96OG/F8UUO+OzfyQaFJlvfpROLP+V0GXtB9MkIRYSLmhEMo73CcRcLeGO4cQaXJYVdbsHlek=","i=1; a=rsa-sha256; t=1777809549; cv=none;\n d=google.com; s=arc-20240605;\n b=RVvEQVS/MYtzNF2kRrid9Ww/oa0LdLMGqIFMyLwJG1IL8oF3z29JjNJeAnJwS7Dq7M\n Pc4gTPH/06j9fWhGAihSAHcU6ZDA9dOS3SShQ8/sNzewcO1dvPL1Q6Pn/v/mHeyOuPZt\n PxoRzYzY4tOq9CCWUARIKTRnGSZTExdoKUsN1ONKKxvlje2tAQ2NrV/SO1NDLA+bIH+A\n 0ogA/I5qVfqz5SB7GyHCdXj5Yh6yy1x8ahYyOcCRo38+ZDzpPvnxC2NyNpjQ40JGNXh1\n mdmGQ+8Mr+d7vULQdVI+UGXpgy3eJfStToiYJ9i3WIrQIQNtxVhK9hITF85l6fv0DfqH\n sMaw=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777809551; c=relaxed/simple;\n bh=rBjH5mIWdneVeVfG8S0D9YdX33LE2Qm/lamFv8CIajs=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=ueIO9yTCkA7KoA/OQoP1o5QpZsIqGs9LTBMPO7aVUeihn0cIXzZYOhci2XJcJdyxDQs9pX7iMy6KZSWGgRhKhFSBOoM9jkfDzV4g2/bq3uD2+/dcmS9fYSGVhglOXnHKpjfpA+04WsbWSbg9nvILz1key8ekOaqRtuKcim0+m4o=","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=A9QTNQ7lrA/We05oGCj9aaYBI0dG0RXLTXtZhkAYWoM=;\n fh=/7RR8AUi3DDjOzR9iEZmt+maAPa+w/siunHe56Ocduc=;\n b=DhyoAbMPyb9vcOeHPkXoSoj7OlEJdwHu3nykIxcLfErEDYzBKEl3orXlnUM1aadnCO\n nxJ4BIYZKUwfQt7jFCLDO10pnokXJl7sYL2gSRsNOdRDywIguP+2MARNwGGQxdPMzXQ7\n dOiu3SAc9x7j/1jvlKONpXvn+YnUxxzGwVy7W2FAO4u7z+LDrDcHjRdEb/gV3lrpxGT1\n f9Ty6a8Og+ofBKUeIkCPJ/YpU+sGCeE+rAT5l/Mt5zGxBaWw7yxKSjkD0E/i3qAP4TfB\n Riarjw3Uy0SXj6o2IKCqRgyasAkRPRUjxepQqgZSps8M/y54BR7PZwoV1Z5SyZVqPGf8\n OOgA==; 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=1777809549; x=1778414349; 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=A9QTNQ7lrA/We05oGCj9aaYBI0dG0RXLTXtZhkAYWoM=;\n b=RJdnp93MY4/Lk45YpeZMxC9sryQ0XRfZhVs6hzfcfBQR5E7p7AW/f5g4vXttKyypi0\n dzjsN5FDPn3MFTeVK2ClssRofH5D37qUt4sg8xjpPeL1Vk2jr/4P1QiAetKWC4baGMRT\n y4Sd+VhOYiePoYB3i2Jm4RAKrz2n2rFHaYzX18N5VhCLQNs73rzclrJBl9Fr4mkNlofX\n BRQImGt/QzvvWCumh0tdeW1P2hyqR7a1yfoY1ADikEFrhI0qpUQ/iJU4D6pdAMvquCCh\n 122cscHW9JJKXAg7vk9WKcM9kT2Yi8cPo74Euyl0d6DnAT4OfJT4r7NP/O8v/rTuVBvn\n kXdA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777809549; x=1778414349;\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=A9QTNQ7lrA/We05oGCj9aaYBI0dG0RXLTXtZhkAYWoM=;\n b=Jitn8CrbaOpWfT01pzLgczrWZ28mUCD0CdQdVYQFHl5gnm5uUqVRKWOdTTfDfgjY9p\n vbkZry5DxDIQTLf2/CMWmgXJAPtGeNh4LaVJW7gZlh/JnDaPnvED+yeYURUl4RUNhJOg\n rg5N13e0ybFwHNr93Yro+pOXlw1VZYaGYmZVSBd5oGF71KBP950SPADgj3izxOS5T6Zw\n /793jNksKNlUXIzQiCTNKglrAj4MbSOQ5Xyx4D8oCrSaFn5dL8gnJD3buoO/8BIMBApl\n LOt9mFrciDlLS7h/GVWRwttTCw4t5ru3KiMwcZti2PWGqQnI6RDbldAcsHMiLu+qycSL\n C+Gw==","X-Gm-Message-State":"AOJu0YxGb7R9/PuYdO92NUKUlS0fLq9StP8hu7JKCDocWKRncsIOfNN5\n CjIlZhyIZqbuPE8JuazeyZVbXKqJMovhwspdln5aaeZcN3wYp+Vgcd0vbzv0rvzjsYHk0yXRb+M\n fZWZqTQOue6/F9DAj3/S6ghjEnK7zFIo=","X-Gm-Gg":"AeBDietI3GR2LUDkp25tkvbuHeIQNgZx9/BnubqhkJvemU4uF/AJGtWvh4F0wm/k091\n cGfZh2qmt6b9sEZSBAzvwoTvK9X5vNFn7AXlM4EGL4otrP5KqOJLDEuX8RgYrEIslKnlW+0Obbm\n u7qLzM0ragUOW8rqEDZ1vHEz64iWrhG5FQvGMdSnnhOM+arQRmPg6/RAw1Ar6ooE7GLwhQ4ziGb\n 1E43A0RC9J8zp9nRCe9/fsPMEQ+kdNpsDujAwgCWIpxu5yoOucd9O7NWbyjZi0nReuUlyFW+wu8\n f+jjP6sXxl0g4ffDTpJ6xQ1eKvFXM8KBchWo2Yxkxe34SOUa+1MYVFozXrSIyUHZbFgUlY9p39v\n jLB1MfHrJ1MA0qKYN+xkD18qc5dIn78Q+FWxt41tCQaE=","X-Received":"by 2002:a2e:bccb:0:b0:38a:902:dcd with SMTP id\n 38308e7fff4ca-39378593a01mr20154621fa.20.1777809548767;\n Sun, 03 May 2026 04:59:08 -0700 (PDT)","MIME-Version":"1.0","References":"<013901dcda70$c51fa510$4f5eef30$@nextmovesoftware.com>","In-Reply-To":"<013901dcda70$c51fa510$4f5eef30$@nextmovesoftware.com>","From":"Uros Bizjak <ubizjak@gmail.com>","Date":"Sun, 3 May 2026 13:58:58 +0200","X-Gm-Features":"AVHnY4J9F2E3alzxNe3fKVVeOBYWiP_n8yhaIQgnio6a9I9G1G-uAYqOeLGpj1A","Message-ID":"\n <CAFULd4b9mLOL4adK0BPagVP=0hny+fLdhWKfUOzS8QNX0+U2pg@mail.gmail.com>","Subject":"Re: [x86 PATCH] Shorter load immediate constants with -Oz","To":"Roger Sayle <roger@nextmovesoftware.com>","Cc":"GCC Patches <gcc-patches@gcc.gnu.org>","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":3685432,"web_url":"http://patchwork.ozlabs.org/comment/3685432/","msgid":"<CAFULd4aOwQW0hH58rhCg-n8SKUAVTUa5oMKJYtPQAg0qy4mu0g@mail.gmail.com>","list_archive_url":null,"date":"2026-05-03T18:48:49","subject":"Re: [x86 PATCH] Shorter load immediate constants with -Oz","submitter":{"id":808,"url":"http://patchwork.ozlabs.org/api/people/808/","name":"Uros Bizjak","email":"ubizjak@gmail.com"},"content":"On Sat, May 2, 2026 at 10:17 PM Roger Sayle <roger@nextmovesoftware.com> wrote:\n>\n>\n> This patch adds two peephole2 patterns to i386.md to decrease the size\n> of some inteer loads.  These replace \"movl $const, %eax\" (5 bytes)\n> with \"xorl %eax, %eax\" followed by either \"movb $const,%al\" or\n> \"movb $const,%ah\" (together 4 bytes), for suitable constants and\n> suitable genral registers, when the flags register is dead.\n>\n> Ideally modern Intel and AMD prcoessors can recognize these sequences\n> during instruction decode (avoiding any partial register stall in\n> the same way they avoid the false dependence for the xorl), and\n> internally generate a single uop, treating these bytes like an\n> alternate instruction encoding.\n>\n>\n> This patch has been tested on x86_64-pc-linux-gnu with make bootstrap\n> and make -k check, both with and without --target_board=unix{-m32}\n> with no new failures.  Ok for mainline?\n>\n>\n> 2026-05-02  Roger Sayle  <roger@nextmovesoftware.com>\n>\n> gcc/ChangeLog\n>         PR target/32803\n>         * config/i386/i386.md (peephole2): Don't transform xorl;movb into\n>         movzb with -Oz.\n>         (peephole2): Convert movl into xorl;movb (strict_low_part) with -Oz.\n>         (peephole2): Likewise, convert movl into xorl;movb [abcd]h with -Oz.\n>\n> gcc/testsuite/ChangeLog\n>         PR target/32803\n>         * gcc.target/i386/pr32803-2.c: New test case.\n>         * gcc.target/i386/pr32803-3.c: Likewise.\n\n+;; With -Oz, convert mov eax,200 (5 bytes) to xor eax,eax; mov al,200\n+;; (4 bytes) when the flags register is dead.\n+(define_peephole2\n+  [(set (match_operand:SWI48 0 \"general_reg_operand\")\n\nPlease use any_QIreg_operand predicate here to avoid generating\ninvalid QI registers on 32-bit targets.\n\n+    (match_operand:SWI48 1 \"const_int_operand\"))]\n+  \"optimize_insn_for_size_p () && optimize_size > 1\n+   && IN_RANGE (INTVAL (operands[1]), 128, 255)\n+   && peep2_regno_dead_p (0, FLAGS_REG)\"\n+  [(parallel [(set (match_dup 0) (const_int 0))\n+          (clobber (reg:CC FLAGS_REG))])\n+   (set (strict_low_part (match_dup 2)) (match_dup 3))]\n+{\n+  operands[2] = gen_lowpart (QImode, operands[0]);\n+  operands[3] = gen_int_mode (INTVAL (operands[1]), QImode);\n+})\n+\n+;; With -Oz, convert mov eax,512 (5 bytes) to xor eax,eax; mov ah,2\n+;; (4 bytes) when the flags register is dead.\n+(define_peephole2\n+  [(set (match_operand:SWI48 0 \"general_reg_operand\")\n\nPlease use QIreg_operand predicate here instead of QI_REGNO_P\npredicate in insn constraint.\n\n+    (match_operand:SWI48 1 \"const_int_operand\"))]\n+  \"optimize_insn_for_size_p () && optimize_size > 1\n+   && (INTVAL (operands[1]) & ~0xff00) == 0\n+   && QI_REGNO_P (REGNO (operands[0]))\n+   && peep2_regno_dead_p (0, FLAGS_REG)\"\n+  [(parallel [(set (match_dup 0) (const_int 0))\n+          (clobber (reg:CC FLAGS_REG))])\n+   (set (zero_extract:SWI48 (match_dup 0) (const_int 8) (const_int 8))\n+        (match_dup 2))]\n+  \"operands[2] = gen_int_mode (INTVAL (operands[1]) >> 8, QImode);\")\n\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=jw4vMkIs;\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=jw4vMkIs","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=2a00:1450:4864:20::22e"],"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 4g7v2m60Lyz1xvV\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 04 May 2026 04:49:35 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 6E1004BB24F6\n\tfor <incoming@patchwork.ozlabs.org>; Sun,  3 May 2026 18:49:33 +0000 (GMT)","from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com\n [IPv6:2a00:1450:4864:20::22e])\n by sourceware.org (Postfix) with ESMTPS id E571F4BAE7C4\n for <gcc-patches@gcc.gnu.org>; Sun,  3 May 2026 18:49:04 +0000 (GMT)","by mail-lj1-x22e.google.com with SMTP id\n 38308e7fff4ca-39389398838so8079471fa.3\n for <gcc-patches@gcc.gnu.org>; Sun, 03 May 2026 11:49:04 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 6E1004BB24F6","OpenDKIM Filter v2.11.0 sourceware.org E571F4BAE7C4"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org E571F4BAE7C4","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org E571F4BAE7C4","ARC-Seal":["i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1777834145; cv=pass;\n b=Wb14BFEMb67ujji6oTPGRrNDHxsTt8MuEPa5T7TPxsZk+6R6teoRV7a4rmsMH+Kvu9kOGE7ABVjt/MZRqNiu8Tp5Tqjj1zBH1gc0EJMhXuZ44wJ5xkdizpoZmYMFIcbNfRaBrAM6eFhg7mbHu2NZt1vUHthCpZ/3xm61JCa34ZI=","i=1; a=rsa-sha256; t=1777834143; cv=none;\n d=google.com; s=arc-20240605;\n b=QwIl5R/fMD3ev6KB7pHUf2TQp3gNGoFkli5pshxMcLQiHKPc7WIiNHW0JEzpZKd2TZ\n g9eDmL41Mu4DmfOszCcCTbHgxoWatdZn2VWSkjdQeEkUB2UOwhbpteW7fJymi2XNmn7A\n qc4c97BrGEuE51L7VjzFSQwwnnYu+IV3JA3qSFA9py8FEjy/i3V94EQ2dqOOldnHrYsd\n kBFbPrId3TwIw8fXLMLQ8zk3zdF8Xy1NTPgLJ7UEimKk0FahA9SJbRMKa++Mknoa4jog\n QfTV1mw8vytjGRrDRXaU405lZLZi5voyK4XdBZlYcejgrMUqVjpeClK9wUErANHUF5GF\n 1kfA=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777834145; c=relaxed/simple;\n bh=HlULa0C3XaxKrqO8ow4KPPM7+ymjzDaLCvZHcWLRIEk=;\n h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To;\n b=SeEFERbN2diGN5lDLeqJTbt21YYrLECIWlcJLRxMnjxCVJSDUVJOmKP661NWlxNU+kIxcbS7Ajs54kXXH8zIgAuOfFzfWbXrHUgO1kJXXhrfoz9pHy3eMILLaqxMk5Kb2K88AQhDWFie0TAB46Jpvvr9iutpG10yRSJGwNgiCeA=","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=ortCDwQ0xxt+2Yhg0lzKar9kmWD74bN7WR5Yoo01L9Q=;\n fh=/7RR8AUi3DDjOzR9iEZmt+maAPa+w/siunHe56Ocduc=;\n b=PMGRSrtkTgEzfgTYrSUHqzpGyW/nAiz7kw2Mchue/7zuq59I0GPFLXHtoiv+qOZwE/\n kjRilguMPZfgCmh8GLZQwuHMFV7K+PfM7gQJS3gXjkB2OmhVFr4pZc3UN09jUn/TLu5z\n isq2Nfkm/nGZHyoL/DueSdRpxIYi0+tRcxq2cNiBTthY5+F3r1NmMy46Y67XeKIhbr6C\n 62YF3+7dAcFxSWJDIJa5zY44/8XLNdqg7rhiHtP9v8oBGAFei4ZaGqRHqa0EYb3VAPN5\n iaZ0d7UV2lrFf/0L/6ZEb93n7Du4O5XHJuEo9pGOrxw+3ubhOKIh754xwbg0DqpZ+GxC\n 1k7Q==; 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=1777834143; x=1778438943; 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=ortCDwQ0xxt+2Yhg0lzKar9kmWD74bN7WR5Yoo01L9Q=;\n b=jw4vMkIs5XlrZjvhuCCflLHWiIUTbP063udxVEiRbF0u9euDk1oJOLF1eBr07AD7Cq\n ANFqBkp+6NXzx3fGwjxqUM/Jx0u9tWW4dtsP3vn2KEmfwj7+UcSBWgo5FHQoN52et9NH\n 0lO2gCAFxuVuf7GkBtEBCkeGELdzQb/K4sFw4vP1dFc6CpASv29plJ5XWpKtQnuKHM0E\n jve1psr6pWpCBzoBuV/POx0CrXNeK6KIdB61TfWYMlcdmxnshUzPlE7lC7mq32wCIL/g\n /jUc7FyIcvvSeEJ+yeblNHhjwMJQwFQXWAcvmph9Wiz122VrJqluGSbWWjioT7geZvkm\n 5IJg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777834143; x=1778438943;\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=ortCDwQ0xxt+2Yhg0lzKar9kmWD74bN7WR5Yoo01L9Q=;\n b=RpA0vS12iZlVNaZx76iyEMc+wyHF0aBIJUe8AzOCkZyTd5NwIg7ikzqLYfSU+EN6Wr\n RCkU+ttJHPV4JugQ5R1oWOTV3qrO+a5CI3/LkB/orlhxRHlhK5y2OGpNwAHTbemvkiAt\n DtnfCvULo/l3g9uNM3F2MyP6KassCb4SFtZ0T2hIojgHT8R+j33aRsfYTcGSk6EKJAna\n MEztGITKYilAF0xOGjjncOFPD9Fg/gdt3WBPOVnnAnyjJQIY3XRE9uNccuoah6Q7qCFS\n Bx1PCUfvOWtp7bXkd+RmqZfBevbfJDz+yZri3omu8DOjhbxX3igsZvZsbrjoZlSwiaDf\n GPXw==","X-Gm-Message-State":"AOJu0YzN6BO6OwwLEaG2uvg2pKGUHDHj2y7pFvDQOwk2KxA9jX8vI992\n FUjyZ2rf9BJ5ckT+KRPzy6PxgWSjtCypiLqL8UPRoWhISi8ebOGvjg7+71DOgrAth8I1dh/jTVo\n 16q8SRcHrBybt1/A/kDK5xJEwJPAQwIpG3fBfjRQ=","X-Gm-Gg":"AeBDievgSld/wGsFKlSG2sQIBccMPBeAIVJeFnvIQgb3EHy3+ADWsqSyMRNSqLKffW9\n ak0dAQ4VPUPKTZ7qUQ+Hw+omfLQHSJhCOL+tMIVOeksf0DGIXDrBnwlTr52z0bG9sgmCmpiHR+Q\n rlyn1kRnKHWs7zOhlsoR/1+y07/XOTdqN0QAuTV2e5RCvKRAxHnDbKT+nHbh1En92ca+oC/jV7L\n QM6FwEFIIMqYprwXQsQI2kZCQiVwB9OXxXareSiKPwVgW5Sai8pW4Vd7crxJIm+dCRM9BE3mpl9\n 7cZNicflvEuOVWl/xMOzan8W4WeD6n5pf4zYNoe4i9PUrawQvybDPBxFzXfePtXWU+PBH0ecjZa\n grM27WU1zHzLDPdfSc4Jq9inEM9/mtioOQ56DxIMHkIA+CMrO4ZqmpFVb","X-Received":"by 2002:a05:6512:39cd:b0:5a4:19df:48de with SMTP id\n 2adb3069b0e04-5a8631bb8fbmr2462891e87.26.1777834143004; Sun, 03 May 2026\n 11:49:03 -0700 (PDT)","MIME-Version":"1.0","References":"<013901dcda70$c51fa510$4f5eef30$@nextmovesoftware.com>","In-Reply-To":"<013901dcda70$c51fa510$4f5eef30$@nextmovesoftware.com>","From":"Uros Bizjak <ubizjak@gmail.com>","Date":"Sun, 3 May 2026 20:48:49 +0200","X-Gm-Features":"AVHnY4Jf3P3usGbzdnRt99RRm2VUfDzv5j2TwVIzydFLuuMqPEb78geJQFhJ6Go","Message-ID":"\n <CAFULd4aOwQW0hH58rhCg-n8SKUAVTUa5oMKJYtPQAg0qy4mu0g@mail.gmail.com>","Subject":"Re: [x86 PATCH] Shorter load immediate constants with -Oz","To":"Roger Sayle <roger@nextmovesoftware.com>","Cc":"GCC Patches <gcc-patches@gcc.gnu.org>","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"}}]