From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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-Archive: List-Post: List-Help: Sender: gcc-patches-owner@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 17:33:00 -0000 Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 8bit 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?B?MTtTTjFQUjA3MDFNQjIwNDU7MjM6T0Z3R1hpUkxvVkhrdE85R1htanUwb2tU?= =?utf-8?B?WWtXUi9XVE0zRXhpVXNXc0g5NzJ5MVJUMDlVb0FPTzd2VlZ2L3hsb2Vzekg4?= =?utf-8?B?WFhVV0w4Q1M0RjRYSHU2OUc5SGRuaGdrNW1yWU1MK1RSRjZtNzZ1TmN6YzF6?= =?utf-8?B?bHZ0Z0dxM3VCSkNadG45Sng0MG1XbW9FbmREaW01S2U1NGoybzRhTHNlbDBD?= =?utf-8?B?SGVhZFo0L1ZuZHNKckJaWUZUUnJ2UTNRQmU2UC82dUtqSG9GRGdBNkVxS2o1?= =?utf-8?B?YUhsaWo4eGNKQXM1c29TYW8wMXRLc0hGVjRUWHVEZVlLM1pUUXF6S1I2ek9i?= =?utf-8?B?ak5TSHVZek14Q1NLcmdPcVZYQnpwUVF3MndoR3JCTXByOVQwWWVRVGhjVVZN?= =?utf-8?B?eEVncGMyS1J4TkJNWms3Q0pEZmFEUjlpRXFwdkVCZnNuWWRrdXFnOHhnYS9y?= =?utf-8?B?S2dGa1lVK3NEYW1kdFJYSHdrWnBrOWJwSURqRU1CczczWWE2blVvOCtzVUQr?= =?utf-8?B?cE5aTzlmOGZSOGZ6YWUrQ1AvZTJWdlgweHc0TEFFU2t2eFdIMzB2MFFxTkx3?= =?utf-8?B?ZzU5bDBUYmdPNmpLWThUMnRDM0JGeVlwdFBvUUoybmpqSGRibms4a3RkU1JU?= =?utf-8?B?OFlaZVM5RFAya2MvQ1dLS2FmeUluTnJPRGhZOHdPRWFiRy81V3F2allvZWNz?= =?utf-8?B?c1VCdTRWTzBTL2NYVkhYRXVIRFZwNVZpMjhwMUI2eUhmdjBmS3RTRUpwVmJZ?= =?utf-8?B?SE0yWkhIbkszdEZ6UVA3bTNYYVgyTklHM2V1NDd3SUxXZCs0NUkzUEo3QTNZ?= =?utf-8?B?cE14L2JCUGdJT3ZwcmFmdXM1TEgzc2ZDbUh5WjhKWmpqMUk1bnlXOXhzSkcw?= =?utf-8?B?ZjErSmwzUXlDVnFvR2UwV0pKU0tBRFFDYnBiZjhMc0kwSGxITk1jSkg5WWlk?= =?utf-8?B?UHowLzZSRUFTUGVyanBSd1RvRmlleWFwNXZJRFFwMCtRNWNMaVF4VWdqQkMr?= =?utf-8?B?ckVlYmoyekx5UlZyQXJxaEczUWhkTkk2M3ZuWFduekZyM0VSbXFwbE1hbWx4?= =?utf-8?B?c0NKWWF0RFhreDhpRFBZMFBndWxZdkVmS21wUzJUYmJKeS9YRHAzY3dhUVNN?= =?utf-8?B?Q1JFTm5USzlyamd4M0JwcXdPaDRsaW9JSzBoQ2prZEs1ZHpXM2ljZEJmYyto?= =?utf-8?B?WWQ1TEZEZHFhbGpwSFpTclBseGtWdFNZNEVzcWc1ZWdnQjB6ZHQ3dWxrWXBv?= =?utf-8?B?NklsUTZKamNmbjJ5emp2NjRpLzlWcmMrUXE1dlFCZEtMOHkwVGNaS2ZBM2JQ?= =?utf-8?B?QnlzMlNhOUo1T2ZSMHBGT0FDWklTQTVFN2lITlVUbHozV1E0RHhVV2NSZjVI?= =?utf-8?B?SU1UYlphM2NLRUk2UG16bzRhSjZ1aDVPeEY0RHd1dHNuNE50QklkTEpzTkJk?= =?utf-8?B?dkZzYXM2bmxHcktoNlNCbFFkNE5Ick9YTUw1cFF2VmdSbWlpakRNWEVQQzZP?= =?utf-8?B?SGlwdnd6MGUwYUtDT1YyazluMTVJcUZabHBhdGp5MlROVi8xaEJsTkVxSzZJ?= =?utf-8?B?V25KVTBiZVM0cUdMcUFTVGgvdmU0VXZibTRMVVE0L0g5WkcrZlg1ZlRwYms3?= =?utf-8?B?MmhZaWoxdVFEYlExMjlvTjFIVzVJYWJURUc3VDRQcW02RzhkYzkwb1E3dTNH?= =?utf-8?B?WGlFc3F3K2tmMTlhYTVlNW5US01haS9kQ09DNVgxVEZuZmovWG1tWnhWejVM?= =?utf-8?B?SHlHb2ZvdzVtR3pYVmVORG1VWWNyZmpDRFJIUExlNGQvSjgrWmxUR2kzV0NY?= =?utf-8?B?L3AxeWZJV2x0Um5SZDdJaVZPRHMxcmZxT3J5Z1ZkNkZINWpvdz09?= 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 X-SW-Source: 2018-02/txt/msg01175.txt.bz2 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 Â