From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934731AbbIVWep (ORCPT ); Tue, 22 Sep 2015 18:34:45 -0400 Received: from mail-by2on0107.outbound.protection.outlook.com ([207.46.100.107]:44736 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1758716AbbIVWen (ORCPT ); Tue, 22 Sep 2015 18:34:43 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=scottwood@freescale.com; Message-ID: <1442961271.19102.289.camel@freescale.com> Subject: Re: [PATCH v2 22/25] powerpc32: move xxxxx_dcache_range() functions inline From: Scott Wood To: Christophe Leroy CC: Joakim Tjernlund , "paulus@samba.org" , "mpe@ellerman.id.au" , "benh@kernel.crashing.org" , "linux-kernel@vger.kernel.org" , "linuxppc-dev@lists.ozlabs.org" Date: Tue, 22 Sep 2015 17:34:31 -0500 In-Reply-To: <5601C0CC.6090503@c-s.fr> References: <1442945547.29498.50.camel@transmode.se> <1442948339.19102.270.camel@freescale.com> <1442950473.29498.54.camel@transmode.se> <1442950926.19102.280.camel@freescale.com> <1442951752.29498.58.camel@transmode.se> <1442952852.19102.281.camel@freescale.com> <1442953971.29498.76.camel@transmode.se> <1442954101.19102.286.camel@freescale.com> <1442954285.29498.79.camel@transmode.se> <5601C0CC.6090503@c-s.fr> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.0-fta1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Originating-IP: [2601:448:8100:f9f:50e1:d489:16f6:5d07] X-ClientProxiedBy: BLUPR11CA0048.namprd11.prod.outlook.com (10.141.30.16) To BY1PR03MB1483.namprd03.prod.outlook.com (25.162.210.141) X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1483;2:cM+ePECWrBsWoxp88Z/3TPRJwlFdxNl43wXnmYFdZkeL8TNRGjQQWNiA/DAPS6peIVUF7SPgWtoGL2a+eLZmNZNYaBEYDxM3vtHyWw2q6fqqq/LK/EMwByPZm1qRil2trD2PL/8cQ+vcXfYuRgIbM09rFiyCq6P5g6+V0KKruYs=;3:34Zc+5c2jf0oIatv/yMeVrMvKiFEo4g934GETOJj2votDW98iczsOesp6XDbfNIIqb2KOfoMDA+MCMrZ4i3INnGx7Zk0ddy4xBoqWVxlpJbHpH2twzU1f9s5MTA653iQ6NOiYOvldzY27tgZ3a/1eA==;25:ImIiO+lPO4uGT7ty2nuubhnyUOtOsfdze7m4GwKvWwcLlu8sZRUDAFEIFk26Xqf3dMypLsF5ENmDaJcVzN1DMlVcefVF2xOcWyroasTlEXCAxrRgFpk3C2bb0UM2bLSMH3R9n5LuvyjN+CacM8Pr1SH59jmAitiqa4r7LO1FNSXEuMeFJWkOd2XCRndtZoAytyDPl2TjSVNE0LXYTRU2yI5ts5J5C8LelOIlln3rNKRkeif8rS7DCdSioyLE5BeOPMLAgd6hjU+w2MBurMZQ6Q== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1483; X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1483;20:M75JhwDsjaXvkVe//obCPPISD4g6YeGs3q3UCfW6BRgqZPuIBsYPoHOTLAlS6TziFe8uaOBGdbwRccnmmXq59hKONfh/jsiQxidgKhTgu2hiD2uxEuq10WYqj6O5FSW+Wmm//gtomtRwrvrRoF7XE/FBca91jcv/hBHJYu8Psyan6jVgAOyBZVK9SAu/eBzyNwg6yoJewgHKPJnACuRqrZFnleNsDXgRz9lnSVZyUj70kwGX1RP97GK5UrjP8BwaWMdDOaJmN+u56vWH59Y3sRbjvE5c1KEff85wSj0BZIqpdcTK/caVsF1nadjWTV/r85byWBILqf3E11DTIA9AAVk7MS7ZHnfuPCShMFOCY7igHh9mZFX+XiH7976GUV+K+arF/wzTuEQjcS/DwyuUudtjd8TIR51hqfo+Vo1Yacw8rxGGOByjfHJhTCK0VE10FHV6q+WQfobyerRGuL1tV7tyY2DffBt0ToaYYX6EP6Joqa1AbqOOx83n0um9fN0N;4:7Z/jeBhu2YBHL40Pr6JlwGvQf1xYqKUjan3FwIw/vtihxm7Nc7bx4jW8HUl1QWVc3re1nSMcUkY39BJjYjd6kjIsu4a5B8LffvvD9hkE/xdQyCWVlYfqirc+H4mVe2r40qm3YCzuvSOydaVcaTs8S90BXFtt3T+4F6Z0BMV3BhZ+bsvNuobMpYrvcPfRqWi5qKew3/q498yAdQEHHGN3NBp+hxrMshtSw6bXZqNy3B5nYSBGUfc58c+Qilqxvms+cwjt/bXTYb/Q40s1rROyOuurjpd0GdzEfWbkXakt0fRFM/6jOyXPH81OfXDBb6KTK5WmBUs9cuooEJqy6FZcEghGKGiNym94Y2mPNklKFZA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(3002001);SRVR:BY1PR03MB1483;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1483; X-Forefront-PRVS: 0707248B64 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(979002)(6009001)(24454002)(189002)(377424004)(199003)(110136002)(50226001)(105586002)(62966003)(23676002)(101416001)(77096005)(189998001)(106356001)(64706001)(87976001)(68736005)(5001860100001)(4001540100001)(5820100001)(5001960100002)(36756003)(97736004)(5007970100001)(5004730100002)(50466002)(40100003)(5001830100001)(81156007)(33646002)(122386002)(50986999)(92566002)(2950100001)(103116003)(76176999)(93886004)(42186005)(47776003)(575784001)(86362001)(77156002)(46102003)(99106002)(3826002)(5001840100002)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:BY1PR03MB1483;H:[IPv6:2601:448:8100:f9f:50e1:d489:16f6:5d07];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTFQUjAzTUIxNDgzOzIzOlNPQVZYbW5GckFWWGcxV0xNeVh0L0F0UE5v?= =?utf-8?B?UGpZaVdzam90bGd4Tml1M0lDbWVucjFkenV3eXVZbmE2ei93dGJiNFBvQ0Q4?= =?utf-8?B?SVFQdjBNRHR6UG1POHR4bDc0aUp5OWtUWmpMMnFIMXkwSmFkdk9XdHpCbVQ1?= =?utf-8?B?VGx4MGU3NEw2eFVHeFFEL01mWTR3QmhNa3FHcjJ6Z0wrUWl2ZXlEeUxNdFk0?= =?utf-8?B?OGtwRWVmQzNodXhBNUJsd3ByVzNQb00yWjJBNkJpbWdvSmdiU095dnh5c0dk?= =?utf-8?B?SXpEaW5TNGluSmc4MzdzVldjdFkwQ054WWxmQWVLRGd0TzdOQWo5K2d4bGZv?= =?utf-8?B?d2ZnaXFjMHZaLzl5ZTlkaEdqaERrMHpOZ1JvMUV2MjlnWUhrNzkrVFBvUmty?= =?utf-8?B?Rk9DRFVHVXVSMU8wNUFKcTFQOXlJVTQrb2I2Y2tGeGo0RWx2NUtPMlhSVnFG?= =?utf-8?B?K0J4NzZUMlpjdUpzRjVGbzBlVGhMeDZsVW9BajQxTHBLZy9PejlXcWxkZjY4?= =?utf-8?B?SVo3bkFmZVI4OGJYZHVRUDNWWVR1eXNkb0pXbGVGanlUTUJIWFlCTUsySFpr?= =?utf-8?B?cGZ5SjRQdkdXZWs5UXB2eTNWeEV2VDI4SXlLcDJaYW44TEJEMnpsdk5HR1Ar?= =?utf-8?B?Ujk3QVlQaEVjdkZia3ovZWhoWis2enhFdVVSelB4akI5Z2l0RVRaU09YQWhS?= =?utf-8?B?ZVVLejNVLzRaWWVScFBiZTlDVHo0SDh6YmZKa25rTkxsUURLY0plYi9ncDdJ?= =?utf-8?B?Y29BcG02UXJpQnhPdHFZVXZZNmNzYkVqbjVtT1ExUytlNVJhY0FudlhXcjJh?= =?utf-8?B?UHlyeXBjVUlFM0V1akJHNG50MGtpNzZjUUNiem1QZU9VU1dsQk9OeTJNTGFv?= =?utf-8?B?SXpLMkZTYXlLUHBrL3lEdXcwUENWWVRzMHFKUW5SWkhVTWVmVTNLZ1FRbU1W?= =?utf-8?B?SzIwMEVIQUdCTjJZYUxuSlBzNG1wSXBCL3BUOHNJSUhNS2V0bjBURmNuL3Ri?= =?utf-8?B?VkhjOEJMSkdlL2NtZTJ6VldYdW5HQVdOYXg4d3hMeWx0K2UrdGN6UmJkbVZD?= =?utf-8?B?TDRnbi9waGNCTTV4a01NeTE0d3h2VmNieTFmV1FzZ1UyN0JOMVNYOGxFQkNW?= =?utf-8?B?dFdVdXlVZ1V3SGltZ1Iyb0VDVWRSNXNFTHNQTFdQQktZd1ppRTZRV3F1dVZq?= =?utf-8?B?S1JNRDJIdmdidVNkMUREWU9yeTFVdXRWS3F2ZzF5RDJrU3o5THlOeDc0OGw5?= =?utf-8?B?QitYN2VxUHBxdkJFL1RJL2FJeWIxZklzTGdZVWQvQjlGQlp5b1RBV0sxdUMw?= =?utf-8?B?VjkxQ2p1eUt3UFlKZS83YVB4d2FwRktrYjdnNDVoWll6NW9hVjlnN3AwYVdt?= =?utf-8?B?VXRJZjY4NkNGSEpZVUtwZVpUMGZmbk1pUUx3Zk8rSFNEVndOdmtRWlVDaDAx?= =?utf-8?B?MWQ5VTNQbGVDUlV0M05hc1pqa1MrVTh2VXR1Q0l0LzNxTllDdlQwN2RvNklm?= =?utf-8?B?TTQ0K2tlOUQ5SWVZL0JsNVZ0VmU0TCtDL1hxZ0dManhqOFJhb2dNclcvOEVI?= =?utf-8?B?RTlRa1BuQ0IwRXBsbTRqWTduVnVEUG9LTXR0TExjZGZYVFQ2M3hIa0lwcmtx?= =?utf-8?B?K2VsOGxmc2x1b3pmeDExVGN4ZjlMK01HM1RyMlpKUkZ6b1A0QTZBOE1EM21H?= =?utf-8?B?WjJaaTlKazZIRy80Qm5lK2YrNW9NY0VGbDYxZmxteEQydkoyTy9DcXBTeXFi?= =?utf-8?B?MWZaTDFSVTc2Mm96MXR1WnhJeFRSS2g0bVVtb1pxdGozb094c1M2USs4TlVG?= =?utf-8?Q?HMsAT+4097zh2?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1483;5:J4k9w+ccRQXKzq+PIyY1OWTTMsTkjJwCW1zMWkDcIinGXWsHDelkC+0DVvE2hBoZZABsKzGcJWWrJuRdvwqyzbtbWtrGyswz1ToiTB6MuKtwgh3LCoxW4bIqvBABU3UJZJzliW3IbTjtwI3ESBXYNg==;24:BbPCfjX5uHXGbDPuFJVp5LYBy95ZZsLHr6i4Ti8XA7BDghDHXwEEnKZqf3m7jA/vuBNX7VBKT2LuzYMl96If1M4rzfX7vLkAFoXBhbQvl3w=;20:Q9LmTp4+38c4iPerYzzlZwUmmOuHMsgwwFGpcGtnKjt6OS95PgvzUHUl+cY6FYOU1hhOm9Gf/MAEGEb071aJsg== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2015 22:34:40.2645 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB1483 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2015-09-22 at 22:57 +0200, Christophe Leroy wrote: > Here is what I get in asm. First one is with "if (i) mb();". We see gcc > puts a beqlr. This is the form that is closest to what we had in the > former misc_32.S > Second one if with "mb()". Here we get a branch to sync for a useless sync I was more concerned with keeping the code simple than the asm output. > c000e0ac : > c000e0ac: 54 63 00 36 rlwinm r3,r3,0,0,27 > c000e0b0: 38 84 00 0f addi r4,r4,15 > c000e0b4: 7d 23 20 50 subf r9,r3,r4 > c000e0b8: 55 29 e1 3f rlwinm. r9,r9,28,4,31 > c000e0bc: 4d 82 00 20 beqlr > c000e0c0: 7d 29 03 a6 mtctr r9 > c000e0c4: 7c 00 18 6c dcbst 0,r3 > c000e0c8: 38 63 00 10 addi r3,r3,16 > c000e0cc: 42 00 ff f8 bdnz c000e0c4 > > c000e0d0: 7c 00 04 ac sync > c000e0d4: 4e 80 00 20 blr > > c000e0d8 : > c000e0d8: 54 63 00 36 rlwinm r3,r3,0,0,27 > c000e0dc: 38 84 00 0f addi r4,r4,15 > c000e0e0: 7d 23 20 50 subf r9,r3,r4 > c000e0e4: 55 29 e1 3f rlwinm. r9,r9,28,4,31 > c000e0e8: 41 82 00 14 beq c000e0fc > > c000e0ec: 7d 29 03 a6 mtctr r9 > c000e0f0: 7c 00 18 6c dcbst 0,r3 > c000e0f4: 38 63 00 10 addi r3,r3,16 > c000e0f8: 42 00 ff f8 bdnz c000e0f0 > > c000e0fc: 7c 00 04 ac sync > c000e100: 4e 80 00 20 blr Who cares whether the case that should rarely if ever happen gets a beqlr or a branch to sync+blr? -Scott