From patchwork Tue Feb 20 17:33:01 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Steve Ellcey X-Patchwork-Id: 875861 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-473607-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="ktORERqv"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zmGRn0fBRz9s1w for ; Wed, 21 Feb 2018 10:05:16 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:subject:from:reply-to:to:date:content-type :mime-version:content-transfer-encoding; q=dns; s=default; b=Mxs F/9Nxx8I8X28SGFUS6Pxe5AY581VCpakSyGExiSZaN1WALNhJJvuKBF+a/TK7Xk8 gROaq/+FLyFn0RifHqRmel9gKDh7v4AG28HOevEJ4QgflkgPEuqEc0A2YPGgp3P3 KG+SZbT/hv48KRsMdbrd0p56Q2yvcwI9wuTo5kUg= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:subject:from:reply-to:to:date:content-type :mime-version:content-transfer-encoding; s=default; bh=R8RCnq/MQ uvZ+P0kchGn7al5ciM=; b=ktORERqvqidRLdGb+kqSA4kEX4sMTVZKyGtQOHcc5 aFLFGH20KJQb+7Out5+JI1A/NU1zdT6TGwPtdk6Ug+Eye5TNc87PJejHSx/279mn qDjHau/BOH6DKHcndnRbbYm/Z+dBwM+YuuFZLwF7GSM7heq4VJheU+Wef/K3Rmgc PA= Received: (qmail 117265 invoked by alias); 20 Feb 2018 17:33:11 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 117231 invoked by uid 89); 20 Feb 2018 17:33:10 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.2 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 spammy=Particular X-HELO: NAM01-SN1-obe.outbound.protection.outlook.com Received: from mail-sn1nam01on0061.outbound.protection.outlook.com (HELO NAM01-SN1-obe.outbound.protection.outlook.com) (104.47.32.61) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 20 Feb 2018 17:33:08 +0000 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Steve.Ellcey@cavium.com; Received: from sellcey-dt.caveonetworks.com (50.233.148.156) by SN1PR0701MB2045.namprd07.prod.outlook.com (10.163.132.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.506.18; Tue, 20 Feb 2018 17:33:05 +0000 Message-ID: <1519147981.6296.18.camel@cavium.com> Subject: [Patch] Document __builtin_extend_pointer From: Steve Ellcey Reply-To: sellcey@cavium.com To: gcc-patches , "richard.earnshaw" Date: Tue, 20 Feb 2018 09:33:01 -0800 Mime-Version: 1.0 X-ClientProxiedBy: DM5PR13CA0072.namprd13.prod.outlook.com (10.175.103.162) To SN1PR0701MB2045.namprd07.prod.outlook.com (10.163.132.16) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: be7697a4-ce67-404a-90c6-08d57887fffa X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:SN1PR0701MB2045; X-Microsoft-Exchange-Diagnostics: 1; SN1PR0701MB2045; 3:RABhJfKwP4KkBqVNvtQFBTTMJlx5NojSnM9gmTrnqk6IhptudEo/YSh6JcSaBMVjYmpUR5b0+5Opyt4PZ0IdSsHI6xgVndCoiJUTOkN3pAL0rGiV3AjN0AUso7FrbxLgkP2w8GS5EFQ57LBvfOVIp5rBC1QB0lZlzSPOrW8DzA1ZCdEIepn7oz1iIol6kriKhZqI0fIG6hD3UXj55Q0tZo/4RrZd1xRHl5EXzFutxYQN03UPRyy0ItFSHZXnTjcb; 25:XanLOsovEwszAvcEdcw/U08sM9rXHdbuVgMFLd/0UOMk4SnLnMM3yx6d+z0uNrFeSA1cq2fxWYu6rsz3MT3wGGaxm3T8mT+ja5YQgBTAj0I1TrAkrtq2MSm6QYxxbaMHBmkvZAI2yIktEXyon2l+5nzFB5nq94dzS/156XgyV8jXMOarCn8y3CVkmfySmGQxkDfb1CLRASV4ynWAAEtfB1d0XfbSCgQNya2Xzec3JS8uJYHn+jAZ9BjVYUaG3udP7OqBU0qBoe3h8DqGbVbIg8TR/3/elhaJGxsHEjQU+pRNrDhaAMhB+9jccA46KybZ8/SDthhbD81/DQiF1Hdq8A==; 31:knNyVOqSHCd003xLti5Z4gEo2LpHSul/6L0dCUrdDAPEbfRV5BN/8CW8MIcu5CafnbY8aP8HH1yyd+zWjfkuhLz9oD62MzuDdkwLCJqq5r4zAz5QYcUdKbBjWvyLlrmveIfHDaTh0xMpOMqi5o3HUN9Q7/eXNpvgdC6viIp7SZZxn2Q2+vRwo/FF0EsR41wQaRQsPDsBZZn394XdLH7DzsUJTWBsuwsQMckJlEY6aes= X-MS-TrafficTypeDiagnostic: SN1PR0701MB2045: X-Microsoft-Exchange-Diagnostics: 1; SN1PR0701MB2045; 20:kAGVoaqlKoqy5fYtbaDBfzy3Tw9iGQiK2avD3RnDA5bOlNYZtPbNJQpSjHdvz9ND4uIMQCcSK5/PSMGnxouQkdqfvr9CgU42WYUsqAXr/hksh+8kahAvVLRbROVBdcxDwVl8FCWMNYNdCzB7DPUxBpdzqXipeQ925/dt6ULwMDBmOH9Qzc/owIrI6gdCMEmiNRrd30WM6a4tVv+xE0NkVmeSLWj429t3pHI+vbZY/FoVMY7me8Z+ujZrlLum4Ah51EvQvyzWy2+KRsLZfhDzVKz/QLZ9/N04MsKIrTjpcPSQStYoTdyL90DDgJKrauIE6DmzV7q7hfbT/p43MBsK1SyMvjACll51FuXIww3TTAoZUdvOIAZw+Me83BOc0ujkqfUeKJdpzMGsttYisNvMckHfbuE3q4a82xMCYBnW61NJtxRGoISJyiZun/ubI5Bqx+xtvoVG/2xaLgfXEQaoXUbIm4Sj9k9TNCpj5QQOA0Qy83e81+67vawhT4zDLJhO; 4:0EB8tIolnUsGv3Y4e2s2pBUB54n5JThIdjhV7WW8Jdu+71mY4c2AVEo0eP7PZmN5baeZyu7nDaLqWJ7fUqACR16z/TCORth4n3BNpVP4KQ7fVBXOcXSGIe1YDwMpdLY95RcWVjvvNssli7rEnNQD31p/+VBkClfSeBLrEkZcUcJSCEGyhQkJRYhJD7zUbhhwb99q8UCYUp27gImXcJJwqqcb2dAtE28lt1HdMOr+AYD4qnuOn/jQdZYwX6tgKUDhRyr1H0DwT1UENQeIbEpGcq6ovxa6j8sysNzjtPWqm02KiocSZ+mocsLb8Sdnzbeii4B2ox94mlPm6QrEppaJ8bXZ9PRFcyi3B/LaYTZLepk= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(22074186197030)(183786458502308); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231101)(944501161)(3002001)(10201501046)(6041288)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:SN1PR0701MB2045; BCL:0; PCL:0; RULEID:; SRVR:SN1PR0701MB2045; X-Forefront-PRVS: 05891FB07F X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(979002)(396003)(366004)(376002)(39380400002)(346002)(39850400004)(377424004)(199004)(189003)(50466002)(53936002)(478600001)(316002)(103116003)(53416004)(43066004)(25786009)(5660300001)(6116002)(3846002)(7736002)(110136005)(2906002)(305945005)(16526019)(36756003)(186003)(97736004)(69596002)(3450700001)(105586002)(6506007)(1857600001)(81156014)(81166006)(50226002)(6512007)(6306002)(386003)(5820100001)(68736007)(8936002)(26005)(8676002)(66066001)(966005)(47776003)(6486002)(72206003)(23676004)(52116002)(106356001)(2870700001)(6666003)(99106002)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR0701MB2045; H:sellcey-dt.caveonetworks.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?q?1=3BSN1PR0701MB2045=3B23=3AOF?= =?utf-8?q?wGXiRLoVHktO9GXmju0okTYkWR/WTM3ExiUsWsH972y1RT09UoAOO7vV?= =?utf-8?q?Vv/xloeszH8XXUWL8CS4F4XHu69G9Hdnhgk5mrYML+TRF6m76uNczc1z?= =?utf-8?q?lvtgGq3uBJCZtn9Jx40mWmoEndDim5Ke54j2o4aLsel0CHeadZ4/Vnds?= =?utf-8?q?JrBZYFTRrvQ3QBe6P/6uKjHoFDgA6EqKj5aHlij8xcJAs5soSao01tKs?= =?utf-8?q?HFV4TXuDeYK3ZTQqzKR6zObjNSHuYzMxCSKrgOqVXBzpQQw2whGrBMpr?= =?utf-8?q?9T0YeQThcUVMxEgpc2KRxNBMZk7CJDfaDR9iEqpvEBfsnYdkuqg8xga/?= =?utf-8?q?rKgFkYU+sDamdtRXHwkZpk9bpIDjEMBs73Ya6nUo8+sUD+pNZO9f8fR8?= =?utf-8?q?fzae+CP/e2VvX0xw4LAESkvxWH30v0QqNLwg59l0TbgO6jKY8T2tC3BF?= =?utf-8?q?yYptPoQJ2njjHdbnk8ktdSRT8YZeS9DP2kc/CWKKafyInNrODhY8wOEa?= =?utf-8?q?bG/5WqvjYoecssUBu4VO0S/cXVHXEuHDVp5Vi28p1B6yHfv0fKtSEJpV?= =?utf-8?q?bYHM2ZHHnK3tFzQP7m3XaX2NIG3eu47wILWd+45I3PJ7A3YpMx/bBPgI?= =?utf-8?q?Ovprafus5LH3sfCmHyZ8JZjj1I5nyW9xsJG0f1+Jl3QyCVqoGe0WJJSK?= =?utf-8?q?ADQCbpbf8LsI0HlHNMcJH9YidPz0/6REASPerjpRwToFieyap5vIDQp0?= =?utf-8?q?+Q5cLiQxUgjBC+rEebj2zLyRVrArqhG3QhdNI63vnXWnzFr3ERmqplMa?= =?utf-8?q?mlxsCJYatDXkx8iDPY0PgulYvEfKmpS2TbbJy/XDp3cwaQSMCRENnTK9?= =?utf-8?q?rjgx3BpqwOh4lioIK0hCjkdK5dzW3icdBfc+hYd5LFDdqaljpHZSrPlx?= =?utf-8?q?kVtSY4Esqg5eggB0zdt7ulkYpo6IlQ6Jjcfn2yzjv64i/9Vrc+Qq5vQB?= =?utf-8?q?dKL8y0TcZKfA3bPBys2Sa9J5OfR0pFOACZISA5E7iHNUTlz3WQ4DxUWc?= =?utf-8?q?Rf5HIMTbZa3cKEI6Pmzo4aJ6uh5OxF4Dwutsn4NtBIdLJsNBdvFsas6n?= =?utf-8?q?lGrKh6SBlQd4NHrOXML5pQvVgRmiijDMXEPC6OHipvwz0e0aKCOV2k9n?= =?utf-8?q?15IqFZlpatjy2TNV/1hBlNEqK6IWnJU0beS4qGLqASTh/ve4Uvbm4LUQ?= =?utf-8?q?4/H9ZG+fX5fTpbk72hYij1uQDbQ129oN1HW5IabTEG7T4Pqm6G8dc90o?= =?utf-8?q?Q7u3GXiEsqw+kf19aa5e5nTKMai/dCOC5X1TFnfj/XmmZxVz5LHyGofo?= =?utf-8?q?w5mGzXVeNDmUYcrfjCDRHPLe4d/J8+ZlTGi3WCX/p1yfIWltRnRd7IiV?= =?utf-8?q?ODs1rfqOrygVd6FH5jow=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR0701MB2045; 6:m/SGfWtCdaHWeA9BQZFEVxK+v//VqsKTV8kUwi3XykLwgrukd1xYZ/wcgE8URTrihMZ++qjbTvj2RfKqcvhxnc641KqIowYEABRxJpF/EZlQzX6J/xkwu7BZKLZk7ix+UI6edwl9FdMmSSozjxsFcAUAH3mcG2c0C6e6w+VYBu6Mb28UqnIl9Efr+CkDt5tFyzScJJ//GtGyN2mxkOkaqR0a2nuRM38y8AqffXIU6CDlR3IfB7XCWNxxZWsi3s0wlGGjGBsg2J2JQV6ZPgYcDqtf+8l/sPLS8yjOZ6yfKMElB8Yoe1kfJ4+zXSDfTHNsv5OyMy0+yRN3D0v5fx3QCw2ZsGuUb0mJOQrvUa8Dr4I=; 5:HXfEPzm6rMrBrxU+y2js4/c1GMFtMfjrmXHAF1Z8eikZC5yzqBFpgBOsJECC0Tkbvn33QeekVKqfzuN0eFASYl12VpvmcpJFbefd3gJvSwj22xaIANPIGpW3b2qqFweIO2sCY9OofzsUOqy9kh3d7upXTKzfgRsUhKz/ixFe6cQ=; 24:HbjU6+2CdK14H1ZJsJHFS0Gq1txL5FrMv5m+U6F81C1SKPBkt2w+4vqlbyDJRZHdZygaWNGxotmdwGdx5y+xQ3t9Vu1PGvm8lB9VAuVdPq0=; 7:qO7AIYFLk7ov2+IrzC8TL+QI7EsXZBdjY0I0hDsWICtPTvmldbjOWh4+tXUNqJjxjHcPL+t0lB29vHQ0DC8RLZBnTO/mqxXbErfU8rdu7fxfnqACF5hSa8rmzYtz77HVlw3RsioDDi8ik5lBM98mdrIseEs5JYmQiQoNs047ZmCu1l1hTwKEGyARcdzOQpizDda76jdFxWOa4IAuosLQoqzHsHjyS5AMu3+0KAuV92x7udbRPghAl6f//+dAit5f SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Feb 2018 17:33:05.0197 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: be7697a4-ce67-404a-90c6-08d57887fffa X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR0701MB2045 While working on PR 83335 I proposed a change to a test case that used __builtin_extend_pointer and Richared Earnshaw pointed out that this builtin is not documented.  Since I could not find any other (reasonable) way to generate an extended address in inline assembly other than this builtin I would like to document it for use. Here is a proposed patch, the one problem I found was the return type of the builtin.  I don't know how to describe it other than Pmode, but that is not a user visible type. See https://gcc.gnu.org/ml/gcc-patches/2018-02/msg01051.html for my PR 83335 patch and follow up comments. Should I go ahead and add this documentation? 2018-02-20  Steve Ellcey   * doc/extend.texi (__builtin_extend_pointer): Document builtin. diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index d38840e..94e47aa 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -11042,6 +11042,7 @@ the built-in function returns -1.  @findex __builtin_alloca_with_align  @findex __builtin_alloca_with_align_and_max  @findex __builtin_call_with_static_chain +@findex __builtin_extend_pointer  @findex __builtin_fpclassify  @findex __builtin_isfinite  @findex __builtin_isnormal @@ -12419,6 +12420,15 @@ Similar to @code{__builtin_bswap32}, except the argument and return types  are 64 bit.  @end deftypefn   +@deftypefn {Built-in Function} Pmode __builtin_extend_pointer (void * x) +On targets where the user visible pointer size is different than the size +of an actual hardware address this function returns the extended user +pointer.  Targets where this is true included ILP32 mode on x86_64 or +Aarch64.  This function is mainly useful when writing inline assembly +code. +@var{addr} +@end deftypefn +  @node Target Builtins  @section Built-in Functions Specific to Particular Target Machines