From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 50A7F385842C; Tue, 5 Mar 2024 00:53:08 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 50A7F385842C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1709599988; bh=AaliBbE4euLiHIjV7LJQZ40unaZp6w2etJqmLwvdaxQ=; h=From:To:Subject:Date:In-Reply-To:References:From; b=Js9rMgcxczhEaplNjOJP16xcHymhFlH9wZbRKzPfGUbbcZ63xCFEjU55X6AI5Ef/M FSk2fMhhN1OgGoIj/w5YtFu9Uxgz/Ln5TXEVCP5QQXerZ/bWSLoa+9pybLPpVA56pl eRF4eo+jfiR6FMIQ/oy+I3oxag13axwPLJPA5gVE= From: "pinskia at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug other/79469] Feature request: provide `__builtin_assume` builtin function to allow more aggressive optimizations and to match clang Date: Tue, 05 Mar 2024 00:53:04 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: other X-Bugzilla-Version: unknown X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: pinskia at gcc dot gnu.org X-Bugzilla-Status: RESOLVED X-Bugzilla-Resolution: WONTFIX X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: resolution bug_status Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D79469 Andrew Pinski changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |WONTFIX Status|NEW |RESOLVED --- Comment #6 from Andrew Pinski --- So even though clang/LLVM has not implement the attribute yet (https://github.com/llvm/llvm-project/pull/81014), adding another extension= is not a good idea for GCC so closing as won't fix. There is a reason why this= got standarized is so it can be implemented in a cross compiler way. Also the builtin has an odd definition when it comes to the whole no side effects (though the attribute has that, it is not directly part of the a function call).=