From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29095 invoked by alias); 15 Apr 2016 12:42:07 -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 29083 invoked by uid 89); 15 Apr 2016 12:42:06 -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,SPF_PASS autolearn=ham version=3.3.2 spammy=UD:ls, UD:hi, H*c:HHH, september X-HELO: eu-smtp-delivery-143.mimecast.com From: Wilco Dijkstra To: 'GNU C Library' CC: nd , Richard Earnshaw , "Marcus Shawcroft" Subject: Re: [PATCH][AArch64] Add optimized memchr Date: Fri, 15 Apr 2016 12:42:00 -0000 Message-ID: References: In-Reply-To: x-ms-office365-filtering-correlation-id: c1e6afd9-b68d-485f-f543-08d3652b4f92 x-microsoft-exchange-diagnostics: 1;HE1PR08MB1161;5:A2F7vdRtfLbR/yNv0Ud4WxUJWCp/9ZhsWEEPwJUb/ky1pW/fl1HkO1rVT41YZ8Z8W21snok9ty4W550JnmEcvJm+s2rrET4iGUukwXZh5Q+//1mhdvaQuumU4doEgORMSh4h82xOLeJJo7nztPVVWQ==;24:Y1NXHBvzQur3KrdmfY02kmTnPXQj84QVhRa2mG0IUDMRdLzSPQULAHbLl2TLU65UAvPHgbnurUII2a9El8p3ylrmidjBeTabaBmIjTHK+o0=;20:JooK9SObpY0eJBa+z4CzSQHFHLJ/+uqeNosB3fM6gFXg6R0rcVJTQABfr/2hEjjwo90U/LvvTuH+cRlXepvoGsfNSJZC9A9qSETG05WrSRyRXyhtNQ/x+kZXDUhUwnkBmpBFEPaRL12bsdbLn5SLQA3BNFWtDrQ8ei6cXSMX46M= x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HE1PR08MB1161; nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(102415293)(102615271)(9101521026)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026);SRVR:HE1PR08MB1161;BCL:0;PCL:0;RULEID:;SRVR:HE1PR08MB1161; x-forefront-prvs: 0913EA1D60 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(377424004)(13464003)(5004730100002)(2950100001)(2900100001)(9686002)(3660700001)(5002640100001)(99936001)(189998001)(74316001)(87936001)(3280700002)(5003600100002)(76576001)(3846002)(76176999)(450100001)(54356999)(110136002)(6116002)(102836003)(1220700001)(19580405001)(19580395003)(1096002)(33656002)(2906002)(4326007)(5250100002)(586003)(86362001)(11100500001)(3900700001)(66066001)(92566002)(81166005)(50986999)(5008740100001);DIR:OUT;SFP:1101;SCL:1;SRVR:HE1PR08MB1161;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: 15 Apr 2016 12:41:48.1620 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR08MB1161 X-MC-Unique: c0hnhzLWTzSytVMTDVfMHQ-1 Content-Type: multipart/mixed; boundary="_002_AM3PR08MB00882FF0D8FF9AFA3DB3224C83680AM3PR08MB0088eurp_" X-SW-Source: 2016-04/txt/msg00385.txt.bz2 --_002_AM3PR08MB00882FF0D8FF9AFA3DB3224C83680AM3PR08MB0088eurp_ Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable Content-length: 683 ping ________________________________________ From: Wilco Dijkstra Sent: 15 December 2015 16:41 To: 'GNU C Library' Cc: nd Subject: Re: [PATCH][AArch64] Add optimized memchr ping -----Original Message----- From: Wilco Dijkstra [mailto:wdijkstr@arm.com] Sent: 25 September 2015 14:21 To: 'GNU C Library' Subject: [PATCH][AArch64] Add optimized memchr An optimized memchr was missing for AArch64. This version is similar to str= chr and is significantly faster than the C version. Passes GLIBC tests. OK for commit? ChangeLog: 2015-09-25 Wilco Dijkstra 2015-09-25 Kevin Petit * sysdeps/aarch64/memchr.S (__memchr): New file. --_002_AM3PR08MB00882FF0D8FF9AFA3DB3224C83680AM3PR08MB0088eurp_ Content-Type: text/plain; name=0001-Add-memchr.txt Content-Description: 0001-Add-memchr.txt Content-Disposition: attachment; filename="0001-Add-memchr.txt"; size=5008; creation-date="Fri, 25 Sep 2015 13:19:44 GMT"; modification-date="Tue, 15 Dec 2015 16:41:33 GMT" Content-Transfer-Encoding: base64 Content-length: 6792 LS0tCiBzeXNkZXBzL2FhcmNoNjQvbWVtY2hyLlMgfCAxNTcgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmls ZSBjaGFuZ2VkLCAxNTcgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAw NjQ0IHN5c2RlcHMvYWFyY2g2NC9tZW1jaHIuUwoKZGlmZiAtLWdpdCBhL3N5 c2RlcHMvYWFyY2g2NC9tZW1jaHIuUyBiL3N5c2RlcHMvYWFyY2g2NC9tZW1j aHIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZjY0 M2RkCi0tLSAvZGV2L251bGwKKysrIGIvc3lzZGVwcy9hYXJjaDY0L21lbWNo ci5TCkBAIC0wLDAgKzEsMTU3IEBACisvKiBtZW1jaHIgLSBmaW5kIGEgY2hh cmFjdGVyIGluIGEgbWVtb3J5IHpvbmUKKworICAgQ29weXJpZ2h0IChDKSAy MDE1IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlz IGZpbGUgaXMgcGFydCBvZiB0aGUgR05VIEMgTGlicmFyeS4KKworICAgVGhl IEdOVSBDIExpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yCisgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl cm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgICBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uOyBlaXRoZXIKKyAgIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBU aGUgR05VIEMgTGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK KyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICBMZXNzZXIgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hv dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdl bmVyYWwgUHVibGljCisgICBMaWNlbnNlIGFsb25nIHdpdGggdGhlIEdOVSBD IExpYnJhcnkuICBJZiBub3QsIHNlZQorICAgPGh0dHA6Ly93d3cuZ251Lm9y Zy9saWNlbnNlcy8+LiAgKi8KKworI2luY2x1ZGUgPHN5c2RlcC5oPgorCisv KiBBc3N1bXB0aW9uczoKKyAqCisgKiBBUk12OC1hLCBBQXJjaDY0CisgKiBO ZW9uIEF2YWlsYWJsZS4KKyAqLworCisvKiBBcmd1bWVudHMgYW5kIHJlc3Vs dHMuICAqLworI2RlZmluZSBzcmNpbgkJeDAKKyNkZWZpbmUgY2hyaW4JCXcx CisjZGVmaW5lIGNudGluCQl4MgorCisjZGVmaW5lIHJlc3VsdAkJeDAKKwor I2RlZmluZSBzcmMJCXgzCisjZGVmaW5lCXRtcAkJeDQKKyNkZWZpbmUgd3Rt cDIJCXc1CisjZGVmaW5lIHN5bmQJCXg2CisjZGVmaW5lIHNvZmYJCXg5Cisj ZGVmaW5lIGNudHJlbQkJeDEwCisKKyNkZWZpbmUgdnJlcGNocgkJdjAKKyNk ZWZpbmUgdmRhdGExCQl2MQorI2RlZmluZSB2ZGF0YTIJCXYyCisjZGVmaW5l IHZoYXNfY2hyMQl2MworI2RlZmluZSB2aGFzX2NocjIJdjQKKyNkZWZpbmUg dnJlcG1hc2sJdjUKKyNkZWZpbmUgdmVuZAkJdjYKKworLyoKKyAqIENvcmUg YWxnb3JpdGhtOgorICoKKyAqIEZvciBlYWNoIDMyLWJ5dGUgY2h1bmsgd2Ug Y2FsY3VsYXRlIGEgNjQtYml0IHN5bmRyb21lIHZhbHVlLCB3aXRoIHR3byBi aXRzCisgKiBwZXIgYnl0ZS4gRm9yIGVhY2ggdHVwbGUsIGJpdCAwIGlzIHNl dCBpZiB0aGUgcmVsZXZhbnQgYnl0ZSBtYXRjaGVkIHRoZQorICogcmVxdWVz dGVkIGNoYXJhY3RlciBhbmQgYml0IDEgaXMgbm90IHVzZWQgKGZhc3RlciB0 aGFuIHVzaW5nIGEgMzJiaXQKKyAqIHN5bmRyb21lKS4gU2luY2UgdGhlIGJp dHMgaW4gdGhlIHN5bmRyb21lIHJlZmxlY3QgZXhhY3RseSB0aGUgb3JkZXIg aW4gd2hpY2gKKyAqIHRoaW5ncyBvY2N1ciBpbiB0aGUgb3JpZ2luYWwgc3Ry aW5nLCBjb3VudGluZyB0cmFpbGluZyB6ZXJvcyBhbGxvd3MgdG8KKyAqIGlk ZW50aWZ5IGV4YWN0bHkgd2hpY2ggYnl0ZSBoYXMgbWF0Y2hlZC4KKyAqLwor CitFTlRSWSAoX19tZW1jaHIpCisJLyogRG8gbm90IGRlcmVmZXJlbmNlIHNy Y2luIGlmIG5vIGJ5dGVzIHRvIGNvbXBhcmUuICAqLworCWNiegljbnRpbiwg TCh6ZXJvX2xlbmd0aCkKKwkvKgorCSAqIE1hZ2ljIGNvbnN0YW50IDB4NDAx MDA0MDEgYWxsb3dzIHVzIHRvIGlkZW50aWZ5IHdoaWNoIGxhbmUgbWF0Y2hl cworCSAqIHRoZSByZXF1ZXN0ZWQgYnl0ZS4KKwkgKi8KKwltb3YJd3RtcDIs ICMweDA0MDEKKwltb3ZrCXd0bXAyLCAjMHg0MDEwLCBsc2wgIzE2CisJZHVw CXZyZXBjaHIuMTZiLCBjaHJpbgorCS8qIFdvcmsgd2l0aCBhbGlnbmVkIDMy LWJ5dGUgY2h1bmtzICovCisJYmljCXNyYywgc3JjaW4sICMzMQorCWR1cAl2 cmVwbWFzay40cywgd3RtcDIKKwlhbmRzCXNvZmYsIHNyY2luLCAjMzEKKwlh bmQJY250cmVtLCBjbnRpbiwgIzMxCisJYi5lcQlMKGxvb3ApCisKKwkvKgor CSAqIElucHV0IHN0cmluZyBpcyBub3QgMzItYnl0ZSBhbGlnbmVkLiBXZSBj YWxjdWxhdGUgdGhlIHN5bmRyb21lCisJICogdmFsdWUgZm9yIHRoZSBhbGln bmVkIDMyIGJ5dGVzIGJsb2NrIGNvbnRhaW5pbmcgdGhlIGZpcnN0IGJ5dGVz CisJICogYW5kIG1hc2sgdGhlIGlycmVsZXZhbnQgcGFydC4KKwkgKi8KKwor CWxkMQl7dmRhdGExLjE2YiwgdmRhdGEyLjE2Yn0sIFtzcmNdLCAjMzIKKwlz dWIJdG1wLCBzb2ZmLCAjMzIKKwlhZGRzCWNudGluLCBjbnRpbiwgdG1wCisJ Y21lcQl2aGFzX2NocjEuMTZiLCB2ZGF0YTEuMTZiLCB2cmVwY2hyLjE2Ygor CWNtZXEJdmhhc19jaHIyLjE2YiwgdmRhdGEyLjE2YiwgdnJlcGNoci4xNmIK KwlhbmQJdmhhc19jaHIxLjE2Yiwgdmhhc19jaHIxLjE2YiwgdnJlcG1hc2su MTZiCisJYW5kCXZoYXNfY2hyMi4xNmIsIHZoYXNfY2hyMi4xNmIsIHZyZXBt YXNrLjE2YgorCWFkZHAJdmVuZC4xNmIsIHZoYXNfY2hyMS4xNmIsIHZoYXNf Y2hyMi4xNmIJCS8qIDI1Ni0+MTI4ICovCisJYWRkcAl2ZW5kLjE2YiwgdmVu ZC4xNmIsIHZlbmQuMTZiCQkJLyogMTI4LT42NCAqLworCW1vdglzeW5kLCB2 ZW5kLjJkWzBdCisJLyogQ2xlYXIgdGhlIHNvZmYqMiBsb3dlciBiaXRzICov CisJbHNsCXRtcCwgc29mZiwgIzEKKwlsc3IJc3luZCwgc3luZCwgdG1wCisJ bHNsCXN5bmQsIHN5bmQsIHRtcAorCS8qIFRoZSBmaXJzdCBibG9jayBjYW4g YWxzbyBiZSB0aGUgbGFzdCAqLworCWIubHMJTChtYXNrbGFzdCkKKwkvKiBI YXZlIHdlIGZvdW5kIHNvbWV0aGluZyBhbHJlYWR5PyAqLworCWNibnoJc3lu ZCwgTCh0YWlsKQorCitMKGxvb3ApOgorCWxkMQl7dmRhdGExLjE2YiwgdmRh dGEyLjE2Yn0sIFtzcmNdLCAjMzIKKwlzdWJzCWNudGluLCBjbnRpbiwgIzMy CisJY21lcQl2aGFzX2NocjEuMTZiLCB2ZGF0YTEuMTZiLCB2cmVwY2hyLjE2 YgorCWNtZXEJdmhhc19jaHIyLjE2YiwgdmRhdGEyLjE2YiwgdnJlcGNoci4x NmIKKwkvKiBJZiB3ZSdyZSBvdXQgb2YgZGF0YSB3ZSBmaW5pc2ggcmVnYXJk bGVzcyBvZiB0aGUgcmVzdWx0ICovCisJYi5scwlMKGVuZCkKKwkvKiBVc2Ug YSBmYXN0IGNoZWNrIGZvciB0aGUgdGVybWluYXRpb24gY29uZGl0aW9uICov CisJb3JyCXZlbmQuMTZiLCB2aGFzX2NocjEuMTZiLCB2aGFzX2NocjIuMTZi CisJYWRkcAl2ZW5kLjJkLCB2ZW5kLjJkLCB2ZW5kLjJkCisJbW92CXN5bmQs IHZlbmQuMmRbMF0KKwkvKiBXZSdyZSBub3Qgb3V0IG9mIGRhdGEsIGxvb3Ag aWYgd2UgaGF2ZW4ndCBmb3VuZCB0aGUgY2hhcmFjdGVyICovCisJY2J6CXN5 bmQsIEwobG9vcCkKKworTChlbmQpOgorCS8qIFRlcm1pbmF0aW9uIGNvbmRp dGlvbiBmb3VuZCwgbGV0J3MgY2FsY3VsYXRlIHRoZSBzeW5kcm9tZSB2YWx1 ZSAqLworCWFuZAl2aGFzX2NocjEuMTZiLCB2aGFzX2NocjEuMTZiLCB2cmVw bWFzay4xNmIKKwlhbmQJdmhhc19jaHIyLjE2Yiwgdmhhc19jaHIyLjE2Yiwg dnJlcG1hc2suMTZiCisJYWRkcAl2ZW5kLjE2Yiwgdmhhc19jaHIxLjE2Yiwg dmhhc19jaHIyLjE2YgkJLyogMjU2LT4xMjggKi8KKwlhZGRwCXZlbmQuMTZi LCB2ZW5kLjE2YiwgdmVuZC4xNmIJCQkvKiAxMjgtPjY0ICovCisJbW92CXN5 bmQsIHZlbmQuMmRbMF0KKwkvKiBPbmx5IGRvIHRoZSBjbGVhciBmb3IgdGhl IGxhc3QgcG9zc2libGUgYmxvY2sgKi8KKwliLmhpCUwodGFpbCkKKworTCht YXNrbGFzdCk6CisJLyogQ2xlYXIgdGhlICgzMiAtICgoY250cmVtICsgc29m ZikgJSAzMikpICogMiB1cHBlciBiaXRzICovCisJYWRkCXRtcCwgY250cmVt LCBzb2ZmCisJYW5kCXRtcCwgdG1wLCAjMzEKKwlzdWIJdG1wLCB0bXAsICMz MgorCW5lZwl0bXAsIHRtcCwgbHNsICMxCisJbHNsCXN5bmQsIHN5bmQsIHRt cAorCWxzcglzeW5kLCBzeW5kLCB0bXAKKworTCh0YWlsKToKKwkvKiBDb3Vu dCB0aGUgdHJhaWxpbmcgemVyb3MgdXNpbmcgYml0IHJldmVyc2luZyAqLwor CXJiaXQJc3luZCwgc3luZAorCS8qIENvbXBlbnNhdGUgdGhlIGxhc3QgcG9z dC1pbmNyZW1lbnQgKi8KKwlzdWIJc3JjLCBzcmMsICMzMgorCS8qIENoZWNr IHRoYXQgd2UgaGF2ZSBmb3VuZCBhIGNoYXJhY3RlciAqLworCWNtcAlzeW5k LCAjMAorCS8qIEFuZCBjb3VudCB0aGUgbGVhZGluZyB6ZXJvcyAqLworCWNs eglzeW5kLCBzeW5kCisJLyogQ29tcHV0ZSB0aGUgcG90ZW50aWFsIHJlc3Vs dCAqLworCWFkZAlyZXN1bHQsIHNyYywgc3luZCwgbHNyICMxCisJLyogU2Vs ZWN0IHJlc3VsdCBvciBOVUxMICovCisJY3NlbAlyZXN1bHQsIHh6ciwgcmVz dWx0LCBlcQorCXJldAorCitMKHplcm9fbGVuZ3RoKToKKwltb3YJcmVzdWx0 LCAjMAorCXJldAorRU5EIChfX21lbWNocikKK3dlYWtfYWxpYXMgKF9fbWVt Y2hyLCBtZW1jaHIpCitsaWJjX2hpZGRlbl9idWlsdGluX2RlZiAobWVtY2hy KQotLSAKMS45LjEKCg== --_002_AM3PR08MB00882FF0D8FF9AFA3DB3224C83680AM3PR08MB0088eurp_--