From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by sourceware.org (Postfix) with ESMTPS id 3F07D385B50C for ; Fri, 10 Feb 2023 14:19:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3F07D385B50C Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embecosm.com Received: by mail-wr1-x42c.google.com with SMTP id j25so5221834wrc.4 for ; Fri, 10 Feb 2023 06:19:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=mime-version:user-agent:references:message-id:in-reply-to:subject :cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=eGb4yeAUoxjnkO47gwCnSVPqirmXfuU+VFWd5Y3Zego=; b=gRT24qwZR3/dpDdJDi4FDD5lD81+ouFfIannUTkNqIUSAQa401NHbGJz2EOSGp8FTf f9YmIGzt/OvwwufSbcIxGHLKyYo4HrDG8MiSSdBp30vPX+YGahljMl+AkA5Td1wzINUJ KTYQNoF4qP3u1b1tJfq4VlswXeE4+EadogSgen53jkEUrW6WgxuZajPVCZbJKmDnvR8P EkiERoUwSuYiM4u2dVZ3dRTgkBJjuiZVw1cNRll7vNrRPxJZ/QYG0YsRlU/rwLSpSC/0 hGquOuUYZZnPlVVXkBbZN4minsIuCZX2iCv3M6nO/i6nwcVID9Jx6pRiSk0ttzJ0zAc4 WojA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:references:message-id:in-reply-to:subject :cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=eGb4yeAUoxjnkO47gwCnSVPqirmXfuU+VFWd5Y3Zego=; b=QOuqAWr8tLzyljm+LmGJ3Meo04Ep4+3TLhLXKzsW2ufbvqssG8XmtSoYpbjGPdcAG0 e0JsXjP3dou+lZIRxGKweUsu38zho51wN2XIRSy3vdvzpOiSRv3qXuBGczekzK3X2pOa xR95Afr5RV2LxOR+BNaP18CXUoF8QUo04BPwN8bvcmL2vxYza8S5MzieY2BHwiQCjYLR Ia4kMfsuGT0Tr7mRH++zww2ybOoaQF0pevWPuHwnzDq7I9AWIiGMEJgJYbiEH6HLrpFs k53SCxOI4FmkK7TILg+TzAqozXlVzNb7kMPGzLYUKlgEl8NgBMtz0rglI7Xty92VcZ/T UJrQ== X-Gm-Message-State: AO0yUKWUR00UfRoltDG3N/yb1M9aTeZp0YACSiz4Gk9qgkon1NbQmlT5 FQ0EkQtq4VAavKRtL4pugwgq4YiLGC4T3Vqj X-Google-Smtp-Source: AK7set/gxuNC38Z0PxSx4HqGKFz1hKNd4l0Fza/NH9RNAJhVyKTQ3LKaYbdVx+TgEXojxgGiCVsssQ== X-Received: by 2002:adf:ee92:0:b0:2c5:4c0e:3736 with SMTP id b18-20020adfee92000000b002c54c0e3736mr1689533wro.24.1676038745928; Fri, 10 Feb 2023 06:19:05 -0800 (PST) Received: from tpp.orcam.me.uk (tpp.orcam.me.uk. [2001:8b0:154:0:ea6a:64ff:fe24:f2fc]) by smtp.gmail.com with ESMTPSA id a4-20020adfeec4000000b002bfc0558ecdsm3680775wrp.113.2023.02.10.06.19.04 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 10 Feb 2023 06:19:05 -0800 (PST) Date: Fri, 10 Feb 2023 14:19:04 +0000 (GMT) From: "Maciej W. Rozycki" To: gdb-patches@sourceware.org cc: Andrew Burgess , Tom Tromey , Richard Bunt Subject: [PATCH v4 1/6] GDB: Switch to using C++ standard integer type limits In-Reply-To: Message-ID: References: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_ASCII_DIVIDERS,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Use instead of and ditch local fallback definitions for minimum and maximum value macros provided by C++11. Add LONGEST_MAX and LONGEST_MIN definitions. --- New change in v4. --- gdb/defs.h | 33 +-------------------------------- gdb/gnu-nat.c | 1 - gdbsupport/common-types.h | 8 +++++++- 3 files changed, 8 insertions(+), 34 deletions(-) gdb-climits.diff Index: src/gdb/defs.h =================================================================== --- src.orig/gdb/defs.h +++ src/gdb/defs.h @@ -37,7 +37,7 @@ #include "bfd.h" #include -#include +#include /* The libdecnumber library, on which GDB depends, includes a header file called gstdint.h instead of relying directly on stdint.h. GDB, on the @@ -446,37 +446,6 @@ enum val_prettyformat # include "fopen-bin.h" #endif -/* Defaults for system-wide constants (if not defined by xm.h, we fake it). - FIXME: Assumes 2's complement arithmetic. */ - -#if !defined (UINT_MAX) -#define UINT_MAX ((unsigned int)(~0)) /* 0xFFFFFFFF for 32-bits */ -#endif - -#if !defined (INT_MAX) -#define INT_MAX ((int)(UINT_MAX >> 1)) /* 0x7FFFFFFF for 32-bits */ -#endif - -#if !defined (INT_MIN) -#define INT_MIN ((int)((int) ~0 ^ INT_MAX)) /* 0x80000000 for 32-bits */ -#endif - -#if !defined (ULONG_MAX) -#define ULONG_MAX ((unsigned long)(~0L)) /* 0xFFFFFFFF for 32-bits */ -#endif - -#if !defined (LONG_MAX) -#define LONG_MAX ((long)(ULONG_MAX >> 1)) /* 0x7FFFFFFF for 32-bits */ -#endif - -#if !defined (ULONGEST_MAX) -#define ULONGEST_MAX (~(ULONGEST)0) /* 0xFFFFFFFFFFFFFFFF for 64-bits */ -#endif - -#if !defined (LONGEST_MAX) /* 0x7FFFFFFFFFFFFFFF for 64-bits */ -#define LONGEST_MAX ((LONGEST)(ULONGEST_MAX >> 1)) -#endif - /* * Convert a LONGEST to an int. This is used in contexts (e.g. number of arguments to a function, number in a value history, register number, etc.) where the value must not be larger than can fit in an int. */ Index: src/gdb/gnu-nat.c =================================================================== --- src.orig/gdb/gnu-nat.c +++ src/gdb/gnu-nat.c @@ -52,7 +52,6 @@ extern "C" #include "defs.h" #include -#include #include #include #include Index: src/gdbsupport/common-types.h =================================================================== --- src.orig/gdbsupport/common-types.h +++ src/gdbsupport/common-types.h @@ -36,9 +36,15 @@ typedef uint64_t ULONGEST; /* * The largest CORE_ADDR value. */ #define CORE_ADDR_MAX (~(CORE_ADDR) 0) -/* * The largest ULONGEST value. */ +/* * The largest ULONGEST value, 0xFFFFFFFFFFFFFFFF for 64-bits. */ #define ULONGEST_MAX (~(ULONGEST) 0) +/* * The largest LONGEST value, 0x7FFFFFFFFFFFFFFF for 64-bits. */ +#define LONGEST_MAX ((LONGEST) (ULONGEST_MAX >> 1)) + +/* * The smallest LONGEST value, 0x8000000000000000 for 64-bits. */ +#define LONGEST_MIN ((LONGEST) (~(LONGEST) 0 ^ LONGEST_MAX)) + enum tribool { TRIBOOL_UNKNOWN = -1, TRIBOOL_FALSE = 0, TRIBOOL_TRUE = 1 }; #endif /* COMMON_COMMON_TYPES_H */