From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 114033 invoked by alias); 2 Oct 2017 19:49:57 -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 113997 invoked by uid 89); 2 Oct 2017 19:49:56 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.8 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=tot, hatch X-Spam-User: qpsmtpd, 2 recipients X-HELO: NAM01-BN3-obe.outbound.protection.outlook.com Received: from mail-bn3nam01on0077.outbound.protection.outlook.com (HELO NAM01-BN3-obe.outbound.protection.outlook.com) (104.47.33.77) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 02 Oct 2017 19:49:55 +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 CY4PR07MB3541.namprd07.prod.outlook.com (10.171.252.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Mon, 2 Oct 2017 19:49:52 +0000 Message-ID: <1506973789.15649.62.camel@cavium.com> Subject: Re: [PATCH] detect incompatible aliases (PR c/81854) From: Steve Ellcey Reply-To: sellcey@cavium.com To: Martin Sebor , Joseph Myers Cc: Gcc Patch List , Jonathan Wakely , libstdc++ Date: Mon, 02 Oct 2017 19:49:00 -0000 In-Reply-To: <1505921857.2286.101.camel@cavium.com> References: <61673e8d-6f5c-9bc0-dcf8-75eee71f98de@gmail.com> <1505921857.2286.101.camel@cavium.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: MWHPR2001CA0008.namprd20.prod.outlook.com (10.172.58.146) To CY4PR07MB3541.namprd07.prod.outlook.com (10.171.252.162) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 01ad8cbb-c857-4b6a-1f20-08d509cebfb4 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254152)(2017052603199)(201703131423075)(201703031133081)(201702281549075);SRVR:CY4PR07MB3541; X-Microsoft-Exchange-Diagnostics: 1;CY4PR07MB3541;3:qss4R2Nj8UeTbibrUNvWQSlUGw81hHoAejBHTr9SZ5K/HOU63D8NKZRgiOGzOqvl0OyqHLMKOHot3cwUhmBY20j6DbhE8yit8f/QKPAPHWEQinTTigH5g6Xtv7BFLXebiQZTTq24M9noPArZsPigzRxP9kiK2jUYwMpspYCvP4EenBKVZveLHOrI6aQxJLF/ljcOE/nBJHJuEglJMXZJfuZiI1Osm1WO41/FL+ko0/pLf8/p4gqIwNitqzmJdBzx;25:J6rGHwtB6dQU3OAyEg63woumoe7yTcD3WH0W6Z+Md0g/UVE7Y0QCLgav3xvifORd4NEMfJlic6XYpWTvYaSTfGtbQOKHotSkLqgBkD1k2ITKtxZCHEXrAAVlvXyTqyEiz4s3D10ODFQPEhC+aW34iPxczqewf0TgiANIBj+uYnX1NagILLIRz70my0iaEfLZvq85dR1jTCqtsL+t9s1smBuEwJOQl86ep5Kt3cGVDbZY/7wrqez0obPTU8LeS8w973d9bruQidLFJQt86+yH9huhvn9lWhx81JJETJtUfwy//irQH8+eKnsUcQSP3hCfxhd5hvRb3/Jq9bWdwsLBpA==;31:GuHOyyoeYe26AAXzMZaz6m3TKgWNpBeZ34OuDFkDP9a4sl3aGzyvKcDMTpq3D8ocoYGaFu1DyfNnsgR3Bnf7Znw+wQbdoDSFxOENIDMx9OchVd/WbG+d83LqsJx88WTaksLU9o/aXyMm5wofN9nYGaMC7Oug8KHoe/5DrIM1pomGxMa8b3mR+RCx5oFrvaDppSh8LEuicZI53sH5XJRDiQyqpDkzftYv1dKkH0/9+zk= X-MS-TrafficTypeDiagnostic: CY4PR07MB3541: X-Microsoft-Exchange-Diagnostics: 1;CY4PR07MB3541;20:I/LNe3AEVkf54033dB6OPxGbmQTPnY916LyrAWo4u5GGCRSn5BfkefFhC1w4cYwRPfn6GwXoqESCJDvZcMVGXCYNAcf2qQnk204fya7UExDpwEzfHwanXhTD0J6dldg9iSuo8LnG4sNI/JW88Zyu/vVm69Ja/5eS63M1ISAtWxO1GFoHWpZ6StFVEOup+ng8nSSZwjuI2pgJ0jYKMSGjLgC7aYy5b9U3S+jwz/gs6CYCObZALVEdqFivy/2+akNcCmzuAQzYtthVWUNTN+nHlXPTExAclwkAxJtD3nGNDpUEtP55PVOTx9yvt1wUdS5MMoTXUGxSeNN3pR88XUAvKmdCKVkujxXPJ6I5skLhFnkDjUAQmqJ5yXMPG1NPb2dV8H04zoX/eZacW0p6k+o0GipkiFNUdsHDsvabQJxc3ebA8v8KWh7bJu8JQRQ+TXVYAPInC9G0Tsb+RyRyqo8eXPOI01OpbYz7FWZOdM1+AQnxrAN/ZLS8LZxNmiYGopW7;4:mRwIkyh1FFo8f88AIJfU2QkGn5Tr/tLMXA8YpQvAasY02bJZCwdgNcLBjC8k69VhUS0CzepqsLxTZFm2yK1M618i0ogcsIlXhTqnjcUpp5yZSEaxoWL1gB4CvlZAmjlWFTkJ/zOUFcJK7CgMp/7iWupiIoLPO3ULxGcvTV1+XEKAJvFCKf+lGMMsciGZvMonkiG57i01kOV2Mg1UISn3NbR+vo6r/MhOdSaSZY+6gIrvqZMc3rI6rtMcLAJTNIiE X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6041248)(20161123562025)(20161123555025)(20161123564025)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:CY4PR07MB3541;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:CY4PR07MB3541; X-Forefront-PRVS: 0448A97BF2 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(376002)(346002)(377454003)(24454002)(189002)(377424004)(199003)(53546010)(3450700001)(305945005)(54906003)(5660300001)(2870700001)(110136005)(81166006)(81156014)(8676002)(478600001)(6512007)(66066001)(316002)(25786009)(7736002)(16526017)(36756003)(47776003)(69596002)(72206003)(2950100002)(6666003)(2906002)(50226002)(3846002)(6116002)(103116003)(68736007)(6486002)(23676002)(50466002)(33646002)(39060400002)(8936002)(101416001)(50986999)(76176999)(5820100001)(97736004)(189998001)(43066003)(53936002)(229853002)(105586002)(106356001)(6246003)(53416004)(4326008)(6506006)(99106002);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR07MB3541;H:sellcey-dt.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjA3TUIzNTQxOzIzOlZiQTEwMHZocVdrZmw0TGJwd0VnWHRsYzBz?= =?utf-8?B?WmNqVUEyOFJ2cEl3dHVBTWZ0RDZyT0hmck02WmRjOFlYSGtTamQ3YjlhVnEy?= =?utf-8?B?dTFSY3dteFd5bFpsd0dlWHdHUi9iNUNKQm1Ld3htbjc3bzNPbzJvZVY1VG5t?= =?utf-8?B?MlJUSHcwMGllcDN6dkk5eG5pUVVwOUtBTEZsR0xyTlk2NDNOUVZBMTBuWEtF?= =?utf-8?B?VSs5ZnZoM0JiVm13SkhEcmh2RTYwd1duNTZrcFhXL1A5UjBLQ1dJaWpubnJW?= =?utf-8?B?SGlBcnFTVjVodWMxQnZLNnpSQytweWVGYXdXREV6NUxFK2pINWZzSnN0WTNN?= =?utf-8?B?MGJQQ3FrMk1DVS9DUnY0ejBHaTF3ZWpKcmdRV0dnYUhBclB3Zmc3WThtNzg5?= =?utf-8?B?alRONmlqT1FZNW5QZ3M0U3BCWERQSFBsTUJSNjZzRGZpNTVtcVhXNVJEcUtX?= =?utf-8?B?aCsxUHN5WnNjQU00Y1l4SVZHRGdCRFpaMVpwNDlrRGZLMnpyMjErNThMdzF2?= =?utf-8?B?WGg4UFpyWFVCeFd3ZUMyMkxkeW1zYXpDT053azZWTzFGRnJ0b0dzbDVZMVZ3?= =?utf-8?B?d2Nwa1FLQXBYVWF3VWEzT0t1ZGNZQUdoakFqbkkwV2YxdXZsMXFRaGI1QWZD?= =?utf-8?B?NGlLYWdnbWNEQ1FIWjZaRjUrUHJlRHVUTFBhNEJhWUUvQzA2bis5NDc0eEt2?= =?utf-8?B?NEw1RE1GSXVzSlQrckhQYUVnMFlGYVgyTXNWMFdPR3pSV0tQbGtuUG5lVWM0?= =?utf-8?B?THZvVDN0VWpwRTJLYWZ2d1VLTHFYdks1Mm5wS3ZBNHhnYkdVSSt0ME5LNlov?= =?utf-8?B?VU5MN2RkMWM1RzRYdE1WWEJPMlpPY3J6ZnBUODJIeE9rdW5RRUVWYnluVmQx?= =?utf-8?B?T2FjOFB1b2o1VGg3Z0c1MkNLMk1mRjRwN0ozcXhIR1F5dUp6SUtET0NoTkZO?= =?utf-8?B?M0pNLzlPYk9IVC9reThBMWFsMzBZUVJlNk1IYXV4MDQvRUFVS2JiM1lPY01p?= =?utf-8?B?TWlFdVZ1U3VHN0UrNHFNTzFWYUx1S05YWU1xS0dhOTBNKy9RTExmWitHMFNl?= =?utf-8?B?YVhmYUZOektCeTZVbGJTUHlxV2JQalJSajc4ZTcyK0ZYYVN0eW1hVDFpRkVk?= =?utf-8?B?N0E0U3dITk1OaFZPbGxZZi9NMVpCV2VJNDZjVE5LbE9lblYzU2pkdHh4ZnhT?= =?utf-8?B?TjBCcUVDYVR1Z2gyb3NaT2RxQUxlSG0ybjM5RjdmUmZ1ZmRLNUQvUm1WakIx?= =?utf-8?B?ZlBTbVlBRTg1V2xBTU9zSTRVeDM1N2xFdldSc0R1K1FmeVNYOE9rV0trRjBV?= =?utf-8?B?MkUvc3FPY291K0F0WDBOUWEvUWthVHgzN09RdXRLakxxcHVsVXBCRXZ1QXps?= =?utf-8?B?cCt4ZUlOaWtVVEJTcVBGQXNMSHFrMUdIZkFDdDF1b2dzSWRCRE9xbGI4emhi?= =?utf-8?B?VnRWRm1ZSGkwR1JhSDNNdzlTUUQ4ZHlTaldwMWZsaU9MWTllMVdBamRwUlRL?= =?utf-8?B?aUFjNjNWSzYxOUNubEF6Uy9kR0wvRkgxTUc4L2xRUCtoWXV0SWFXeE5UV01Y?= =?utf-8?B?MVJMRUlCNUFEcjJhY2hLVEx6c0ZQNVFkMWFoc2JFaFVYQnpJUjNlVS9qeXd0?= =?utf-8?B?Nlp1dVhxaTRodUhmZ1p2dENSVEcyd0RuUmUvYVE0L01KS1daSmo5b0JkQlBm?= =?utf-8?B?aWdubGdqcFEwL2R3dzJlTXdDYXVIUkFJaUM0M1c3UHhaUmdFWTlVSmFoWktI?= =?utf-8?B?N3JESUtsYkxMa09CcDBPN0lZelhjQkZBUnhXUkpqMkFLUFNaTDRsN2RleVQv?= =?utf-8?B?MzFRd3dSL0QrVW5NSVFNT2JHdnZUTHVMWXFmY1N2b0R4c3JPWW81RnJ5KzR4?= =?utf-8?Q?USraLeyq2tY=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY4PR07MB3541;6:Z3yo6Kr+TImScVKMdAj0bU9prSNnRptwQWTw5N4ArVTTPsULRMKFZc1y/7IbDh53EW/cjk6qgHiO0MEN9oun49Cvo01lqUEPfTv9IpP9B1bupMNm6CemoawS2x0NYVMiN/ASGvOMHJoc/NEPhf3DqDF6agK/85DBxvmF15IolEUuYjBCzq+riuJrrbj0Uzgz0ZkusDZu9yB62XIum7ZV9qUt6l51/WEuN0YsCq9mzxh6jBR/icu4mQIGIj0MuV/VupWOM1wfsg4C1yXOcpSrUmlB2fSLCCPMPIp6Zg0yi9NkC9njEQrWTB3cJl3RcCp0u0Hyn8oH7hO59nM3DOnRUg==;5:ArJnKyKfAy260W5S2AkYZ4zLn8qrcovKwzRQ+08BZvEx9KfAoGEM7EVxroAiOfwLt0p8iFzdhxe8g+ug8sFU9tiHqMuC1Hylyp0p0bIoEQTC9Oa8a9r1qnjfJcyXs8qsGlrA0GVax4nANjAFw86rkw==;24:1fYMOeS7pvftth8nCxHG0xGpV6B5GrzNyDaD/+w85VJUHocLtamj+jNk8/8GGlr2WpPTQPOd8uws664CiRm+OE+9BhLd2UuLMX4DSDGOyZo=;7:d4sFRrOm7SgswFfLTZRyvvVJ2vGTQyFvTcn3kyCYDbZGTLG+BwuLnzO8kAni7nXr9NXlfKY9Yda6IzOR1mtGv9AOSCGmvYDRnZOesSDe7mamaVC9oApQF5bQ1znRXcTm36qm/9r5EjRfzgHuBD4lWGCce1OPV5OMK7WT6WcU8YAw2EW/gqcJX/ihX+q3wwNrxmQseYAiAo0lRCUTPf25PM/1Sg099nPMidthfz0Tr/0= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2017 19:49:52.3208 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR07MB3541 X-SW-Source: 2017-10/txt/msg00077.txt.bz2 On Wed, 2017-09-20 at 08:37 -0700, Steve Ellcey wrote: > On Tue, 2017-09-19 at 09:16 -0600, Martin Sebor wrote: > > On 09/18/2017 03:44 PM, Joseph Myers wrote: > > > On Mon, 18 Sep 2017, Martin Sebor wrote: > > > > It's meant as an escape hatch.  It allows declaring > > > > compatibility > > > > symbols, for example by the libstdc++ _GLIBCXX_3_4_SYMVER macro > > > > defined in libstdc++-v3/src/c++98/compatibility.cc.  The macro > > > > is > > > > used to declare compatibility functions of all sorts of > > > > incompatible > > > > types.  The originally posted patch had libstdc++ disable the > > > > warning > > > > for the file with the symbols but Jonathan preferred this > > > > solution. > > > > > > > > It could perhaps be tightened up to detect some of the cases on > > > > your > > > > list but I'm not sure it's worth the effort and added > > > > complexity. > > > > Let me know if you feel differently (or have a different > > > > suggestion), > > > > otherwise I will go ahead and commit the patch as is. > > > Please add a comment explaining this reasoning and commit the > > > patch. > > Done in r252976. > > > > Thanks > > Martin > This patch is causing my gcc/glibc ToT build to fail on aarch64.  I am > not sure if everything should be working at this point or not or if > there is more that needs to be done.  The problem is with the memcpy, > memmove, etc. ifuncs on aarch64. > > Steve Ellcey > sellcey@cavium.com Martin, I think there is more fallout from this patch.  The libatomic library can use ifuncs and right now it is not working on aarch64 (testing a proposed patch I sent) because the ifunc check fails due to the new warnings.  I believe this can be reproduced with ToT on x86 or arm as they use ifuncs in the checked in sources but I have not tried that yet.  Note that the build does not fail, it is just that the check for ifunc support fails and thus the library is built without them. Steve Ellcey sellcey@cavium.com configure:14698: checking whether the target supports the ifunc attribute configure:14720: /home/sellcey/gcc-libatomic/obj/gcc/./gcc/xgcc -B/home/sellcey/gcc-libatomic/obj/gcc/./gcc/ -B/home/sellcey/gcc- libatomic/install/aarch64-unknown-linux-gnu/bin/ -B/home/sellcey/gcc- libatomic/install/aarch64-unknown-linux-gnu/lib/ -isystem /home/sellcey/gcc-libatomic/install/aarch64-unknown-linux-gnu/include -isystem /home/sellcey/gcc-libatomic/install/aarch64-unknown-linux- gnu/sys-include    -o conftest -g -O2  -pthread -Werror   conftest.c  >&5 conftest.c:68:9: error: 'foo' 'ifunc' resolver should return a function pointer [-Werror=attributes]      int foo(void) __attribute__((ifunc("foo_sel")));          ^~~ conftest.c:67:11: note: resolver declaration here      void *foo_sel(void) { return foo_alt; }            ^~~~~~~ cc1: all warnings being treated as errors configure:14720: $? = 1