From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id 3lPYI4cNGmRMPxYAWB0awg (envelope-from ) for ; Tue, 21 Mar 2023 16:03:19 -0400 Received: by simark.ca (Postfix, from userid 112) id 836C91E223; Tue, 21 Mar 2023 16:03:19 -0400 (EDT) Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=lists.lttng.org header.i=@lists.lttng.org header.a=rsa-sha256 header.s=default header.b=dVStg+VG; dkim-atps=neutral X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,NICE_REPLY_A,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.lttng.org (lists.lttng.org [167.114.26.123]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id CB2E21E110 for ; Tue, 21 Mar 2023 16:03:18 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=lists.lttng.org; s=default; t=1679428998; bh=suUscZv3shqUOapPU1avMTyGBjF8O8TLSMsR05QjUq8=; h=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=dVStg+VGySMqVlhqZa+6eWT+4XzhYm2pVKpbzRpvueurBlrjlgljhChkZ71Nr6Iq/ p1ChW0rZJfbjvye5yT9UOmlJhB/NW7l5iCAgvxVncYNBXS3jnKo1gfB9hQJIWVti6t Wg7fYOgDYOrYPkb4tLtEQfvhIGyZSoVPDwAlH3WQJ1mBUBwa9kYE6s1peyNwzjPhm1 2ZL1fwB7mJj8f0v/0ZFul46kcdibQ4TbQPtgO5UpaR9z+KdJ+FjhMwXfT29IMPuRns pIkV4anuElYjo2bd0Kf51PCwtSQHPdoOnhzeg+XGr3mvbD03EJ5kkEc0pVawFX8sXb VrbD/hIKeg3bA== Received: from lists-lttng01.efficios.com (localhost [IPv6:::1]) by lists.lttng.org (Postfix) with ESMTP id 4Ph2bV0mBqz2HBx; Tue, 21 Mar 2023 16:03:18 -0400 (EDT) Received: from smtpout.efficios.com (smtpout.efficios.com [167.114.26.122]) by lists.lttng.org (Postfix) with ESMTPS id 4Ph2bR1xp6z2HBt for ; Tue, 21 Mar 2023 16:03:15 -0400 (EDT) Received: from [172.16.0.188] (192-222-143-198.qc.cable.ebox.net [192.222.143.198]) by smtpout.efficios.com (Postfix) with ESMTPSA id 4Ph2bQ2TV4zsdN; Tue, 21 Mar 2023 16:03:14 -0400 (EDT) Message-ID: <5400cfb8-152f-184c-96ae-2565954fb558@efficios.com> Date: Tue, 21 Mar 2023 16:03:26 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Content-Language: en-US To: =?UTF-8?B?T25kxZllaiBTdXLDvQ==?= , lttng-dev@lists.lttng.org References: <20230321133102.1054238-1-ondrej@sury.org> <20230321133102.1054238-3-ondrej@sury.org> In-Reply-To: <20230321133102.1054238-3-ondrej@sury.org> Subject: Re: [lttng-dev] [PATCH 2/7] Use gcc __atomic builtis for implementation X-BeenThere: lttng-dev@lists.lttng.org X-Mailman-Version: 2.1.39 Precedence: list List-Id: LTTng development list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Mathieu Desnoyers via lttng-dev Reply-To: Mathieu Desnoyers Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" T24gMjAyMy0wMy0yMSAwOTozMCwgT25kxZllaiBTdXLDvSB2aWEgbHR0bmctZGV2IHdyb3RlOgo+ IFJlcGxhY2UgdGhlIGN1c3RvbSBhc3NlbWJseSBjb2RlIGluIGluY2x1ZGUvdXJjdS91YXRvbWlj LyB3aXRoIF9fYXRvbWljCj4gYnVpbHRpbnMgcHJvdmlkZWQgYnkgQzExLWNvbXBhdGlibGUgY29t cGlsZXIuCj4gCj4gU2lnbmVkLW9mZi1ieTogT25kxZllaiBTdXLDvSA8b25kcmVqQHN1cnkub3Jn Pgo+IC0tLQo+ICAgaW5jbHVkZS9NYWtlZmlsZS5hbSAgICAgICAgICAgIHwgIDE2IC0KPiAgIGlu Y2x1ZGUvdXJjdS91YXRvbWljLmggICAgICAgICB8ICA4NCArKystLQo+ICAgaW5jbHVkZS91cmN1 L3VhdG9taWMvYWFyY2g2NC5oIHwgIDQxIC0tLQo+ICAgaW5jbHVkZS91cmN1L3VhdG9taWMvYWxw aGEuaCAgIHwgIDMyIC0tCj4gICBpbmNsdWRlL3VyY3UvdWF0b21pYy9hcm0uaCAgICAgfCAgNTcg LS0tCj4gICBpbmNsdWRlL3VyY3UvdWF0b21pYy9nY2MuaCAgICAgfCAgNDYgLS0tCj4gICBpbmNs dWRlL3VyY3UvdWF0b21pYy9nZW5lcmljLmggfCA2MTMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQo+ICAgaW5jbHVkZS91cmN1L3VhdG9taWMvaHBwYS5oICAgIHwgIDEwIC0KPiAgIGlu Y2x1ZGUvdXJjdS91YXRvbWljL2lhNjQuaCAgICB8ICA0MSAtLS0KPiAgIGluY2x1ZGUvdXJjdS91 YXRvbWljL202OGsuaCAgICB8ICA0NCAtLS0KPiAgIGluY2x1ZGUvdXJjdS91YXRvbWljL21pcHMu aCAgICB8ICAzMiAtLQo+ICAgaW5jbHVkZS91cmN1L3VhdG9taWMvbmlvczIuaCAgIHwgIDMyIC0t Cj4gICBpbmNsdWRlL3VyY3UvdWF0b21pYy9wcGMuaCAgICAgfCAyMzcgLS0tLS0tLS0tLS0tCj4g ICBpbmNsdWRlL3VyY3UvdWF0b21pYy9yaXNjdi5oICAgfCAgNDQgLS0tCj4gICBpbmNsdWRlL3Vy Y3UvdWF0b21pYy9zMzkwLmggICAgfCAxNzAgLS0tLS0tLS0tCj4gICBpbmNsdWRlL3VyY3UvdWF0 b21pYy9zcGFyYzY0LmggfCAgODEgLS0tLS0KPiAgIGluY2x1ZGUvdXJjdS91YXRvbWljL3RpbGUu aCAgICB8ICA0MSAtLS0KPiAgIGluY2x1ZGUvdXJjdS91YXRvbWljL3g4Ni5oICAgICB8IDY0NiAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIDE4IGZpbGVzIGNoYW5nZWQsIDUz IGluc2VydGlvbnMoKyksIDIyMTQgZGVsZXRpb25zKC0pCj4gICBkZWxldGUgbW9kZSAxMDA2NDQg aW5jbHVkZS91cmN1L3VhdG9taWMvYWFyY2g2NC5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5j bHVkZS91cmN1L3VhdG9taWMvYWxwaGEuaAo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUv dXJjdS91YXRvbWljL2FybS5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91cmN1L3Vh dG9taWMvZ2NjLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VyY3UvdWF0b21pYy9n ZW5lcmljLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VyY3UvdWF0b21pYy9ocHBh LmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VyY3UvdWF0b21pYy9pYTY0LmgKPiAg IGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VyY3UvdWF0b21pYy9tNjhrLmgKPiAgIGRlbGV0 ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3VyY3UvdWF0b21pYy9taXBzLmgKPiAgIGRlbGV0ZSBtb2Rl IDEwMDY0NCBpbmNsdWRlL3VyY3UvdWF0b21pYy9uaW9zMi5oCj4gICBkZWxldGUgbW9kZSAxMDA2 NDQgaW5jbHVkZS91cmN1L3VhdG9taWMvcHBjLmgKPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCBpbmNs dWRlL3VyY3UvdWF0b21pYy9yaXNjdi5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91 cmN1L3VhdG9taWMvczM5MC5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91cmN1L3Vh dG9taWMvc3BhcmM2NC5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91cmN1L3VhdG9t aWMvdGlsZS5oCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgaW5jbHVkZS91cmN1L3VhdG9taWMveDg2 LmgKPiAKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9NYWtlZmlsZS5hbSBiL2luY2x1ZGUvTWFrZWZp bGUuYW0KPiBpbmRleCBiYTFmZTYwLi41M2EyOGZkIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvTWFr ZWZpbGUuYW0KPiArKysgYi9pbmNsdWRlL01ha2VmaWxlLmFtCj4gQEAgLTU5LDI0ICs1OSw4IEBA IG5vYmFzZV9pbmNsdWRlX0hFQURFUlMgPSBcCj4gICAJdXJjdS9zeXNjYWxsLWNvbXBhdC5oIFwK PiAgIAl1cmN1L3N5c3RlbS5oIFwKPiAgIAl1cmN1L3Rscy1jb21wYXQuaCBcCj4gLQl1cmN1L3Vh dG9taWMvYWFyY2g2NC5oIFwKPiAtCXVyY3UvdWF0b21pYy9hbHBoYS5oIFwKPiAgIAl1cmN1L3Vh dG9taWNfYXJjaC5oIFwKPiAtCXVyY3UvdWF0b21pYy9hcm0uaCBcCj4gLQl1cmN1L3VhdG9taWMv Z2NjLmggXAo+IC0JdXJjdS91YXRvbWljL2dlbmVyaWMuaCBcCj4gICAJdXJjdS91YXRvbWljLmgg XAo+IC0JdXJjdS91YXRvbWljL2hwcGEuaCBcCj4gLQl1cmN1L3VhdG9taWMvaWE2NC5oIFwKPiAt CXVyY3UvdWF0b21pYy9tNjhrLmggXAo+IC0JdXJjdS91YXRvbWljL21pcHMuaCBcCj4gLQl1cmN1 L3VhdG9taWMvbmlvczIuaCBcCj4gLQl1cmN1L3VhdG9taWMvcHBjLmggXAo+IC0JdXJjdS91YXRv bWljL3Jpc2N2LmggXAo+IC0JdXJjdS91YXRvbWljL3MzOTAuaCBcCj4gLQl1cmN1L3VhdG9taWMv c3BhcmM2NC5oIFwKPiAtCXVyY3UvdWF0b21pYy90aWxlLmggXAo+IC0JdXJjdS91YXRvbWljL3g4 Ni5oIFwKPiAgIAl1cmN1L3VyY3UtYnAuaCBcCj4gICAJdXJjdS91cmN1LWZ1dGV4LmggXAo+ICAg CXVyY3UvdXJjdS5oIFwKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91cmN1L3VhdG9taWMuaCBiL2lu Y2x1ZGUvdXJjdS91YXRvbWljLmgKPiBpbmRleCAyZmI1ZmQ0Li4wMzI3ODEwIDEwMDY0NAo+IC0t LSBhL2luY2x1ZGUvdXJjdS91YXRvbWljLmgKPiArKysgYi9pbmNsdWRlL3VyY3UvdWF0b21pYy5o Cj4gQEAgLTIyLDM3ICsyMiw1OSBAQAo+ICAgI2RlZmluZSBfVVJDVV9VQVRPTUlDX0gKPiAgIAo+ ICAgI2luY2x1ZGUgPHVyY3UvYXJjaC5oPgo+ICsjaW5jbHVkZSA8dXJjdS9zeXN0ZW0uaD4KPiAg IAo+IC0jaWYgZGVmaW5lZChVUkNVX0FSQ0hfWDg2KQo+IC0jaW5jbHVkZSA8dXJjdS91YXRvbWlj L3g4Ni5oPgo+IC0jZWxpZiBkZWZpbmVkKFVSQ1VfQVJDSF9QUEMpCj4gLSNpbmNsdWRlIDx1cmN1 L3VhdG9taWMvcHBjLmg+Cj4gLSNlbGlmIGRlZmluZWQoVVJDVV9BUkNIX1MzOTApCj4gLSNpbmNs dWRlIDx1cmN1L3VhdG9taWMvczM5MC5oPgo+IC0jZWxpZiBkZWZpbmVkKFVSQ1VfQVJDSF9TUEFS QzY0KQo+IC0jaW5jbHVkZSA8dXJjdS91YXRvbWljL3NwYXJjNjQuaD4KPiAtI2VsaWYgZGVmaW5l ZChVUkNVX0FSQ0hfQUxQSEEpCj4gLSNpbmNsdWRlIDx1cmN1L3VhdG9taWMvYWxwaGEuaD4KPiAt I2VsaWYgZGVmaW5lZChVUkNVX0FSQ0hfSUE2NCkKPiAtI2luY2x1ZGUgPHVyY3UvdWF0b21pYy9p YTY0Lmg+Cj4gLSNlbGlmIGRlZmluZWQoVVJDVV9BUkNIX0FSTSkKPiAtI2luY2x1ZGUgPHVyY3Uv dWF0b21pYy9hcm0uaD4KPiAtI2VsaWYgZGVmaW5lZChVUkNVX0FSQ0hfQUFSQ0g2NCkKPiAtI2lu Y2x1ZGUgPHVyY3UvdWF0b21pYy9hYXJjaDY0Lmg+Cj4gLSNlbGlmIGRlZmluZWQoVVJDVV9BUkNI X01JUFMpCj4gLSNpbmNsdWRlIDx1cmN1L3VhdG9taWMvbWlwcy5oPgo+IC0jZWxpZiBkZWZpbmVk KFVSQ1VfQVJDSF9OSU9TMikKPiAtI2luY2x1ZGUgPHVyY3UvdWF0b21pYy9uaW9zMi5oPgo+IC0j ZWxpZiBkZWZpbmVkKFVSQ1VfQVJDSF9USUxFKQo+IC0jaW5jbHVkZSA8dXJjdS91YXRvbWljL3Rp bGUuaD4KPiAtI2VsaWYgZGVmaW5lZChVUkNVX0FSQ0hfSFBQQSkKPiAtI2luY2x1ZGUgPHVyY3Uv dWF0b21pYy9ocHBhLmg+Cj4gLSNlbGlmIGRlZmluZWQoVVJDVV9BUkNIX002OEspCj4gLSNpbmNs dWRlIDx1cmN1L3VhdG9taWMvbTY4ay5oPgo+IC0jZWxpZiBkZWZpbmVkKFVSQ1VfQVJDSF9SSVND VikKPiAtI2luY2x1ZGUgPHVyY3UvdWF0b21pYy9yaXNjdi5oPgo+IC0jZWxzZQo+IC0jZXJyb3Ig IkNhbm5vdCBidWlsZDogdW5yZWNvZ25pemVkIGFyY2hpdGVjdHVyZSwgc2VlIDx1cmN1L2FyY2gu aD4uIgo+IC0jZW5kaWYKPiArI2RlZmluZSBVQVRPTUlDX0hBU19BVE9NSUNfQllURQo+ICsjZGVm aW5lIFVBVE9NSUNfSEFTX0FUT01JQ19TSE9SVAo+ICsKPiArI2RlZmluZSB1YXRvbWljX3NldChh ZGRyLCB2KSBfX2F0b21pY19zdG9yZV9uKGFkZHIsIHYsIF9fQVRPTUlDX1JFTEVBU0UpCj4gKwo+ ICsjZGVmaW5lIHVhdG9taWNfcmVhZChhZGRyKSBfX2F0b21pY19sb2FkX24oKGFkZHIpLCBfX0FU T01JQ19DT05TVU1FKQo+ICsKPiArI2RlZmluZSB1YXRvbWljX3hjaGcoYWRkciwgdikgX19hdG9t aWNfZXhjaGFuZ2VfbigoYWRkciksICh2KSwgX19BVE9NSUNfU0VRX0NTVCkKPiArCj4gKyNkZWZp bmUgdWF0b21pY19jbXB4Y2hnKGFkZHIsIG9sZCwgbmV3KSBcCj4gKwkoewkJCQkJCQkJCVwKPiAr CQlfX3R5cGVvZl9fKCooYWRkcikpIF9fb2xkID0gb2xkOwkJCQlcCj4gKwkJX19hdG9taWNfY29t cGFyZV9leGNoYW5nZV9uKGFkZHIsICZfX29sZCwgbmV3LCAwLAkJXAo+ICsJCQkJCSAgICBfX0FU T01JQ19TRVFfQ1NULCBfX0FUT01JQ19TRVFfQ1NUKTsJCVwKPiArCQlfX29sZDsJCQkJCQkJCVwK PiArCX0pCj4gKwo+ICsjZGVmaW5lIHVhdG9taWNfYWRkX3JldHVybihhZGRyLCB2KSBcCj4gKwlf X2F0b21pY19hZGRfZmV0Y2goKGFkZHIpLCAodiksIF9fQVRPTUlDX1NFUV9DU1QpCgpUaGUgZXh0 cmEgcGFyZW50aGVzZXMgYXJvdW5kICJhZGRyIiBhbmQgInYiIGhlcmUgYXJlIG5vdCBuZWVkZWQg ZHVlIHRvIApvcGVyYXRvciBwcmlvcml0eSBvZiBjb21tYSAiLCIuIExpa2V3aXNlIGVsc2V3aGVy ZSBpbiB0aGlzIHBhdGNoLgoKQWxzbywgYXMgbWVudGlvbmVkIGVhcmxpZXIsIHBsZWFzZSBzcGVj aWFsLWNhc2UgdGhlIHg4NiBpbXBsZW1lbnRhdGlvbiAKdG8gaW5jbHVkZSB0aGUgX19BVE9NSUNf U0VRX0NTVCBpbnRvIGF0b21pYyBvcGVyYXRpb25zLgoKVGhhbmtzLAoKTWF0aGlldQoKPiArCj4g KyNkZWZpbmUgdWF0b21pY19hZGQoYWRkciwgdikgXAo+ICsJKHZvaWQpX19hdG9taWNfYWRkX2Zl dGNoKChhZGRyKSwgKHYpLCBfX0FUT01JQ19SRUxBWEVEKQo+ICsKPiArI2RlZmluZSB1YXRvbWlj X3N1Yl9yZXR1cm4oYWRkciwgdikgXAo+ICsJX19hdG9taWNfc3ViX2ZldGNoKChhZGRyKSwgKHYp LCBfX0FUT01JQ19TRVFfQ1NUKQo+ICsKPiArI2RlZmluZSB1YXRvbWljX3N1YihhZGRyLCB2KSBc Cj4gKwkodm9pZClfX2F0b21pY19zdWJfZmV0Y2goKGFkZHIpLCAodiksIF9fQVRPTUlDX1JFTEFY RUQpCj4gKwo+ICsjZGVmaW5lIHVhdG9taWNfYW5kKGFkZHIsIG1hc2spIFwKPiArCSh2b2lkKV9f YXRvbWljX2FuZF9mZXRjaCgoYWRkciksIChtYXNrKSwgX19BVE9NSUNfUkVMQVhFRCkKPiArCj4g KyNkZWZpbmUgdWF0b21pY19vcihhZGRyLCBtYXNrKQkJCQkJCVwKPiArCSh2b2lkKV9fYXRvbWlj X29yX2ZldGNoKChhZGRyKSwgKG1hc2spLCBfX0FUT01JQ19SRUxBWEVEKQo+ICsKPiArI2RlZmlu ZSB1YXRvbWljX2luYyhhZGRyKSAodm9pZClfX2F0b21pY19hZGRfZmV0Y2goKGFkZHIpLCAxLCBf X0FUT01JQ19SRUxBWEVEKQo+ICsjZGVmaW5lIHVhdG9taWNfZGVjKGFkZHIpICh2b2lkKV9fYXRv bWljX3N1Yl9mZXRjaCgoYWRkciksIDEsIF9fQVRPTUlDX1JFTEFYRUQpCj4gKwo+ICsjZGVmaW5l IGNtbV9zbXBfbWJfX2JlZm9yZV91YXRvbWljX2FuZCgpCV9fYXRvbWljX3RocmVhZF9mZW5jZShf X0FUT01JQ19TRVFfQ1NUKQo+ICsjZGVmaW5lIGNtbV9zbXBfbWJfX2FmdGVyX3VhdG9taWNfYW5k KCkJCV9fYXRvbWljX3RocmVhZF9mZW5jZShfX0FUT01JQ19TRVFfQ1NUKQo+ICsjZGVmaW5lIGNt bV9zbXBfbWJfX2JlZm9yZV91YXRvbWljX29yKCkJCV9fYXRvbWljX3RocmVhZF9mZW5jZShfX0FU T01JQ19TRVFfQ1NUKQo+ICsjZGVmaW5lIGNtbV9zbXBfbWJfX2FmdGVyX3VhdG9taWNfb3IoKQkJ X19hdG9taWNfdGhyZWFkX2ZlbmNlKF9fQVRPTUlDX1NFUV9DU1QpCj4gKyNkZWZpbmUgY21tX3Nt cF9tYl9fYmVmb3JlX3VhdG9taWNfYWRkKCkJX19hdG9taWNfdGhyZWFkX2ZlbmNlKF9fQVRPTUlD X1NFUV9DU1QpCj4gKyNkZWZpbmUgY21tX3NtcF9tYl9fYWZ0ZXJfdWF0b21pY19hZGQoKQkJX19h dG9taWNfdGhyZWFkX2ZlbmNlKF9fQVRPTUlDX1NFUV9DU1QpCj4gKyNkZWZpbmUgY21tX3NtcF9t Yl9fYmVmb3JlX3VhdG9taWNfc3ViKCkJY21tX3NtcF9tYl9fYmVmb3JlX3VhdG9taWNfYWRkKCkK PiArI2RlZmluZSBjbW1fc21wX21iX19hZnRlcl91YXRvbWljX3N1YigpCQljbW1fc21wX21iX19h ZnRlcl91YXRvbWljX2FkZCgpCj4gKyNkZWZpbmUgY21tX3NtcF9tYl9fYmVmb3JlX3VhdG9taWNf aW5jKCkJY21tX3NtcF9tYl9fYmVmb3JlX3VhdG9taWNfYWRkKCkKPiArI2RlZmluZSBjbW1fc21w X21iX19hZnRlcl91YXRvbWljX2luYygpCQljbW1fc21wX21iX19hZnRlcl91YXRvbWljX2FkZCgp Cj4gKyNkZWZpbmUgY21tX3NtcF9tYl9fYmVmb3JlX3VhdG9taWNfZGVjKCkJY21tX3NtcF9tYl9f YmVmb3JlX3VhdG9taWNfYWRkKCkKPiArI2RlZmluZSBjbW1fc21wX21iX19hZnRlcl91YXRvbWlj X2RlYygpCQljbW1fc21wX21iX19hZnRlcl91YXRvbWljX2FkZCgpCj4gKwo+ICsjZGVmaW5lIGNt bV9zbXBfbWIoKQkJCQljbW1fbWIoKQo+ICAgCj4gICAjZW5kaWYgLyogX1VSQ1VfVUFUT01JQ19I ICovCgpbLi4uXQoKVGhhbmtzLAoKTWF0aGlldQoKCgotLSAKTWF0aGlldSBEZXNub3llcnMKRWZm aWNpT1MgSW5jLgpodHRwczovL3d3dy5lZmZpY2lvcy5jb20KCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmx0dG5nLWRldiBtYWlsaW5nIGxpc3QKbHR0bmct ZGV2QGxpc3RzLmx0dG5nLm9yZwpodHRwczovL2xpc3RzLmx0dG5nLm9yZy9jZ2ktYmluL21haWxt YW4vbGlzdGluZm8vbHR0bmctZGV2Cg==