From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [RFC] handling of alpha mode (pre-multiplied/straight) in ARGB modes Date: Mon, 11 Jan 2016 17:22:21 +0200 Message-ID: <20160111152221.GB23290@intel.com> References: <5693B9C4.2040209@samsung.com> <20160111150749.GY8076@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 060946E3A3 for ; Mon, 11 Jan 2016 07:22:24 -0800 (PST) Content-Disposition: inline In-Reply-To: <20160111150749.GY8076@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: Bartlomiej Zolnierkiewicz , DRI mailing list , Marek Szyprowski List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBKYW4gMTEsIDIwMTYgYXQgMDQ6MDc6NTBQTSArMDEwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBNb24sIEphbiAxMSwgMjAxNiBhdCAwMzoxODo0NFBNICswMTAwLCBNYXJlayBT enlwcm93c2tpIHdyb3RlOgo+ID4gRGVhciBBbGwsCj4gPiAKPiA+IEkgd291bGQgbGlrZSB0byBh ZGQgc3VwcG9ydCBmb3IgY29uZmlndXJpbmcgYWxwaGEgbW9kZXM6IHN0cmFpZ2h0IGFuZAo+ID4g cHJlLW11bHRpcGxpZWQgZm9yIGJsZW5kaW5nIHRvIEV4eW5vcyBEUk0gZHJpdmVyLiBGb3IgdGhv c2Ugd2hvIHNlZSB0aG9zZQo+ID4gdGVybXMgZm9yIHRoZSBmaXJzdCB0aW1lOgo+ID4gMS4gc3Ry YWlnaHQgYWxwaGEgbW9kZSBtZWFucyBtZWFucyB0aGF0IGFsbCBBIGFuZCBSR0IgdmFsdWVzIGFy ZSBmcm9tIGZ1bGwKPiA+IDAuMjU1IHJhbmdlLAo+ID4gMi4gcHJlLW11bHRpcGxpZWQgYWxwaGEg bW9kZSBtZWFucyB0aGF0IEEgaXMgZnJvbSAwLi4yNTUgcmFuZ2UgYW5kIFJHQgo+ID4gdmFsdWVz IGFyZSBzY2FsZWQgdG8gMC4uQUxQSEEgcmFuZ2UgKHdoZXJlIEFMUEhBIGlzIHRoZSBBIHZhbHVl IGZvciB0aGUKPiA+IGdpdmVuIHBpeGVsKS4KPiA+IFRoZSBwcmUtbXVsdGlwbGllZCBtb2RlIGlz IHF1aXRlIGNvbW1vbiBpbiB0ZXh0dXJlIHByb2Nlc3NpbmcuCj4gPiAKPiA+IEkgZGlkIGEgbGl0 dGxlIHJlc2VhcmNoIGFuZCBmb3VuZCB0aGF0IHRoZXJlIGlzIG5vIGNvbW1vbiBhcHByb2FjaCBm b3IKPiA+IGRlZmluaW5nIHN0cmFpZ2h0IG9yIHByZS1tdWx0aXBsaWVkIGFscGhhIG1vZGVzIGZv ciBBUkdCIGZyYW1lYnVmZmVycy4KPiA+IAo+ID4gRnJvbSByZWFkaW5nIHRoZSBzb3VyY2VzIGFu ZCB0aGUgcmVnaXN0ZXIgbmFtZXMgSSBmb3VuZCB0aGF0IGZvbGxvd2luZwo+ID4gZHJpdmVycyB1 c2UgcHJlLW11bHRpcGxpZWQgbW9kZXMgZm9yIEFSR0IgZnJhbWVidWZmZXJzOgo+ID4gcmFkZW9u IChhdCBsZWFzdCBmb3IgQVJHQiBjdXJzb3JzKSwKPiA+IGFtZGdwdSAoY3Vyc29yKSwKPiA+IGlu dGVsIChhbGwgQVJHQiBwbGFuZXMpLAo+ID4gcm9jayBjaGlwLgo+ID4gCj4gPiBPbiB0aGUgb3Ro ZXIgaGFuZCwgdGhlcmUgYXJlIGRybSBkcml2ZXJzIHdoaWNoIHN1cHBvcnQgQVJHQiBtb2RlcyBh bmQgdXNlCj4gPiBzdHJhaWdodCBhbHBoYSBtb2RlczoKPiA+IG9tYXAsCj4gPiBtc20uCj4gPiAK PiA+IEZvciB0aGUgcmVzdCBvZiBkcml2ZXJzLCB3aGljaCBtaWdodCBkZWFsIHdpdGggcGVyLXBp eGVsIGFscGhhLCBJIHdhcyBub3QKPiA+IGFibGUgdG8gZGV0ZXJtaW5lIGZyb20gdGhlIGNvZGUg aWYgdGhlIHBpeGVsIFJHQiB2YWx1ZXMgYXJlIGludGVycHJldGVkIGFzCj4gPiBwZXItbXVsdGlw bGllZCBvciBzdHJhaWdodDoKPiA+IGF0bWVsX2hsY2RjLAo+ID4gc3RpLAo+ID4gbWRwNSwKPiA+ IHNobW9iaWxlLAo+ID4gcmNhciwKPiA+IHZjNCwKPiA+IGlteC4KPiAKPiBJbW8gaW4gY2FzZSBv ZiBkb3VidC9taXhlZCBkZWZpbml0aW9ucyB0aGUgc2VtYW50aWNzIG9mIHRoZSBiaWcgZGVza3Rv cAo+IGRyaXZlcnMgc2hvdWxkIHdpbi4gVHJ1ZSBnZW5lcmljIHVzZXJzcGFjZSBpcyBtb3N0IGxp a2VseSBkZXZlbG9wZWQgb24KPiB0aG9zZSwgZXZlcnl0aGluZyBlbHNlIHNob3VsZCBqdXN0IGFk anVzdC4gQW5kIGluIG1vc3QgY2FzZXMgd2UgY2FuIGdldAo+IGF3YXkgd2l0aCB0aGF0IG9uIGFy bSBkcml2ZXJzIHNpbmNlIHRoZXkgdGVuZCB0byBzaGlwIHVzZXJzcGFjZSBhbmQga2VybmVsCj4g aW4gbG9ja3N0ZXAuIEF0IGxlYXN0IHdoZXJlIGl0IHJlYWxseSBtYXR0ZXJzLgo+IAo+ID4gRXh5 bm9zIERSTSBkcml2ZXIgbm93IG1peGVzIHByZS1tdWx0aXBsaWVkIGFuZCBzdHJhaWdodCBtb2Rl cywgZGVwZW5kaW5nIG9uCj4gPiB0aGUgQ1JUQyBzdWItZHJpdmVyLgo+ID4gCj4gPiBXaGlsZSBj aGVja2luZyB0aGUgY29kZSBJIGZvdW5kIGEgZm9sbG93aW5nIGNvbW1lbnQgaW4KPiA+IGRybS9p OTE1L2ludGVsX2Rpc3BsYXkuYyBpbiBza2xfcGxhbmVfY3RsX2Zvcm1hdCgpIGZ1bmN0aW9uOgo+ ID4gLyoKPiA+ICAqIFhYWDogRm9yIEFSQkcvQUJHUiBmb3JtYXRzIHdlIGRlZmF1bHQgdG8gZXhw ZWN0aW5nIHNjYW5vdXQgYnVmZmVycwo+ID4gICogdG8gYmUgYWxyZWFkeSBwcmUtbXVsdGlwbGll ZC4gV2UgbmVlZCB0byBhZGQgYSBrbm9iIChvciBhIGRpZmZlcmVudAo+ID4gICogRFJNX0ZPUk1B VCkgZm9yIHVzZXItc3BhY2UgdG8gY29uZmlndXJlIHRoYXQuCj4gPiAgKi8KPiA+IAo+ID4gVGhl IHF1ZXN0aW9uIGlzIGhvdyB0byBjbGVhbnVwIHRoaXMgYW1iaWd1aXRpZXMgYW5kIGxldCBnZW5l cmljIHVzZXJzcGFjZSB0bwo+ID4gcHJvcGVybHkgdXNlIEFSR0IvQVJHQiBtb2RlcyB3aXRoIHBy b3BlciBibGVuZGluZyBtb2RlLiBJIGNhbWUgdXAgd2l0aCB0aGUKPiA+IGZvbGxvd2luZyAzIHNv bHV0aW9uczoKPiA+IAo+ID4gMS4gRGVmaW5lIG5ldyBmb3VyY2MgdmFsdWVzIGZvciBwcmUtbXVs dGlwbGllZCAob3IvYW5kIHN0cmFpZ2h0KSBhbHBoYQo+ID4gbW9kZXMsCj4gPiAyLiBJbnRyb2R1 Y2UgYSBuZXcgZnJhbWVidWZmZXIgZmxhZyBmb3IgcHJlLW11bHRpcGxpZWQgb3Igc3RyYWlnaHQg YWxwaGEgKG9yCj4gPiBib3RoKSwKPiA+IDMuIEludHJvZHVjZSBhIG5ldyBwbGFuZSBwcm9wZXJ0 eSBmb3IgY29udHJvbGxpbmcgYWxwaGEgYmxlbmRpbmcgbW9kZS4KPiA+IAo+ID4gVGhlIGZpcnN0 IHNvbHV0aW9uIGhhcyBzZXJpb3VzIGNvbXBhdGliaWxpdHkgcHJvYmxlbSwgYmVjYXVzZSB3ZSBj YW4gZWl0aGVyCj4gPiBtYXAgZXhpc3RpbmcgZm91cmNjIHRvIHByZS1tdWx0aXBsaWVkICh0byBm b2xsb3cgcmFkZW9uL2FtZGdwdSwgaW50ZWwgYW5kCj4gPiByb2NrY2hpcCBiZWhhdmlvcikgb3Ig c3RyYWlnaHQgbW9kZS4gQm90aCB3YXlzIGl0IHdpbGwgYnJlYWsgc29tZSBleGlzdGluZwo+ID4g YXBwbGljYXRpb25zLiBUbyBhdm9pZCBjb21wYXRpYmlsaXR5IHByb2JsZW0gd2Ugd291bGQgbmVl ZCB0byBhZGQgMiBtb3JlCj4gPiBzZXRzIG9mIGZvdXJjYyBhbmQgbGVhdmUgZXhpc3RpbmcgQVJH QiBtb2RlcyBhcyAnZHJpdmVyIGRlcGVuZGVudCcuCj4gPiAKPiA+IFRoZSBzZWNvbmQgc29sdXRp b24gaXMgcHJvYmFibHkgYSBiaXQgbGVzcyBpbnRydXNpdmUsIGJ1dCBpdCBzdWZmZXJzIGZvciB0 aGUKPiA+IHNpbWlsYXIgY29tcGF0aWJpbGl0eSBwcm9ibGVtLiBUbyBtYWtlIHRoaXMgZmVhdHVy ZSBjb21wYXRpYmxlIHdpdGggZXhpc3RpbmcKPiA+IGNvZGUsIHByb2JhYmx5IDIgZmxhZ3Mgd2ls bCBiZSBuZWVkZWQ6IERSTV9NT0RFX0ZCX0FMUEhBX0ZPUkNFX1BSRU1VTFRJUExJRUQKPiA+IGFu ZCBEUk1fTU9ERV9GQl9BTFBIQV9GT1JDRV9TVFJBSUdIVC4gVGhpcyB3YXkgd2hlbiB1c2Vyc3Bh Y2UgcHJvdmlkZXMgbm8KPiA+IGZsYWcsIHRoZSBkcml2ZXIgY2FuIHVzZSBpdHMgZGVmYXVsdCBt b2RlLgo+ID4gCj4gPiBUaGlyZCBzb2x1dGlvbiAoYWRkaXRpb25hbCBwbGFuZSBwcm9wZXJ0eSkg aGFzIGJlZW4gYWxyZWFkeSBwcm9wb3NlZDoKPiA+IGh0dHBzOi8vbGttbC5vcmcvbGttbC8yMDE1 LzYvMTkvMzMwLCBob3dldmVyIEkgZm91bmQgbm8gZm9sbG93LXVwIG5vcgo+ID4gY29tbWVudHMu IFNlcGFyYXRlIHByb3BlcnR5IGxldHMgYXQgbGVhc3QgZHJpdmVycyB0byBub3RpZnkgdXNlcnNw YWNlIGFib3V0Cj4gPiBkcml2ZXIncyBkZWZhdWx0IGFscGhhIG1vZGUgYW5kIGxldHMgZ2VuZXJp YyBhcHBsaWNhdGlvbiB0byBwcm9wZXJseSBzZXQgdGhlCj4gPiByZXF1ZXN0ZWQgbW9kZS4gVGhl IG9ubHkgcHJvYmxlbSBpcyB0aGF0IHRoZSBhbHBoYSBtb2RlIGlzIG5vdCBkaXJlY3RseQo+ID4g Y29uZmlndXJlZCBvbiB0aGUgZnJhbWVidWZmZXIgb2JqZWN0LCB3aGVyZSBpbiBteSBvcGluaW9u IGl0IHNob3VsZCBiZQo+ID4gc3RvcmVkLgo+ID4gCj4gPiBQbGVhc2UgbGV0IG1lIGtub3cgd2hp Y2ggYXBwcm9hY2ggWW91IGxpa2UgYmVzdCBhbmQgd2hpY2ggc2hvdWxkIEkgdGFrZSBmb3IKPiA+ IGludHJvZHVjaW5nIGdlbmVyaWMgd2F5IG9mIGNvbmZpZ3VyaW5nIGFscGhhIG1vZGUuCj4gCj4g T25lIGlkZWEgdGhhdCB3YXMgdG9zc2VkIGFyb3VuZCBhIGZldyB0aW1lcyBpcyB0byBnbyBmdWxs IGdlbmVyaWMgYW5kCj4gaW1wbGVtZW50IHNvbWV0aGluZyBsaWtlIGdsQmxlbmRGdW5jIGZvciBw bGFuZXMsIGV4Y2VwdCB0aGF0IHdlJ2QgYWxzbwo+IHByZS1tdWx0aXBsaWVkL3N0cmFpZ2h0IHZl cnNpb25zIHdoZXJlIGl0IG1ha2VzIHNlbnNlLiBGb3IgZHJpdmVycyB0aGF0Cj4gY2FuJ3Qgc3Vw cG9ydCBwcmUtbXVsdGlwbGllZCBhbHBoYSB0aGV5IGNvdWxkIHNpbXBseSBsZWF2ZSBvdXQgdGhl c2UKPiB2YWx1ZXMgZnJvbSB0aGUgYmxlbmQtZnVuYyBwcm9wZXJ0eSAobGlrZSB3ZSBhbHJlYWR5 IGFsbG93IHdpdGggZS5nLgo+IHJvdGF0aW9uLCB3aGVuIGEgZHJpdmVyIGNhbid0IGRvIDkwLzI3 MMKwKS4KPiAKPiBXcnQgYmFja3dhcmRzIGNvbXBhdCBhIHByb3BlcnR5IHdvdWxkIHdvcmsgd2Vs bCB0b286IElmIGl0J3Mgbm90IHRoZXJlCj4gdGhlbiB1c2Vyc3BhY2Ugc2hvdWxkIGFzc3VtZSBv bGQgYmVoYXZpb3VyICh3aGljaCBzaG91bGQgYmUgcHJlLW11bHRpcGxpZWQKPiByZWFsbHksIGJ1 dCBtaWdodCBiZSBzb21ld2hhdCBicm9rZW4gb24gc29tZSBkcml2ZXJzL2tlcm5lbCkuCj4gCj4g RGFtaWVuIGhhZCBzb21lIFJGQyBhYm91dCBhbGwgdGhpcyB3YXkgYmFjaywgYnV0IGNhbid0IGZp bmQgaXQgcmlnaHQgbm93LgoKSSByZW1lbWJlIGhlIHNhaWQgaGUgd2FudGVkIHRvIHdvcmsgb24g aXQsIGJ1dCBJIGRvbid0IHJlbWVtYmVyIHNlZWluZwphbnl0aGluZyBjb21lIG91dCBvZiB0aGF0 LiBJIGd1ZXNzIGhlIGdvdCBzd2FsbG93ZWQgYnkgcGF0Y2h3b3JrLCBvciBJCmp1c3QgbWlzc2Vk IHRoZSBwYXRjaC4KClRoaXMgbWFpbCBtaWdodCBpbmNsdWRlIHNvbWUgb2YgbXkgbW9yZSByZWNl bnQgdGhvdWdodHMgb24gdGhpcyBtYXR0ZXIKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9h cmNoaXZlcy9pbnRlbC1nZngvMjAxNC1BcHJpbC8wNDI5NTYuaHRtbAoKLS0gClZpbGxlIFN5cmrD pGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwK