From nobody Thu Nov 27 14:56:05 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dHKHn3ctkz6HMYp for ; Thu, 27 Nov 2025 14:56:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dHKHn31ydz3nGN for ; Thu, 27 Nov 2025 14:56:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764255365; 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; bh=QjncMZu3/7+4YyPJkPbLUTWdwywNDUXoOl0QmMQI7Mw=; b=Th7UOkA9Omh9ICyMZVTQ2gwDXY9dPe6YBAUjkEUGBc+6wOIYmJinADvJvy9Kc2c/CZTHTn IkKYRgFQFEK3IdjzZuz33ju0xe6pIMwt/qVsjrwKyeGoYK88QVcdILBHe8kTgf/ovTC6wM R5j7/aNnCH07N0WDrubiySNkJ1xgju2e8cZ+W6jnnvmesudiUBveffHg9QR985Vu0U1HLm Tua93ZUwqc5TktKzbVKd2z2WDjUtTmBI/P4Zmm5jsBIIhXrRKyHVSYlFmqXSKwBRgWbNws CICJIi4Kpw5ln+3lKRWeupUBHJjaznpjw1DXGo0N1tOx/TjWZzSkN04dsi1HvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764255365; 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; bh=QjncMZu3/7+4YyPJkPbLUTWdwywNDUXoOl0QmMQI7Mw=; b=BveUct+7MNiKoj0m2k6IBlqT+YoNEcj4sVKfvhup6Gpee8toXJYEw5JlSGflA3sxNH7bCo hVE83d+KgwXj7MrEx20uTROU9kAuDB0vKe23OqcUhHTVN05WoKU3AevjTKZ7+7pOXZSfP4 QFQGdO9ayQFOQEzg2HTdH3auVRAI2MmzQyfJ113URTpNMDbNB5P3B/pGNOWIT1cVrx7bYE jVIgv9b5TyXYCa8GcwEDgOEmxX4eucD0w6Ijrhbt27Y66HpixJ27S4lMqwmSpwVtxp8Vw+ qI5AVo/oFDkgkGCz8cADbpMJvfRlAn2lLbxSgjW8w+5tEAjjiBWWSlbbdLnEqA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764255365; a=rsa-sha256; cv=none; b=leQFFLPOM7qprAiuNuNoBQjhrFdAWOdUFUjdqx+kLPIyqxQ9CqH3MGx0dd55sPqgm7+4U6 KljwD2nVZemzBuUlQ8LPxoPdZp+j2hcYTjqOMdLXDI/IO1i6iF9reXrPuo+U0fiQ+Dl2hr Scc6jnj7U7OYtz5MyWkwVU2H4uXwtaEEbxB6k1/0DpfTsL9AE3F+GySn25FLezpd3QXNUc BzWDyy8IjIorzTaBrQo1Th06VNyjN0rRkJV36ThYE8J2IB/7sFfiiL2iAZ5dMuKTDTjiah z8T8StUR3MHibRPHp05EX4tp/OMqr55lQyc7JRARF1sSz3XlKxIovzf50L6npA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dHKHn2ZWYz52g for ; Thu, 27 Nov 2025 14:56:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30faa by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 27 Nov 2025 14:56:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: dca634d1544b - main - new type: ptraddr_t List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dca634d1544b5cd202dcd06c8c5ea5cbea6c3300 Auto-Submitted: auto-generated Date: Thu, 27 Nov 2025 14:56:05 +0000 Message-Id: <69286685.30faa.6a6ab3ca@gitrepo.freebsd.org> The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=dca634d1544b5cd202dcd06c8c5ea5cbea6c3300 commit dca634d1544b5cd202dcd06c8c5ea5cbea6c3300 Author: Brooks Davis AuthorDate: 2025-11-27 14:54:55 +0000 Commit: Brooks Davis CommitDate: 2025-11-27 14:54:55 +0000 new type: ptraddr_t ptraddr_t is an unsigned integer type that can hold the address of any pointer. It differes from uintptr_t in that it does not carry provenance which is useful for CHERI in that it can disambigurate the provenance of uintptr_t expressions. It differes from size_t in that some segmented architecture (not supported by FreeBSD) may have a size_t that does not hold an address. ptraddr_t is not yet standardized, but is currently proposed for inclusion in C++2Y. Prefer the compiler defined __PTRADDR_TYPE__ defintion where available as this a new type and we don't need to worry about historical values. Fall back to __size_t where unavailable. Reviewed by: kib, markj Effort: CHERI upstreaming Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D53817 --- share/man/man7/arch.7 | 5 +++-- sys/sys/_types.h | 6 ++++++ sys/sys/stddef.h | 8 ++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/share/man/man7/arch.7 b/share/man/man7/arch.7 index 5170a27768b8..628d3837f011 100644 --- a/share/man/man7/arch.7 +++ b/share/man/man7/arch.7 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 1, 2025 +.Dd November 27, 2025 .Dt ARCH 7 .Os .Sh NAME @@ -48,7 +48,8 @@ and later, unless otherwise noted. .Fx uses a flat address space. Variables of types -.Vt unsigned long +.Vt unsigned long , +.Vt ptraddr_t , and .Vt size_t have the same representation. diff --git a/sys/sys/_types.h b/sys/sys/_types.h index 6b70b8dc6e32..6e69b06f689d 100644 --- a/sys/sys/_types.h +++ b/sys/sys/_types.h @@ -103,6 +103,12 @@ typedef __int32_t __ptrdiff_t; /* ptr1 - ptr2 */ #error unsupported ptrdiff_t size #endif +#ifdef __PTRADDR_TYPE__ +typedef __PTRADDR_TYPE__ __ptraddr_t; +#else +typedef __size_t __ptraddr_t; +#endif + /* * Target-dependent type definitions. */ diff --git a/sys/sys/stddef.h b/sys/sys/stddef.h index 73636f5a2370..90186eed7624 100644 --- a/sys/sys/stddef.h +++ b/sys/sys/stddef.h @@ -32,6 +32,14 @@ #include #include #include +#include + +#if __BSD_VISIBLE +#ifndef _PTRADDR_T_DECLARED +typedef __ptraddr_t ptraddr_t; +#define _PTRADDR_T_DECLARED +#endif +#endif #ifndef _PTRDIFF_T_DECLARED typedef __ptrdiff_t ptrdiff_t;