From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: zhichao.gao@intel.com) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by groups.io with SMTP; Mon, 15 Jul 2019 18:18:18 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Jul 2019 18:18:17 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,496,1557212400"; d="scan'208";a="169108201" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga007.fm.intel.com with ESMTP; 15 Jul 2019 18:18:17 -0700 Received: from fmsmsx117.amr.corp.intel.com (10.18.116.17) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 15 Jul 2019 18:18:16 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx117.amr.corp.intel.com (10.18.116.17) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 15 Jul 2019 18:18:16 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.134]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.109]) with mapi id 14.03.0439.000; Tue, 16 Jul 2019 09:18:15 +0800 From: "Gao, Zhichao" To: Laszlo Ersek , "Gao, Liming" CC: "devel@edk2.groups.io" , "Kinney, Michael D" , =?utf-8?B?TWFydmluIEjDpHVzZXI=?= , =?utf-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= Subject: Re: [edk2-devel] [PATCH 2/3] MdePkg/BaseLib: rewrite Base64Decode() Thread-Topic: [edk2-devel] [PATCH 2/3] MdePkg/BaseLib: rewrite Base64Decode() Thread-Index: AQHVMMEASIXfgvt6606SOVbNX18mJabGR2nwgAChsgCABHF1gIAAbhYAgAC5E0A= Date: Tue, 16 Jul 2019 01:18:14 +0000 Message-ID: <3CE959C139B4C44DBEA1810E3AA6F9000B807FDB@SHSMSX101.ccr.corp.intel.com> References: <20190702102836.27589-1-lersek@redhat.com> <20190702102836.27589-3-lersek@redhat.com> <3CE959C139B4C44DBEA1810E3AA6F9000B80750F@SHSMSX101.ccr.corp.intel.com> <35840ec1-6208-1a6f-b7a2-e63f929118fe@redhat.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E4A8656@SHSMSX104.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: zhichao.gao@intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTGFzemxvIEVyc2VrIFtt YWlsdG86bGVyc2VrQHJlZGhhdC5jb21dDQo+IFNlbnQ6IFR1ZXNkYXksIEp1bHkgMTYsIDIwMTkg NTo1NiBBTQ0KPiBUbzogR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPjsgR2FvLCBa aGljaGFvDQo+IDx6aGljaGFvLmdhb0BpbnRlbC5jb20+DQo+IENjOiBkZXZlbEBlZGsyLmdyb3Vw cy5pbzsgS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsNCj4g TWFydmluIEjDpHVzZXIgPG1oYWV1c2VyQG91dGxvb2suZGU+OyBQaGlsaXBwZSBNYXRoaWV1LURh dWTDqQ0KPiA8cGhpbG1kQHJlZGhhdC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0g W1BBVENIIDIvM10gTWRlUGtnL0Jhc2VMaWI6IHJld3JpdGUNCj4gQmFzZTY0RGVjb2RlKCkNCj4g DQo+IE9uIDA3LzE1LzE5IDE3OjIyLCBHYW8sIExpbWluZyB3cm90ZToNCj4gPiBMYXN6bG86DQo+ ID4NCj4gPj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogZGV2ZWxAZWRr Mi5ncm91cHMuaW8gW21haWx0bzpkZXZlbEBlZGsyLmdyb3Vwcy5pb10gT24gQmVoYWxmIE9mDQo+ ID4+IExhc3psbyBFcnNlaw0KPiA+PiBTZW50OiBTYXR1cmRheSwgSnVseSAxMywgMjAxOSAzOjMx IEFNDQo+ID4+IFRvOiBHYW8sIFpoaWNoYW8gPHpoaWNoYW8uZ2FvQGludGVsLmNvbT47IGRldmVs QGVkazIuZ3JvdXBzLmlvOyBHYW8sDQo+ID4+IExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+ OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+PiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ ID4+IENjOiBNYXJ2aW4gSMOkdXNlciA8bWhhZXVzZXJAb3V0bG9vay5kZT47IFBoaWxpcHBlIE1h dGhpZXUtRGF1ZMOpDQo+ID4+IDxwaGlsbWRAcmVkaGF0LmNvbT4NCj4gPj4gU3ViamVjdDogUmU6 IFtlZGsyLWRldmVsXSBbUEFUQ0ggMi8zXSBNZGVQa2cvQmFzZUxpYjogcmV3cml0ZQ0KPiA+PiBC YXNlNjREZWNvZGUoKQ0KPiA+Pg0KPiA+PiBPbiAwNy8xMi8xOSAwNDozMSwgR2FvLCBaaGljaGFv IHdyb3RlOg0KPiA+Pj4gU29ycnkgZm9yIGxhdGUgcmVzcG9uZC4NCj4gPj4+IFRoZSB3aG9sZSBj b2RlIGlzIE9LIGZvciBtZS4gQW5kIEkgd3JpdGUgYSB0aW55IHRlc3QgZm9yIGl0IHdpdGhvdXQN Cj4gPj4+IHRoZSBtZW1vcnkgYWRkcmVzcyBjaGVjay4gU2VlDQo+ID4+DQo+IGh0dHBzOi8vZ2l0 aHViLmNvbS9aaGljaGFvR2FvL2VkazIvY29tbWl0LzYxNTM1NmJhMzJkMzE0Nzk1N2QyMTVkZWIN Cj4gZDgNCj4gPj4gNDRlNzcwOWYwNjg0OSAuIEl0IGlzIHRlc3RlZCBpbiBFbXVsYXRvciBlbnZp cm9ubWVudC4gSWYgaXQgaXMgT0ssIEkgdGhpbmsgeW91DQo+IGNhbiB0YWtlIG15IFRlc3RlZC1i eSBmb3IgdGhpcyBwYXRjaC4gSWYgdGhlcmUgYXJlIHNvbWUgbWlzc2luZywgcGxlYXNlIGxldA0K PiBtZSBrbm93Lg0KPiA+Pg0KPiA+PiBUaGFua3MgZm9yIHdyaXRpbmcgdGhhdCB0ZXN0IGFwcC4g SXQgc2VlbXMgdG8gaGF2ZSBwcmV0dHkgZ29vZCBjb3ZlcmFnZS4NCj4gPj4gSSBsaWtlIHRoYXQg aXQgY292ZXJzIHRoZSBleGl0IHBvaW50cyBzeXN0ZW1hdGljYWxseS4NCj4gPj4NCj4gPj4gTWlr ZSwgTGltaW5nOiBJIGludGVuZCB0byBwaWNrIHVwIFpoaWNoYW8ncyBULWIsIGZyb20gYWJvdmUu IElmIHlvdQ0KPiA+PiBhcmUgYXdhcmUgb2YgYW5vdGhlciB0ZXN0IHN1aXRlIChwZXJoYXBzIHVz ZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUNCj4gPj4gb3JpZ2luYWxseSBjb250cmlidXRlZCBC YXNlNjREZWNvZGUoKSBpbXBsKSwgcGxlYXNlIGxldCBtZSBrbm93Lg0KPiA+DQo+ID4gT0sgdG8g bWUuDQo+ID4NCj4gPj4NCj4gPj4+IEJhc2U2NERlY29kZSBwYXJhbWV0ZXIgU291cmNlIGlzIGlu ZGljYXRlIGFzIE9QVElPTkFMLiBBbHRob3VnaCBpdA0KPiA+Pj4gaXMgT0sgdG8gYmUgTlVMTCwg YW5kIHJldHVybiBEZXN0aW5hdGlvblNpemUgdG8gYmUgemVybyB3aXRoDQo+ID4+IHN1Y2Nlc3Mg c3RhdHVzIHRvIGluZGljYXRlIG5vIGRlY29kZSBvY2N1cnJlZCAuIEkgZG9uJ3Qga25vdyBpZiBp dCBpcw0KPiA+PiBtZWFuaW5nZnVsIHRvIHJlcG9ydCB0aGUgcmVzdWx0IGFzIHRoYXQuIEluIG15 IG9waW5pb24sIE5VTEwgU291cmNlIGlzIGFuDQo+IGludmFsaWQgaW5wdXQuIEp1c3QgbXkgb3Bp bmlvbiwgaWYgdGhlIG1haW50YWluZXIgaXMgT0sgd2l0aCB0aGF0LCBJIGFtIE9LIHRvby4NCj4g Pg0KPiA+IFllcy4gU291cmNlIGlzIE5VTEwsIFNvdXJjZVNpemUgaXMgemVyby4gQ29kZSBkb2Vz IG5vdGhpbmcuIEkgYW0gZmluZSB3aXRoIGl0Lg0KPiA+DQo+ID4gSSBoYXZlIG5vIG90aGVyIGNv bW1lbnRzIGZvciB0aGUgY29kZSBsb2dpYy4gUmV2aWV3ZWQtYnk6IExpbWluZyBHYW8NCj4gPiA8 bGltaW5nLmdhb0BpbnRlbC5jb20+DQo+IA0KPiBUaGFuayB5b3UhDQo+IA0KPiBBIGZldyBxdWVz dGlvbnM6DQo+IA0KPiANCj4gKDEpIExpbWluZywgZG9lcyB5b3VyIFItYiBhcHBseSB0byB0aGUg Zmlyc3QgcGF0Y2ggaW4gdGhlIHNlcmllcyBhcyB3ZWxsPyAoVGhhdA0KPiBwYXRjaCB0b28gaXMg Zm9yIE1kZVBrZy4pDQo+IA0KPiBIZXJlIGFyZSB0d28gbGlua3MgdG8gcGF0Y2gjMSBpbiB0aGUg c2VyaWVzLCBmb3IgeW91ciBjb252ZW5pZW5jZToNCj4gDQo+IGh0dHA6Ly9taWQubWFpbC1hcmNo aXZlLmNvbS8yMDE5MDcwMjEwMjgzNi4yNzU4OS0yLWxlcnNla0ByZWRoYXQuY29tDQo+IGh0dHBz Oi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzQzMTYyDQo+IA0KPiANCj4gKDIpIFpo aWNoYW8sIHlvdSBtYWRlIGEgZ29vZCByZW1hcmsgYWJvdXQgYmxvY2stc2NvcGVkIHZhcmlhYmxl cywgYW5kIHRoZQ0KPiBDQ1MuIFlvdSBhbHNvIGdhdmUgeW91ciBUZXN0ZWQtYnkgZm9yIHRoZSBw cmVzZW50IHZlcnNpb24uIFNvLCB3ZSBoYXZlIHRoZQ0KPiBmb2xsb3dpbmcgdHdvIG9wdGlvbnM6 DQo+IA0KPiAoMmEpDQo+IA0KPiAtIEkgcHVzaCB0aGUgcHJlc2VudCBwYXRjaCBhcy1pcywgaW5j bHVkaW5nIHlvdXIgVGVzdGVkLWJ5LiAoVG9nZXRoZXIgd2l0aA0KPiBMaW1pbmcncyBSLWIgLS0g aGUgaXMgT0sgd2l0aCB0aGUgcHJlc2VudCB2ZXJzaW9uLikNCj4gDQo+IC0gU3Vic2VxdWVudGx5 LCBJIHBvc3QgYSBzZXBhcmF0ZSAoaW5jcmVtZW50YWwpIHBhdGNoIGZvciBtb3ZpbmcgdGhlDQo+ IHZhcmlhYmxlcyBmcm9tIHRoZSBpbm5lciBibG9jayBzY29wZSB0byB0aGUgb3V0ZXIgZnVuY3Rp b24gYmxvY2sgc2NvcGUuDQo+IFRoaXMgaW5jcmVtZW50YWwgcGF0Y2ggbmVlZHMgYW5vdGhlciBN ZGVQa2cgbWFpbnRhaW5lciByZXZpZXcsIGJ1dCBpdA0KPiBkb2Vzbid0IG5lZWQgYWRkaXRpb25h bCB0ZXN0aW5nIGZyb20geW91Lg0KPiANCj4gKDJiKSBBbHRlcm5hdGl2ZWx5Og0KPiANCj4gLSBJ IHBvc3QgdjIgb2YgdGhpcyBzZXJpZXMsIHdoaWNoIGluY29ycG9yYXRlcyB0aGUgbW92ZW1lbnQg b2YgdGhlIHZhcmlhYmxlcw0KPiBmcm9tIHRoZSBpbm5lciBibG9jayBzY29wZSB0byB0aGUgb3V0 ZXJtb3N0IGZ1bmN0aW9uIGJsb2NrIHNjb3BlLg0KPiANCj4gLSBJIGtlZXAgTGltaW5nJ3MgUi1i LiAoVGhlIHZhcmlhYmxlIGRlZmluaXRpb24gbW92ZW1lbnQgaXMgc3RyYWlnaHQtZm9yd2FyZA0K PiBhbmQgSSBkb24ndCB0aGluayBpdCBpbnZhbGlkYXRlcyBMaW1pbmcncyBSLWIpLg0KPiANCj4g LSBJIGRyb3AgeW91ciBUZXN0ZWQtYnksIGJlY2F1c2UgdGhlIHZhcmlhYmxlIG1vdmVtZW50IHRl Y2huaWNhbGx5IGNoYW5nZXMNCj4gY29kZSB0aGF0IHlvdXIgdGVzdGluZyBleGVyY2lzZWQsIGFu ZCBhIFRlc3RlZC1ieSB0YWcgc2hvdWxkIG9ubHkgYmUgYXBwbGllZA0KPiB0byB0aGUgKmV4YWN0 KiBjb2RlIHRoYXQgd2FzIGV4ZXJjaXNlZCBieSB0aGUgdGVzdGluZy4NCj4gDQo+IC0gVGhlcmVm b3JlLCBmb3IgcHJlc2VydmluZyB5b3VyIHRlc3Rpbmcgd29yayBpbiB0aGUgZ2l0IGhpc3Rvcnks IHlvdSB3b3VsZA0KPiBoYXZlIHRvIHJlZG8gdGhlIHRlc3RpbmcsIHBsZWFzZS4NCj4gDQo+IA0K PiBaaGljaGFvLCBkbyB5b3UgcHJlZmVyICgyYSkgb3IgKDJiKT8NCj4gDQo+IFBlcnNvbmFsbHks IEkgcHJlZmVyICgyYSksIGJlY2F1c2UgKDJhKSBpcyBzYWZlIC0tIGltcG9ydGFudGx5LCB0aGUg djEgY29kZSBpcw0KPiAqdmFsaWQqIEMgLS0sIGFuZCBpdCBpcyBsZXNzIHdvcmsgZm9yIHRoZSBj b21tdW5pdHkgKGZvciB5b3UsIExpbWluZyBhbmQgbXlzZWxmLA0KPiB0b2dldGhlcikuDQoNCigy YSkgbWFrZXMgbGVzcyB3b3JrIGFuZCBtYWtlcyBhIGdvb2QgaGlzdG9yeSwgKDJiKSBtYWtlcyBh IGNsZWFuIGNvbW1pdCBtZXNzYWdlLiBJIGhhdmUgbm8gaWRlYSBvbiB3aGljaCBpcyBiZXR0ZXIu DQpGb3IgbWUsIEkgcHJlZmVyICgyYSkgdG9vIGJlY2F1c2UgSSBkb24ndCB0aGluayBjbGVhbiBj b21taXQgbWVzc2FnZSBpcyBzdWNoIGltcG9ydGFudC4NCg0KSXQncyB1cCB0byB5b3UgdG8gZGVj aWRlLiBJZiB5b3UgY2hvb3NlICgyYikgSSBhbSBmaW5lIHRvIGRvIGEgdGVzdCBhZ2FpbiBhbmQg cHJvdmlkZSBhIFQtQi4NCg0KVGhhbmtzLA0KWmhpY2hhbw0KDQo+IA0KPiBUaGFua3MhDQo+IExh c3psbw0K