From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from alt2.a-painless.mh.aa.net.uk (painless-a.thn.aa.net.uk [IPv6:2001:8b0:0:62::26]) by sourceware.org (Postfix) with ESMTPS id 27862385840C for ; Mon, 11 Apr 2022 02:15:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 27862385840C Received: from cartman.offog.org ([2001:8b0:83b:b53f::a]) by painless-a.thn.aa.net.uk with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ndjaV-009xii-2w; Mon, 11 Apr 2022 03:15:30 +0100 Received: from ats by cartman.offog.org with local (Exim 4.95) (envelope-from ) id 1ndjaP-0007fW-Kr; Mon, 11 Apr 2022 03:15:25 +0100 From: Adam Sampson To: Noah Goldstein via Libc-alpha Subject: Re: [PATCH v1 2/2] x86_64: Add {u}int_fast defs ideal for x86_64 References: <20220411010913.1061799-1-goldstein.w.n@gmail.com> <20220411010913.1061799-2-goldstein.w.n@gmail.com> Date: Mon, 11 Apr 2022 03:15:25 +0100 In-Reply-To: <20220411010913.1061799-2-goldstein.w.n@gmail.com> (Noah Goldstein via Libc-alpha's message of "Sun, 10 Apr 2022 20:09:13 -0500") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-4.6 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, KAM_NUMSUBJECT, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Apr 2022 02:15:32 -0000 Noah Goldstein via Libc-alpha writes: > {u}int_fast{16|32} should never use 64-bit types. 64-bit instructions > often use more code size (REX prefix) and a variety of instructions > are slower on many implementations (div, bswap, etc...). Isn't that going to cause ABI breakage in other libraries, though? For example, the jasper JPEG2000 decoder library uses stdint.h's uint_fast32_t in its public API, and the HDF5 scientific data library includes constants for the sizes of various types including *int*fast*. Thanks, -- Adam Sampson