From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 91465 invoked by alias); 4 May 2016 20:51:30 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 91438 invoked by uid 89); 4 May 2016 20:51:29 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: eu-smtp-delivery-143.mimecast.com From: Wilco Dijkstra To: Adhemerval Zanella CC: nd , 'GNU C Library' Subject: Re: [PATCH 4/4] S390: Implement mempcpy with help of memcpy. [BZ #19765] Date: Wed, 04 May 2016 20:51:00 -0000 Message-ID: References: ,<572A3B9C.3080803@linaro.org> In-Reply-To: <572A3B9C.3080803@linaro.org> x-ms-office365-filtering-correlation-id: 5f1ea735-c005-48df-8640-08d3745dd3b6 x-microsoft-exchange-diagnostics: 1;AM3PR08MB0086;5:SIouUhxYfV1Hb8gww1r8G3svO6FZhmPzVvJsd9ecYU4eNYZrbN5O6IY214AosFlmuGlId889pXkESKPfxBOFEVduZdcFPY8v+eKR0hAFjuBLAoZOZr5SN2MtGe/dTvYAM7oAMkprvGh3i53oKqX4WA==;24:4h4fnkRkDF3wpx17SI3NT1Kd9lLpeNfXf725AcZMyUv30Hr/k2S8w1fSnr5xg4RkADJf0gGGMDXEi6ueK1lhIkzyn3lBOEGCfnfMxjdLP3I=;7:xl+1S8CrfANk82MvQLfIO964/BWd7wXVkpFH3z1LSDy8HVg8qqenrT1w0XZILkrNw3JkYHu8B0dfxOd8c0xdkHyPNlaQGJQSDdISYSMr962tcBx+ZqLrzQrCnOCyC1DJtNGx47GMhpESSw3nRCgyWLRKISt0vEZLG4/0LOdJpIMjt+l1f7xZEAbafS81GtOR;20:I3+CS7acEDib1LYshR6pGNHVksKW3B3HP4q76SygrizO0INot7bikKgwj3h8OM4C5DzekgOttbE40/Bn2eAuMiIFMBJ3xX1YuxJxSSg30qpgUQhfrq9ZK/SRN/knGeUr9EPNLlt6xS05LZpniW6wKPqfXxaAVNzOOjDcgfAoZgM= x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM3PR08MB0086; nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(9101528026)(9101521098)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6055026);SRVR:AM3PR08MB0086;BCL:0;PCL:0;RULEID:;SRVR:AM3PR08MB0086; x-forefront-prvs: 093290AD39 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(24454002)(3846002)(586003)(102836003)(106116001)(81166005)(6116002)(4326007)(86362001)(3660700001)(74316001)(1220700001)(5004730100002)(87936001)(5250100002)(5008740100001)(11100500001)(3280700002)(5003600100002)(2906002)(92566002)(5002640100001)(76576001)(2900100001)(33656002)(9686002)(50986999)(76176999)(8936002)(2950100001)(110136002)(189998001)(54356999);DIR:OUT;SFP:1101;SCL:1;SRVR:AM3PR08MB0086;H:AM3PR08MB0088.eurprd08.prod.outlook.com;FPR:;SPF:None;MLV:sfv;LANG:en; spamdiagnosticoutput: 1:23 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-originalarrivaltime: 04 May 2016 20:51:11.9450 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR08MB0086 X-MC-Unique: UWmxarueTwqLziQOOl07eA-1 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2016-05/txt/msg00066.txt.bz2 Adhemerval Zanella wrote: > > But my point is all the architectures which provide an optimized mempcpy = is > though either 1. jump directly to optimized memcpy (s390 case for this pa= tchset), > 2. clonning the same memcpy implementation and adjusting the pointers (x8= 6_64) or > 3. using a similar strategy for both implementations (powerpc). Indeed, which of those are used doesn't matter much. > So for this change I am proposing compiler support won't be required beca= use both > memcpy and __mempcpy will be transformed to memcpy + s. Based on assumpt= ion that > memcpy is fast as mempcpy implementation I think there is no need to just= add > this micro-optimization to only s390, but rather make is general. GLIBC already has this optimization in the generic string header, it's just= that s390 wants to do something different again. As long as GCC isn't fixed this isn't poss= ible to support s390 without this header workaround. And we need GCC to improve so things w= ork better for all the other C libraries... In an ideal world mempcy and friends should never have been introduced as m= icro optimizations, they just cause performance and maintenance headaches for no= actual benefit... Wilco