From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id D3C243858288 for ; Wed, 29 May 2024 12:43:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D3C243858288 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D3C243858288 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=170.10.129.124 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716986622; cv=none; b=JZEr6FHwElS3Pn9IDdGqj688/yDxY5JKX4mHTfanzAUSusqDmuTDcQEfe7rfXoRKz70CLKMhB6XK5CNQhbrwYRApLcsNjjmM7FlKX+YjqDM5oeTy43Py3OMsLSF/b1t4UFTWeyT4K1KQk1O+wdVBFuBNIjIVKB7bnFV2SPs0vig= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716986622; c=relaxed/simple; bh=9XJPjfmCBEbtEoskTPcW5eqjgoWcWZcroNZUufENjpc=; h=DKIM-Signature:Message-ID:Subject:From:To:Date:MIME-Version; b=fHP5lv8BotzZNhastULGhSg53xKZ1w4OvW3/IVvGCc6GxrgEewnYeScPCsvJ2ZxEhf/3uffUZcZK8hkYqai2XX4BTN83Cy2Vky2x6tIQOPqKyZa+GndgLnuUT34Ek4hAGOHptaF3Bqs0iCKoppSxYSm0wkDi33PSzQY9XxPj27g= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1716986620; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=9XJPjfmCBEbtEoskTPcW5eqjgoWcWZcroNZUufENjpc=; b=buJoLhV6mrNB13vk/Z6hLEb2oWOExy24VcfSz0AH3TGENyBDEy8s5ACRSisI4GzdPq8YW+ blI5vpRZamMlCoM2e5Frrf+LJBsgtdCsCLS9Srt7qcrCh3FJazNDHi83gS077F/eDugnoW ZkPV7E3CYraXWwZv7C0dwKZSPhVYvs0= Received: from mail-yw1-f197.google.com (mail-yw1-f197.google.com [209.85.128.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-263-AwTZ0-YqNuuEcmnWqJADpQ-1; Wed, 29 May 2024 08:43:39 -0400 X-MC-Unique: AwTZ0-YqNuuEcmnWqJADpQ-1 Received: by mail-yw1-f197.google.com with SMTP id 00721157ae682-62a0841402aso32429637b3.2 for ; Wed, 29 May 2024 05:43:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716986618; x=1717591418; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=9XJPjfmCBEbtEoskTPcW5eqjgoWcWZcroNZUufENjpc=; b=mzVkQFFPeZUmSLTuu1RUv3eyO49B1h1qc1It0NImqTr6iLGMwmPfQ7JzIWH9TGkVed obrGY6sItd9DvlaBhZMuTrBG6NKiT1XZU7m+X8Z8/S4rtIOHhUsv/zsZOC7YnFAYnuws 8cZuFBcb+Uj3u0FegXx2ej1CwpupLylmLwUtUlltl5jN5nv3g96zbcZy0GAi1fe1W1eo 6vqVHUk+P+//h95FGB/EVMs8qwwmzTYnnPagTnxRby2buqzuUV2IxVX7bd8mX5LBj5z+ QNvKwR0XZjC/Mbr3VlM21B50tkE0BmDXs1S8uQja9FV2JHvIaGenJVHFbkB9Q7SDoxmi XSwg== X-Forwarded-Encrypted: i=1; AJvYcCUmPuKSvVNivSD0tOeyvTGYzAG5AtRTf4hT1A0718WvR5LqKY17qamrjeL3K9Mq0+aQO/39+5P5Hy6KlSGLdZNboiI3WTn+VQ== X-Gm-Message-State: AOJu0YyLAf5iLonN9t+ynspLrS3dP0zmAnq1yxYXPCjUGyVqcydxXv1/ /P1hW+/2FKcOirvssdtzpbAg3bOVzkJjuZENG3dnvqJcFVuOjhMNGIEzPNB/6xHWXD5oCtSXPzI 3rK5F/174cekEJ/NEfsdwItK0mSC/km40grAGXvQTgL2X+PgqS1i0ktCeghSE9bc= X-Received: by 2002:a05:690c:893:b0:625:691c:9f44 with SMTP id 00721157ae682-62c679c77e2mr2414687b3.15.1716986617869; Wed, 29 May 2024 05:43:37 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHsn7adGr7+s57xRTX6O+MTsxV4BaNGVCbhgG6nI8MqlUzj44qbDXeUBjN8PDATiySu3c/h0w== X-Received: by 2002:a05:690c:893:b0:625:691c:9f44 with SMTP id 00721157ae682-62c679c77e2mr2414447b3.15.1716986617317; Wed, 29 May 2024 05:43:37 -0700 (PDT) Received: from t14s.localdomain (c-76-28-97-5.hsd1.ma.comcast.net. [76.28.97.5]) by smtp.gmail.com with ESMTPSA id af79cd13be357-794abd0845dsm466180685a.91.2024.05.29.05.43.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 May 2024 05:43:36 -0700 (PDT) Message-ID: <754ba7d1645ec697bb0e20928b0ec307cc296815.camel@redhat.com> Subject: Re: [RFC/RFA] [PATCH 08/12] Add a new pass for naive CRC loops detection From: David Malcolm To: Mariam Arutunian , GCC Patches Date: Wed, 29 May 2024 08:43:36 -0400 In-Reply-To: References: User-Agent: Evolution 3.44.4 (3.44.4-2.fc36) MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-5.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Fri, 2024-05-24 at 12:42 +0400, Mariam Arutunian wrote: > This patch adds a new compiler pass aimed at identifying naive CRC > implementations, > characterized by the presence of a loop calculating a CRC (polynomial > long > division). > Upon detection of a potential CRC, the pass prints an informational > message. >=20 > Performs CRC optimization if optimization level is >=3D 2, > besides optimizations for size and if fno_gimple_crc_optimization > given. >=20 > This pass is added for the detection and optimization of naive CRC > implementations, > improving the efficiency of CRC-related computations. >=20 > This patch includes only initial fast checks for filtering out non- > CRCs, > detected possible CRCs verification and optimization parts will be > provided > in subsequent patches. >=20 > =C2=A0 gcc/ >=20 > =C2=A0=C2=A0=C2=A0 * Makefile.in (OBJS): Add gimple-crc-optimization.o. > =C2=A0=C2=A0=C2=A0 * common.opt (fgimple-crc-optimization): New option. > =C2=A0=C2=A0=C2=A0 * doc/invoke.texi (-fgimple-crc-optimization): Add doc= umentation. A minor nitpick: patches that add new options (and their documentation) ought to affect the corresponding .opt.urls, so that we can map from the new option to the URL of its documentation. Running "make regenerate-opt-urls" in the build/gcc subdirectory ought to update common.opt.urls for you (provided you've done a "make html"). [...snip...] Dave