From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id A890A385AC23; Fri, 23 Sep 2022 15:37:38 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A890A385AC23 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1663947458; bh=y6gqxAdMazXFIvzhJb+zzMRd/5aAo9O8wPEhtUyzH1E=; h=From:To:Subject:Date:From; b=RN8nECVGxDQ8G3QhyxkhEefE3N25wsJgdo3Gk/oVQRnOXcM0DpeDC+EqTaftAnx/W Z04JbRI9EKkQ9IDQvRVxgUMFsz7zaUjAdPjJZXo4cDedAXvPYRWNaHcBoZ4TI/6WvL B50m4Al319yIKxnx/oW86vDZJWkR0pyUX42BGZC4= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Thomas Schwinge To: gcc-cvs@gcc.gnu.org Subject: [gcc/devel/omp/gcc-12] Come up with {,UN}LIKELY macros. X-Act-Checkin: gcc X-Git-Author: Martin Liska X-Git-Refname: refs/heads/devel/omp/gcc-12 X-Git-Oldrev: 1ef5b3bbe9fba70564c5c52a6a973324f0d041b3 X-Git-Newrev: 44b77201a5431450f608b4538fefb1319127de13 Message-Id: <20220923153738.A890A385AC23@sourceware.org> Date: Fri, 23 Sep 2022 15:37:38 +0000 (GMT) List-Id: https://gcc.gnu.org/g:44b77201a5431450f608b4538fefb1319127de13 commit 44b77201a5431450f608b4538fefb1319127de13 Author: Martin Liska Date: Thu Feb 3 10:58:18 2022 +0100 Come up with {,UN}LIKELY macros. gcc/ChangeLog: * system.h (LIKELY): Define. (UNLIKELY): Likewise. (cherry picked from commit 22d9c8802add09a93308319fc37dd3a0f1125393, partial) Diff: --- gcc/ChangeLog.omp | 8 ++++++++ gcc/system.h | 3 +++ 2 files changed, 11 insertions(+) diff --git a/gcc/ChangeLog.omp b/gcc/ChangeLog.omp index 4f80bcbd356..30c3abfc15b 100644 --- a/gcc/ChangeLog.omp +++ b/gcc/ChangeLog.omp @@ -1,3 +1,11 @@ +2022-09-23 Thomas Schwinge + + Backport from master branch: + 2022-05-09 Martin Liska + + * system.h (LIKELY): Define. + (UNLIKELY): Likewise. + 2022-09-12 Tobias Burnus Backport from mainline: diff --git a/gcc/system.h b/gcc/system.h index e10c34f70ec..6b6868d0bbf 100644 --- a/gcc/system.h +++ b/gcc/system.h @@ -736,6 +736,9 @@ extern int vsnprintf (char *, size_t, const char *, va_list); #define __builtin_expect(a, b) (a) #endif +#define LIKELY(x) (__builtin_expect ((x), 1)) +#define UNLIKELY(x) (__builtin_expect ((x), 0)) + /* Some of the headers included by can use "abort" within a namespace, e.g. "_VSTD::abort();", which fails after we use the preprocessor to redefine "abort" as "fancy_abort" below. */