From patchwork Sat Nov 19 03:16:49 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Walter Lee X-Patchwork-Id: 696798 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org 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 3tLKmK6yzTz9t0J for ; Sat, 19 Nov 2016 14:17:20 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="MK4/4fbd"; dkim-atps=neutral DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:to :from:subject:message-id:date:mime-version:content-type :content-transfer-encoding; q=dns; s=default; b=J2yEIcX7M6jhFuCS RxrtHS8gXHSDWK0HmO2O3a7Ya+oioqbIzk4LpVbZfSn4ONzqplkt5Sphjjl8o9FS 7ZxYCYedFbhGy/F8CzyExiqzmSK7BrW6mKIzoKofXL4kGUtvveSBN1cTlrTY7HdV 1gDi1gjSAiTtlb4EI0fqzk6LRuI= 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:to :from:subject:message-id:date:mime-version:content-type :content-transfer-encoding; s=default; bh=7ZKuX8Cq0+KUza6k+IvLZ0 4kXjo=; b=MK4/4fbdo8Jl7ccfibG8Jz9UU+XoS9naFxuZkfx3M+VbwQKmW3JJmi inspp2OgKIGL7QV69C8uiH/+/5laBEX9qtPIK0AriCu9hefIYOplxQTj9m11FziZ VI/jIK22yoJ+9IMW/JlQAvDsjQHXaAnIyRQjyB+l6+fvMgxJ0UmgA= Received: (qmail 31343 invoked by alias); 19 Nov 2016 03:17:12 -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 31303 invoked by uid 89); 19 Nov 2016 03:17:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 spammy=Lee, H*r:sk:EUR03-A, H*RU:!192.168.0.101!, Hx-spam-relays-external:!192.168.0.101! X-HELO: EUR03-AM5-obe.outbound.protection.outlook.com Received: from mail-eopbgr30065.outbound.protection.outlook.com (HELO EUR03-AM5-obe.outbound.protection.outlook.com) (40.107.3.65) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 19 Nov 2016 03:16:55 +0000 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=walt@mellanox.com; Received: from [192.168.0.101] (73.253.110.34) by DB6PR0501MB2663.eurprd05.prod.outlook.com (10.172.225.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.721.10; Sat, 19 Nov 2016 03:16:50 +0000 To: From: Walter Lee Subject: [PATCH, committed] TILE-Gx: fix clzsi2 for big-endian Message-ID: <4c99b53a-b093-3651-5e3d-2cb5e13fa28f@mellanox.com> Date: Fri, 18 Nov 2016 22:16:49 -0500 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 X-ClientProxiedBy: DB5PR10CA0021.EURPRD10.PROD.OUTLOOK.COM (10.165.4.159) To DB6PR0501MB2663.eurprd05.prod.outlook.com (10.172.225.21) X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2663; 2:7mdQRlSXnLDgJNTqEGl0xQQzamf/sKZaUvt7tQmO+/g7eZEkj3HK2aJnIv+EfP4fPjgq3vlcOKmkEwxLMi7TxJj/Hj8ngCFk+0mUDMjqY+0KGFq/ZdZdvHwcFnD+YknZfp777/yUv48OUwm4MHNtY56prG1zVey0vKqk3BxAKfA=; 3:OQtap2Usniq2Yj24dEWnN8O4wKDUrBM4ELuaPzS8XAtoNyRD9aoZ5uuaOcxCWYh3JTPBhiQeVX+K/imIcXgvFUrtnDAy2qGkxzm4Dy0avr9/a1kLukOwLFcPfV41hIwnI2PWIgUGYIt8B8XJfC7PkzrNth/8tHDBA55YZA7cQ/8=; 25:xPXUMPOvJaCfzbgc98+nCSqK6gafeJwskbLCv/TpjI3RLc235gQQr5voPgOIkBlATYrqlPrA4iYpuObuwJHviNFiGI8It5ldjzSfEmq7k0SK8bT0eisz5hmszbqbO5UG59Gde426y/VJ3PfBLalUgdFOAwze6kWy/SIVk64uFkfxs3ewnQ+r1B1t/j/GauAdzOZRNwgPXniHOpDdXxPMJZlISRiePyf2yEmXAmR2vmFwH7DZKjPMQZ0ewh7EMDODv5TV6jMsivi8DyuZmhOY7Un93tlcsEZrjQ3ut+pnIHvcrJGSBWrmwKINhfn1d8CcTYt5lvNQZpFzJ8mULdeSzhs4crC2Iq2ngZKJ9NXtNQLbqACDwrTaT4UKPYMesKj32seUnZQYR3OWvt/RXbS4qJbw0erhQU5R3iXewLPXxx9gy8rLxXO87jHcS0FrJoy3YcyUcuPXcWqeJQsV57uLNg== X-MS-Office365-Filtering-Correlation-Id: 9b9ccc38-8681-4ba4-23d0-08d4102a80f1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DB6PR0501MB2663; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2663; 31:M8W5g2SCNx+a/1phY4onHaYZZ4mIHRTXyYCzkcCxeqCNur3fnAxpFTP1m3rf8+F2jCMeyUh3AHW/LX9h5OTJZku5qhuYJXODPyYGX96DLGbeWzL8PoYO+1vV5iaDE9gM1tToE8PcRh0ql7azhclvJDDXkShxWMTmCMFWZ49o18DpHYvefyAvSFoAIQpUOaVZ2uRv2ykBDNEJwLVJR7L6mzy8noozHq8O65fCBuKCLgX02UcbtMpJnULL82d3z/hmJasJqY+EPtDDEkc9/7yPfbV7ehlLrIbZq0rjCeVReJk=; 20:BDRJx0hlb/ldBms8T9CftBnrIuVEoUPyE87wSFFbe0jJn5+vsdNIotd7XSvwqVllwQqKSonz0ifQN6EI34eOWqB1QuWcomJsAw/q82ZgS2wZ4vwsMh4LC6bpVtRk0rBc+76Xzu5gz7a0JoAkzNz9m4AQRHUlKmoq7hnUEIyrW6y7hDL27VY+plamTAE8GQLnY+foKA3sg0vQjq1IjdJL8S7nw/5U0p18oDKCCBJbV1Qw7MFIrpd8+SeYLj4fXitKpzIq1AK8hEAiGMc5deyvbhQQbeEYpdsB4bPjlRi5QvYPdcc9Dg6ZKJ5mGG3npPLNIC2TmUC6LdLIDO5XvXZDXKv7tz2jCRYIkzr6DnXlZFMe4iVG+FhnJec/T87oX8p9Go45NODPJHRxSZsbN/KHymWA8Zb4k5G726mTOY5pkAGNTL9+h9ivlB6FG6Bql7Ch74MKtxDgt+2kMDsDNL80kmDsOZrlFYyZCbuRonEs9o6SM7nIkJvGxE4yByWByz4/ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6060326)(6040307)(6045199)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6061324)(6041248); SRVR:DB6PR0501MB2663; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0501MB2663; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2663; 4:nHnTgidNhBRz5iMBNkRr+/rUoEbInPAbOVxdpipnsMGv0TyCxp0CygQazQ4ver0DrP1J6LDiTGKXUAFUXjr3hv2RSaBTzyIWAuyGUufe/gF+cH7elfPrPyXbt4L0SFYB4h35xHMXNosDtmRhOw1Rg7ygl5mdeHmb5f4QCvlTwtTKPL4VW4W5/1V3+bEbegA1WjSbqsUTx1QZAXSqDYPQCxQMZfbIyAKKx1BCJt36DG5ML1FzhiES5bNiUxT0NzYCHXHdjShprd9Yz5ZpFZRC7P30Ze57i2tKhRGtY7XoPlbiQnfAWO2vXKfMZ259GcIu5Kn64vlC74q5Pwc5LL2w6hzZ4zndGvn6AU0XfDeBLd1SR1Qj0QXUt879a22WHvyzArdUfPpjgzCfd6TxJQc5hJqq6QZ2B9NVDv5yUl++3rCSx9/HXTI+IVFdltN2Zl4w1eq+QdepqmQwbhSceJlA51rDxggvYgSNBHtLE61bRLtIyh9ZoFHFOXQOSXerZjqG X-Forefront-PRVS: 0131D22242 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6049001)(6009001)(7916002)(199003)(377424004)(189002)(7846002)(68736007)(305945005)(81166006)(31696002)(86362001)(33646002)(7736002)(54356999)(117156001)(47776003)(50986999)(105586002)(38730400001)(92566002)(65806001)(31686004)(77096005)(81156014)(66066001)(42186005)(6116002)(230700001)(3846002)(106356001)(65956001)(101416001)(8676002)(107886002)(23676002)(110136003)(2351001)(2906002)(83506001)(36756003)(65826007)(64126003)(6916009)(4001350100001)(5660300001)(4001150100001)(97736004)(450100001)(50466002)(189998001); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0501MB2663; H:[192.168.0.101]; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA1MDFNQjI2NjM7MjM6aEdwTG9xcTRjZW54UHFtVTMyRFljdC82?= =?utf-8?B?ZEVmbUNMOHVVNkhmamphYlNScHVSREYwSUtzYVNzZUFNWDdWV3JZMnhUNzRk?= =?utf-8?B?ZStZRStsRlZmeUwyN3BSZFljNEl2dy9qaGRaZWpJZWVvc2VDTGtGZlFXMVli?= =?utf-8?B?WlZKd1VIL3FGeU1Eb0pDOWZsT0tLOEZCVFg4RzA4Qk8zZTdxak80cVZVNCtQ?= =?utf-8?B?SlV6TW5Rb3M4Z1BaTGxFaE5lbEVwZ293TXFFc0hrQzNHQW5lOWQ0RFJGQzZL?= =?utf-8?B?QU5IWmI2U2lYTjBjRVlGb3phYXhmdUdPczFhNUxSaGZwYUF3QnV4ZkZVK3g3?= =?utf-8?B?a09ZWUJXMTAzYUxzSkZEQnJoeklNbnJ1cUtQNXFNd3JxVzZPZzF3Sk1jcWs5?= =?utf-8?B?MDZSUmtoLzNmOHlGdVFrMklFK0d3c09XNEFITE1TQzJKUHRVQmlUR1RaaDA1?= =?utf-8?B?OHQyS1pFZEtZWFp0cFJRVFloYVUzSjZzUU1uSDZZM0oxQ2tmQkNIdHBJNW02?= =?utf-8?B?UG14K3NhTS9xQ0J5bDl0RWt4ZWFLRW8yRnVPaGxWbWRmNVM1SFArd0xacnFB?= =?utf-8?B?djQ1UXlLQ0dtemZUTmFFenltN1ltZzRacWlhUUh6aVNSR2o5S1lyM3VTYVZT?= =?utf-8?B?ZHp6MFBHN2ZYWmd1Q0VjaVErSVgxWVZjM2FmbWw5MWl3VmtiTTlsNE52WkdZ?= =?utf-8?B?WUpURTZRWlptOHpMWFRQb0l5ZWJ6TC9pWXR6Y1JiZ293SHo2czR1S0JtbEFx?= =?utf-8?B?dmFTazBnZjdpOGkrVU1iRGQxaVpVUy9uVHY2YVB6bVpGM3VQWTlISksxekFZ?= =?utf-8?B?MkRYRmQ5OEQxSFRiLzNUWjRLaVB3TzBxSklUYnR6bzBYZVVwZEdOb1RYQnZk?= =?utf-8?B?Y2tPcHc3V3VQT08vVnNmQ3BVZjdPcFhpODRQOVBPb2NGS1B5SGF1eXpzaDht?= =?utf-8?B?TjRCQzRYdGk0TTA5bGJ0NkZ0alVXVnlVYUdodis1dExPYTc3MS9XNDEvWDRK?= =?utf-8?B?TjcvVFJIcnpHQ0VKbmZMRHh2NHBtaGttQmIzZk9uaDhGcm42S290WXAwcVRG?= =?utf-8?B?dkVYMVE3ZWJIZk91di85Q2JSTGc1OGl5bmVOWFhjSTdUVmNNUTUrTHhwU09T?= =?utf-8?B?dnU1Mko4azMweDY1SHJJNWQvSnVXbzZ5L3dNM0lVb2MyWE0yaVJFaWlXeHFt?= =?utf-8?B?RmZzejBhdlFGbEZ2M0dvRnRCTG9Pbm5KQkRTb3BCcjVYTG9QQWNRRnlYTm9v?= =?utf-8?B?UTVHdmp3ZGxQNWVhQnYrZmtJQ2xLdVhKSmpUSzZzWGhQZks3TURRYm5vNG9L?= =?utf-8?B?WmNJeDU3aDlLU0czTU8xOTBmYjA0LzdIbFRCV2VGdTZ6a3NBL0syb3JWMjZj?= =?utf-8?B?ck9sSHg1cmtuV2M5ZWx1M0NqL1NKQ0MyNDZJS1BnbFdPNThNQUFOdUR6ZXox?= =?utf-8?B?YUVyZUo2eUwremEveFl0YnpKNW1UU1hpRFgxUXp4aHlPYUJhemVWSlhYbWpr?= =?utf-8?B?RGN5SHgyM3RrMXl2eXhXZEVvNC9HWTZNOFlBbXdwWVNFcGM4ZVVWeWp0YjBG?= =?utf-8?B?dFFRS3g5SHRRR0ZEZ3lseitjaUJ0THZhQ29NUzZvcXhvc2dQVm5SQ1R4NXVX?= =?utf-8?B?c2hWRmoyTjNMSWM0UkRVWmtNMEdDeGhtbHBTc3lwd0dWQjdENUZHRjdDRjcz?= =?utf-8?B?RExCUGtaWnZLRjhIVnRJbWh0eW5jUnVGSlg3Z2liL29GbEJTdkhGSHJJMHE1?= =?utf-8?B?ZmJZWnV6Q3N3bkpJZkJwc3dBPT0=?= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2663; 6:/Vpkz5Z3fPORUFCGmed/Gct1poRfeupxD1NShJeMpWp1JwKH0yqjlmLnx8narGAccUwniprHCLPLP+W3mcrUpK987OM1pxMc7OF/Wz24AxKEtuCHfbNmdfJYjjqfJbavDWNTT/+068XUodvToKrLN/4ycML0pdy0rKCmwUc3QtjdILkC/gW/ohAOkuFmUXoBBaGqpFe/UHHCC9nFU10m7ww2v2go8/ojw/oV3W3qR2SYGEmBoJWFTFuK47pZ08Egjspv/33hH2Z/hkrdnxNvQzX1fU8vj8hLa5wo3X6YlZ7hPyjQLOl5sDAbgde6Hc8q+/aMH9lloB+YyvSWQlAwGOqPrGPHublDglswDnfSj3msZANVisU47D+93gGwBs97; 5:IMjHj5y862kRctC7fd/BnlR1xbF8aWpZHWkVe+MHZdKPkX3yR2hU818TgzYGeGglrJrPlqoPXpSAmZx5UIe7iWuZ0iJX5GOoC6hQ54yLnN1/RakFP8GnOgGLRIwXT0Cx8gy+pFYmIZnB9Cwhrrzq1g==; 24:yu0xFeqF7Zro/NVpFMkyAaXDmQEnzDPT4OlQ7/1c0PzygTQjpYBmZHMhR2EZgpSpEzAJbPpWOGYvkOv1aV+T101D/8VXGCcTvAqcX46D9QY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2663; 7:42q3Ql81JxtUaMWp0V3brlol664MCth249zTYDfMUU7YZdsmea8ZLfE8DAsP4bLYYiSj3EkCD2Qz0tDSgVljrgjndBmgNMJjFOX2AGap6PV1UO6lW1TShmanwVJUi9dc6mlUXzH+RMiRm1e4X7/yY23cSSr0B9kMF8fvY7BZERkWJFZg/Gww6lOgrScI2TZWCTkuaGJhMZSlf9t5yOhBqwAB8s+JQwJYIevPus4XNypTWJd/6P7oWWdRwSsR1IfI+NB34ZPrtLZNBADYRH+h1yPejzLK0vsFTcebuFkAzSobeIPOVjPWhMJHMaU7XCnWmZ/76AQL7JpktEvcZ+PFSf6KysyCMETsE3BkMo6BKrs= X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Nov 2016 03:16:50.1127 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0501MB2663 This patch fixes the clzsi2 pattern, which was broken for big-endian. Bootstrapped and tested on tilegx hardware, also backported to GCC 6. 2016-11-18 Walter Lee * config/tilegx/tilegx.md (clzsi2): Fix for big-endian. --- a/gcc/config/tilegx/tilegx.md +++ b/gcc/config/tilegx/tilegx.md @@ -1798,19 +1798,20 @@ [(set_attr "type" "Y0")]) (define_expand "clzsi2" - [(set (match_dup 2) - (zero_extend:DI (match_operand:SI 1 "reg_or_0_operand" ""))) - (set (match_dup 2) - (ashift:DI (match_dup 2) - (const_int 32))) - (set (match_dup 2) - (clz:DI (match_dup 2))) - (set (match_operand:SI 0 "register_operand" "") - (subreg:SI (match_dup 2) 0))] - "" - { - operands[2] = gen_reg_rtx (DImode); - }) + [(set (match_operand:SI 0 "register_operand" "=r") + (clz:SI (match_operand:SI 1 "reg_or_0_operand" "rO")))] + "" + { + rtx tmp1 = gen_reg_rtx (DImode); + rtx tmp2 = gen_reg_rtx (DImode); + rtx tmp3 = gen_reg_rtx (DImode); + + emit_insn (gen_zero_extendsidi2 (tmp1, operands[1])); + emit_insn (gen_ashldi3 (tmp2, tmp1, (GEN_INT (32)))); + emit_insn (gen_clzdi2 (tmp3, tmp2)); + emit_move_insn (operands[0], gen_lowpart (SImode, tmp3)); + DONE; + }) (define_insn "ctz2" [(set (match_operand:I48MODE 0 "register_operand" "=r")