From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH] drm/i915: Refactor golden render state emission to unconfuse gcc Date: Fri, 22 Jul 2016 13:33:56 +0300 Message-ID: <1469183636.5916.48.camel@linux.intel.com> References: <1469181220.5916.43.camel@linux.intel.com> <1469182586-31422-1-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 6A5136EB24 for ; Fri, 22 Jul 2016 10:34:27 +0000 (UTC) In-Reply-To: <1469182586-31422-1-git-send-email-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gcGUsIDIwMTYtMDctMjIgYXQgMTE6MTYgKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiBH Q0Mgd2FzIGlubGluaW5nIHRoZSBpbml0IGFuZCBzZXR1cCBmdW5jdGlvbnMsIGJ1dCB3YXMgZ2V0 dGluZyBpdHNlbGYKPiBjb25mdXNlZCBpbnRvIHRoaW5raW5nIHRoYXQgdmFyaWFibGVzIGNvdWxk IGJlIHVzZWQgdW5pbml0aWFsaXNlZC4gSWYgd2UKPiBkbyB0aGUgaW5saW5lIGZvciBnY2MsIGl0 IGlzIGhhcHB5ISBBcyBhIGJvbnVzIHdlIHNocmluayB0aGUgY29kZS4KPiAKPiBTaWduZWQtb2Zm LWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiBDYzogSm9vbmFz IExhaHRpbmVuIDxqb29uYXMubGFodGluZW5AbGludXguaW50ZWwuY29tPgo+IC0tLQo+IMKgZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVyX3N0YXRlLmMgfCA5MyArKysrKysrKy0t LS0tLS0tLS0tLS0tLS0tLS0tCj4gwqAxIGZpbGUgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwg NjcgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVu ZGVyX3N0YXRlLmMKPiBpbmRleCBhOWI1NmQxOGE5M2IuLmI1MDQxMmMyMDVlNSAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCj4gQEAgLTMyLDcg KzMyLDYgQEAgc3RydWN0IHJlbmRlcl9zdGF0ZSB7Cj4gwqAJY29uc3Qgc3RydWN0IGludGVsX3Jl bmRlcnN0YXRlX3JvZGF0YSAqcm9kYXRhOwo+IMKgCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmo7Cj4gwqAJdTY0IGdndHRfb2Zmc2V0Owo+IC0JaW50IGdlbjsKPiDCoAl1MzIgYXV4X2Jh dGNoX3NpemU7Cj4gwqAJdTMyIGF1eF9iYXRjaF9vZmZzZXQ7Cj4gwqB9Owo+IEBAIC01NCwzNiAr NTMsNiBAQCByZW5kZXJfc3RhdGVfZ2V0X3JvZGF0YShjb25zdCBpbnQgZ2VuKQo+IMKgCXJldHVy biBOVUxMOwo+IMKgfQo+IMKgCj4gLXN0YXRpYyBpbnQgcmVuZGVyX3N0YXRlX2luaXQoc3RydWN0 IHJlbmRlcl9zdGF0ZSAqc28sCj4gLQkJCcKgwqDCoMKgwqBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCj4gLXsKPiAtCWludCByZXQ7Cj4gLQo+IC0Jc28tPmdlbiA9IElOVEVMX0dF TihkZXZfcHJpdik7Cj4gLQlzby0+Z2d0dF9vZmZzZXQgPSAwOyAvKiBrZWVwIGdjYyBxdWlldCAq Lwo+IC0Jc28tPnJvZGF0YSA9IHJlbmRlcl9zdGF0ZV9nZXRfcm9kYXRhKHNvLT5nZW4pOwo+IC0J aWYgKHNvLT5yb2RhdGEgPT0gTlVMTCkKPiAtCQlyZXR1cm4gMDsKPiAtCj4gLQlpZiAoc28tPnJv ZGF0YS0+YmF0Y2hfaXRlbXMgKiA0ID4gNDA5NikKPiAtCQlyZXR1cm4gLUVJTlZBTDsKPiAtCj4g LQlzby0+b2JqID0gaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZSgmZGV2X3ByaXYtPmRybSwgNDA5Nik7 Cj4gLQlpZiAoSVNfRVJSKHNvLT5vYmopKQo+IC0JCXJldHVybiBQVFJfRVJSKHNvLT5vYmopOwo+ IC0KPiAtCXJldCA9IGk5MTVfZ2VtX29ial9nZ3R0X3Bpbihzby0+b2JqLCA0MDk2LCAwKTsKPiAt CWlmIChyZXQpCj4gLQkJZ290byBmcmVlX2dlbTsKPiAtCj4gLQlzby0+Z2d0dF9vZmZzZXQgPSBp OTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQoc28tPm9iaik7Cj4gLQlyZXR1cm4gMDsKPiAtCj4gLWZy ZWVfZ2VtOgo+IC0JaTkxNV9nZW1fb2JqZWN0X3B1dChzby0+b2JqKTsKPiAtCXJldHVybiByZXQ7 Cj4gLX0KPiAtCj4gwqAvKgo+IMKgICogTWFjcm8gdG8gYWRkIGNvbW1hbmRzIHRvIGF1eGlsaWFy eSBiYXRjaC4KPiDCoCAqIFRoaXMgbWFjcm8gb25seSBjaGVja3MgZm9yIHBhZ2Ugb3ZlcmZsb3cg YmVmb3JlIGluc2VydGluZyB0aGUgY29tbWFuZHMsCj4gQEAgLTEwNiw2ICs3NSw3IEBAIHN0YXRp YyBpbnQgcmVuZGVyX3N0YXRlX3NldHVwKHN0cnVjdCByZW5kZXJfc3RhdGUgKnNvKQo+IMKgewo+ IMKgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBzby0+b2JqLT5iYXNlLmRldjsKPiDCoAljb25z dCBzdHJ1Y3QgaW50ZWxfcmVuZGVyc3RhdGVfcm9kYXRhICpyb2RhdGEgPSBzby0+cm9kYXRhOwo+ ICsJY29uc3QgYm9vbCBoYXNfNjRiaXRfcmVsb2MgPSBJTlRFTF9HRU4oZGV2KSA+PSA4Owo+IMKg CXVuc2lnbmVkIGludCBpID0gMCwgcmVsb2NfaW5kZXggPSAwOwo+IMKgCXN0cnVjdCBwYWdlICpw YWdlOwo+IMKgCXUzMiAqZDsKPiBAQCAtMTI0LDcgKzk0LDcgQEAgc3RhdGljIGludCByZW5kZXJf c3RhdGVfc2V0dXAoc3RydWN0IHJlbmRlcl9zdGF0ZSAqc28pCj4gwqAJCWlmIChpICogNMKgwqA9 PSByb2RhdGEtPnJlbG9jW3JlbG9jX2luZGV4XSkgewo+IMKgCQkJdTY0IHIgPSBzICsgc28tPmdn dHRfb2Zmc2V0Owo+IMKgCQkJcyA9IGxvd2VyXzMyX2JpdHMocik7Cj4gLQkJCWlmIChzby0+Z2Vu ID49IDgpIHsKPiArCQkJaWYgKGhhc182NGJpdF9yZWxvYykgewo+IMKgCQkJCWlmIChpICsgMSA+ PSByb2RhdGEtPmJhdGNoX2l0ZW1zIHx8Cj4gwqAJCQkJwqDCoMKgwqByb2RhdGEtPmJhdGNoW2kg KyAxXSAhPSAwKSB7Cj4gwqAJCQkJCXJldCA9IC1FSU5WQUw7Cj4gQEAgLTIwMiw1MyArMTcyLDQw IEBAIGVycl9vdXQ6Cj4gwqAKPiDCoCN1bmRlZiBPVVRfQkFUQ0gKPiDCoAo+IC1zdGF0aWMgdm9p ZCByZW5kZXJfc3RhdGVfZmluaShzdHJ1Y3QgcmVuZGVyX3N0YXRlICpzbykKPiAtewo+IC0JaTkx NV9nZW1fb2JqZWN0X2dndHRfdW5waW4oc28tPm9iaik7Cj4gLQlpOTE1X2dlbV9vYmplY3RfcHV0 KHNvLT5vYmopOwo+IC19Cj4gLQo+IC1zdGF0aWMgaW50IHJlbmRlcl9zdGF0ZV9wcmVwYXJlKHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwKPiAtCQkJCXN0cnVjdCByZW5kZXJfc3RhdGUg KnNvKQo+ICtpbnQgaTkxNV9nZW1fcmVuZGVyX3N0YXRlX2luaXQoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEpCj4gwqB7Cj4gKwlzdHJ1Y3QgcmVuZGVyX3N0YXRlIHNvOwo+IMKgCWlu dCByZXQ7Cj4gwqAKPiAtCWlmIChXQVJOX09OKGVuZ2luZS0+aWQgIT0gUkNTKSkKPiAtCQlyZXR1 cm4gLUVOT0VOVDsKPiAtCj4gLQlyZXQgPSByZW5kZXJfc3RhdGVfaW5pdChzbywgZW5naW5lLT5p OTE1KTsKPiAtCWlmIChyZXQpCj4gLQkJcmV0dXJuIHJldDsKPiAtCj4gLQlpZiAoc28tPnJvZGF0 YSA9PSBOVUxMKQo+ICsJaWYgKFdBUk5fT04ocmVxLT5lbmdpbmUtPmlkICE9IFJDUykpCj4gwqAJ CXJldHVybiAwOwoKV2h5IG5vdCAtRU5PRU5UIGFueW1vcmUsIGl0IHdhcyBwcm9wYWdhdGVkIHVw IHByZXZpb3VzbHkuCgo+IMKgCj4gLQlyZXQgPSByZW5kZXJfc3RhdGVfc2V0dXAoc28pOwo+IC0J aWYgKHJldCkgewo+IC0JCXJlbmRlcl9zdGF0ZV9maW5pKHNvKTsKPiAtCQlyZXR1cm4gcmV0Owo+ IC0JfQo+ICsJc28ucm9kYXRhID0gcmVuZGVyX3N0YXRlX2dldF9yb2RhdGEoSU5URUxfR0VOKHJl cS0+aTkxNSkpOwoKV2hpbGUgeW91IHJldmFtcCwgbWF5YmUgbGV0IHRoZSBmdW5jdGlvbiB0YWtl IHJlcS0+aTkxNSBkaXJlY3RseT8KCk90aGVyd2lzZSBsb29rcyBxdWl0ZSBnb29kLgoKPiArCWlm IChzby5yb2RhdGEgPT0gTlVMTCkKPiArCQlyZXR1cm4gMDsKPiAKPiDCoAo+IC0JcmV0dXJuIDA7 Cj4gLX0KPiArCWlmIChzby5yb2RhdGEtPmJhdGNoX2l0ZW1zICogNCA+IDQwOTYpCj4gKwkJcmV0 dXJuIC1FSU5WQUw7Cj4gwqAKPiAtaW50IGk5MTVfZ2VtX3JlbmRlcl9zdGF0ZV9pbml0KHN0cnVj dCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQo+IC17Cj4gLQlzdHJ1Y3QgcmVuZGVyX3N0YXRl IHNvOwo+IC0JaW50IHJldDsKPiArCXNvLm9iaiA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGUoJnJl cS0+aTkxNS0+ZHJtLCA0MDk2KTsKPiArCWlmIChJU19FUlIoc28ub2JqKSkKPiArCQlyZXR1cm4g UFRSX0VSUihzby5vYmopOwo+IMKgCj4gLQlyZXQgPSByZW5kZXJfc3RhdGVfcHJlcGFyZShyZXEt PmVuZ2luZSwgJnNvKTsKPiArCXJldCA9IGk5MTVfZ2VtX29ial9nZ3R0X3Bpbihzby5vYmosIDQw OTYsIDApOwo+IMKgCWlmIChyZXQpCj4gLQkJcmV0dXJuIHJldDsKPiArCQlnb3RvIGVycl9vYmo7 Cj4gwqAKPiAtCWlmIChzby5yb2RhdGEgPT0gTlVMTCkKPiAtCQlyZXR1cm4gMDsKPiArCXNvLmdn dHRfb2Zmc2V0ID0gaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KHNvLm9iaik7Cj4gKwo+ICsJcmV0 ID0gcmVuZGVyX3N0YXRlX3NldHVwKCZzbyk7Cj4gKwlpZiAocmV0KQo+ICsJCWdvdG8gZXJyX3Vu cGluOwo+IMKgCj4gwqAJcmV0ID0gcmVxLT5lbmdpbmUtPmVtaXRfYmJfc3RhcnQocmVxLCBzby5n Z3R0X29mZnNldCwKPiDCoAkJCQkJwqBzby5yb2RhdGEtPmJhdGNoX2l0ZW1zICogNCwKPiDCoAkJ CQkJwqBJOTE1X0RJU1BBVENIX1NFQ1VSRSk7Cj4gwqAJaWYgKHJldCkKPiAtCQlnb3RvIG91dDsK PiArCQlnb3RvIGVycl91bnBpbjsKPiDCoAo+IMKgCWlmIChzby5hdXhfYmF0Y2hfc2l6ZSA+IDgp IHsKPiDCoAkJcmV0ID0gcmVxLT5lbmdpbmUtPmVtaXRfYmJfc3RhcnQocmVxLAo+IEBAIC0yNTcs MTEgKzIxNCwxMyBAQCBpbnQgaTkxNV9nZW1fcmVuZGVyX3N0YXRlX2luaXQoc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEpCj4gwqAJCQkJCQnCoHNvLmF1eF9iYXRjaF9zaXplLAo+IMKg CQkJCQkJwqBJOTE1X0RJU1BBVENIX1NFQ1VSRSk7Cj4gwqAJCWlmIChyZXQpCj4gLQkJCWdvdG8g b3V0Owo+ICsJCQlnb3RvIGVycl91bnBpbjsKPiDCoAl9Cj4gwqAKPiDCoAlpOTE1X3ZtYV9tb3Zl X3RvX2FjdGl2ZShpOTE1X2dlbV9vYmpfdG9fZ2d0dChzby5vYmopLCByZXEpOwo+IC1vdXQ6Cj4g LQlyZW5kZXJfc3RhdGVfZmluaSgmc28pOwo+ICtlcnJfdW5waW46Cj4gKwlpOTE1X2dlbV9vYmpl Y3RfZ2d0dF91bnBpbihzby5vYmopOwo+ICtlcnJfb2JqOgo+ICsJaTkxNV9nZW1fb2JqZWN0X3B1 dChzby5vYmopOwo+IMKgCXJldHVybiByZXQ7Cj4gwqB9Ci0tIApKb29uYXMgTGFodGluZW4KT3Bl biBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIKSW50ZWwgQ29ycG9yYXRpb24KX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==