From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Nbiun-0006C9-NR for qemu-devel@nongnu.org; Sun, 31 Jan 2010 18:09:13 -0500 Received: from [199.232.76.173] (port=47860 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Nbium-0006Bm-Ti for qemu-devel@nongnu.org; Sun, 31 Jan 2010 18:09:12 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1Nbiul-0005oF-Ef for qemu-devel@nongnu.org; Sun, 31 Jan 2010 18:09:12 -0500 Received: from are.twiddle.net ([75.149.56.221]:53456) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Nbiuk-0005nn-UN for qemu-devel@nongnu.org; Sun, 31 Jan 2010 18:09:11 -0500 Message-ID: <4B660D91.1010205@twiddle.net> Date: Sun, 31 Jan 2010 15:09:05 -0800 From: Richard Henderson MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform References: <180712.4158.qm@web15902.mail.cnb.yahoo.com> In-Reply-To: <180712.4158.qm@web15902.mail.cnb.yahoo.com> Content-Type: multipart/mixed; boundary="------------050601020509060403050901" List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: identifier scorpio Cc: qemu-devel@nongnu.org This is a multi-part message in MIME format. --------------050601020509060403050901 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > tcg_out_ld(s, TCG_TYPE_I64, r1, r1, offsetof(CPUTLBEntry, addend) - > offsetof(CPUTLBEntry, addr_read)); > > should be modified to > > tcg_out_ld(s, TCG_TYPE_I64, r1, r1, offsetof(CPUTLBEntry, addend)); Actually, it should be the entire offset from CPUState. The ADDR_WRITE offset before was entirely stuffed into the LD offset. > At the end of tcg_out_tlb_cmp(), R0's value is (page# | low bit of > VA), if the branch is taken, i.e., TLB miss, R0 will be passed as an > argument to helper functions, is it currently holding the correct > value? I think at this time R0 should equal to addr_reg. You're absolutely right here. Here's the kind of patch I think will fix it. r~ --------------050601020509060403050901 Content-Type: text/plain; name="commit-04e0dc2" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="commit-04e0dc2" Y29tbWl0IDA0ZTBkYzI1MjIwM2JmYmM1YjAyYzJkM2Q4NzU3YTAwNWUzMDRhMzkKQXV0aG9y OiBSaWNoYXJkIEhlbmRlcnNvbiA8cnRoQHR3aWRkbGUubmV0PgpEYXRlOiAgIFN1biBKYW4g MzEgMTU6MDY6MzUgMjAxMCAtMDgwMAoKICAgIHRjZy1hbHBoYTogRml4IHByb2JsZW1zIGlu IHFlbXVfbGQvc3QuCiAgICAKICAgIENvcHkgYWRkcmVzcyB0byBSMCBpbiB0Y2dfb3V0X3Rs Yl9jbXAsIGZvciB1c2UgaW4gaGVscGVyIHBhdGguCiAgICBVc2UgZW50aXJlIFRMQiBjb25z dGFudCBvZmZzZXQgcGVyZm9ybWluZyB0aGUgQURERU5EIHJlYWQuCgpkaWZmIC0tZ2l0IGEv dGNnL2FscGhhL3RjZy10YXJnZXQuYyBiL3RjZy9hbHBoYS90Y2ctdGFyZ2V0LmMKaW5kZXgg NTE5ZWRlZi4uNDYzYjdlZSAxMDA2NDQKLS0tIGEvdGNnL2FscGhhL3RjZy10YXJnZXQuYwor KysgYi90Y2cvYWxwaGEvdGNnLXRhcmdldC5jCkBAIC03MDksOSArNzA5LDEwIEBAIHN0YXRp YyB2b2lkICpxZW11X3N0X2hlbHBlcnNbNF0gPSB7CiBzdGF0aWMgdm9pZCB0Y2dfb3V0X3Rs Yl9jbXAoVENHQ29udGV4dCAqcywgaW50IHNpemVvcCwgaW50IHIwLCBpbnQgcjEsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGFkZHJfcmVnLCBpbnQgbGFiZWwxLCBsb25n IHRsYl9vZmZzZXQpCiB7CisgICAgaW50IGFkZHJzaXplb3AgPSBUQVJHRVRfTE9OR19CSVRT ID09IDMyID8gMiA6IDM7CiAgICAgbG9uZyB2YWw7CiAKLSAgICAvKiBNYXNrIHRoZSBwYWdl LCBwbHVzIHRoZSBsb3cgYml0cyBvZiB0aGUgYWNjZXNzLCBpbnRvIFIwLiAgTm90ZQorICAg IC8qIE1hc2sgdGhlIHBhZ2UsIHBsdXMgdGhlIGxvdyBiaXRzIG9mIHRoZSBhY2Nlc3MsIGlu dG8gVE1QMy4gIE5vdGUKICAgICAgICB0aGF0IHRoZSBsb3cgYml0cyBhcmUgYWRkZWQgaW4g b3JkZXIgdG8gY2F0Y2ggdW5hbGlnbmVkIGFjY2Vzc2VzLAogICAgICAgIGFzIHRob3NlIGJp dHMgd29uJ3QgYmUgc2V0IGluIHRoZSBUTEIgZW50cnkuICBGb3IgMzItYml0IHRhcmdldHMs CiAgICAgICAgZm9yY2UgdGhlIGhpZ2ggYml0cyBvZiB0aGUgbWFzayB0byBiZSB6ZXJvLCBh cyB0aGUgaGlnaCBiaXRzIG9mCkBAIC03MjAsNyArNzIxLDcgQEAgc3RhdGljIHZvaWQgdGNn X291dF90bGJfY21wKFRDR0NvbnRleHQgKnMsIGludCBzaXplb3AsIGludCByMCwgaW50IHIx LAogICAgIGlmIChUQVJHRVRfTE9OR19CSVRTID09IDMyKSB7CiAgICAgICAgIHZhbCAmPSAw eGZmZmZmZmZmdTsKICAgICB9Ci0gICAgdGNnX291dF9hbmRpKHMsIGFkZHJfcmVnLCB2YWws IHIwKTsKKyAgICB0Y2dfb3V0X2FuZGkocywgYWRkcl9yZWcsIHZhbCwgVE1QX1JFRzMpOwog CiAgICAgLyogQ29tcHV0ZSB0aGUgaW5kZXggaW50byB0aGUgVExCIGludG8gUjEuICBBZ2Fp biwgbm90ZSB0aGF0IHRoZQogICAgICAgIGhpZ2ggYml0cyBvZiBhIDMyLWJpdCBhZGRyZXNz IG11c3QgYmUgY2xlYXJlZC4gICovCkBAIC03MzYsMTEgKzczNywxNCBAQCBzdGF0aWMgdm9p ZCB0Y2dfb3V0X3RsYl9jbXAoVENHQ29udGV4dCAqcywgaW50IHNpemVvcCwgaW50IHIwLCBp bnQgcjEsCiAgICAgLyogTG9hZCB0aGUgd29yZCBhdCAoUjEgKyBDUFVfRU5WICsgVExCX09G RlNFVCkuICBOb3RlIHRoYXQgd2UKICAgICAgICBhcnJhbmdlIGZvciBhIDMyLWJpdCBsb2Fk IHRvIGJlIHplcm8tZXh0ZW5kZWQuICAqLwogICAgIHRjZ19vdXRfZm10X29wcihzLCBJTlNO X0FERFEsIHIxLCBUQ0dfQVJFRzAsIHIxKTsKLSAgICB0Y2dfb3V0X2xkX3N6KHMsIFRBUkdF VF9MT05HX0JJVFMgPT0gMzIgPyAyIDogMywKLSAgICAgICAgICAgICAgICAgIFRNUF9SRUcy LCByMSwgdGxiX29mZnNldCk7CisgICAgdGNnX291dF9sZF9zeihzLCBhZGRyc2l6ZW9wLCBU TVBfUkVHMiwgcjEsIHRsYl9vZmZzZXQpOwogCi0gICAgLyogQ29tcGFyZSBSMCB3aXRoIHRo ZSB2YWx1ZSBsb2FkZWQgZnJvbSB0aGUgVExCLiAgKi8KLSAgICB0Y2dfb3V0X2JyY29uZChz LCBUQ0dfQ09ORF9ORSwgVE1QX1JFRzIsIHIwLCAwLCBsYWJlbDEpOworICAgIC8qIENvcHkg dGhlIG9yaWdpbmFsIGFkZHJlc3MgaW50byBSMC4gIFRoaXMgaXMgbmVlZGVkIG9uIHRoZQor ICAgICAgIHNsb3cgcGF0aCB0aHJvdWdoIHRoZSBoZWxwZXIgZnVuY3Rpb24uICAqLworICAg IHRjZ19vdXRfZXh0ZW5kKHMsIGFkZHJzaXplb3AsIGFkZHJfcmVnLCByMCk7CisKKyAgICAv KiBDb21wYXJlIFRNUDMgd2l0aCB0aGUgdmFsdWUgbG9hZGVkIGZyb20gdGhlIFRMQi4gICov CisgICAgdGNnX291dF9icmNvbmQocywgVENHX0NPTkRfTkUsIFRNUF9SRUcyLCBUTVBfUkVH MywgMCwgbGFiZWwxKTsKIH0KICNlbmRpZiAvKiBTT0ZUTU1VICovCiAKQEAgLTc2OSwyMCAr NzczLDEyIEBAIHN0YXRpYyB2b2lkIHRjZ19vdXRfcWVtdV9sZChUQ0dDb250ZXh0ICpzLCBj b25zdCBUQ0dBcmcgKmFyZ3MsIGludCBzaXplb3ApCiAgICAgLyogVExCIEhpdC4gIE5vdGUg dGhhdCBBbHBoYSBzdGF0aWNhbGx5IHByZWRpY3RzIGZvcndhcmQgYnJhbmNoIGFzCiAgICAg ICAgbm90IHRha2VuLCBzbyBhcnJhbmdlIHRoZSBmYWxsdGhydSBhcyB0aGUgY29tbW9uIGNh c2UuCiAKLSAgICAgICBBRERSX1JFRyBjb250YWlucyB0aGUgZ3Vlc3QgYWRkcmVzcywgYW5k IFIxIGNvbnRhaW5zIHRoZSBwb2ludGVyCi0gICAgICAgdG8gVExCX0VOVFJZLkFERFJfUkVB RC4gIFdlIG5lZWQgdG8gbG9hZCBUTEJfRU5UUlkuQURERU5EIGFuZAotICAgICAgIGFkZCBp dCB0byBBRERSX1JFRyB0byBnZXQgdGhlIGhvc3QgYWRkcmVzcy4gICovCisgICAgICAgUjAg Y29udGFpbnMgdGhlIGd1ZXN0IGFkZHJlc3MsIGFuZCBSMSBjb250YWlucyB0aGUgcG9pbnRl cgorICAgICAgIHRvIENQVV9FTlYgcGx1cyB0aGUgVExCIGVudHJ5IG9mZnNldC4gICovCiAK ICAgICB0Y2dfb3V0X2xkKHMsIFRDR19UWVBFX0k2NCwgcjEsIHIxLAotICAgICAgICAgICAg ICAgb2Zmc2V0b2YoQ1BVVExCRW50cnksIGFkZGVuZCkKLSAgICAgICAgICAgICAgIC0gb2Zm c2V0b2YoQ1BVVExCRW50cnksIGFkZHJfcmVhZCkpOwotCi0gICAgaWYgKFRBUkdFVF9MT05H X0JJVFMgPT0gMzIpIHsKLSAgICAgICAgdGNnX291dF9leHRlbmQocywgMiwgYWRkcl9yZWcs IHIwKTsKLSAgICAgICAgYWRkcl9yZWcgPSByMDsKLSAgICB9Ci0KLSAgICB0Y2dfb3V0X2Zt dF9vcHIocywgSU5TTl9BRERRLCBhZGRyX3JlZywgcjEsIHIwKTsKKyAgICAgICAgICAgICAg IG9mZnNldG9mKENQVVN0YXRlLCB0bGJfdGFibGVbbWVtX2luZGV4XVswXS5hZGRlbmQpKTsK KyAgICB0Y2dfb3V0X2ZtdF9vcHIocywgSU5TTl9BRERRLCByMCwgcjEsIHIwKTsKICAgICB2 YWwgPSAwOwogI2Vsc2UKICAgICByMCA9IGFkZHJfcmVnOwpAQCAtODQxLDIwICs4MzcsMTIg QEAgc3RhdGljIHZvaWQgdGNnX291dF9xZW11X3N0KFRDR0NvbnRleHQgKnMsIGNvbnN0IFRD R0FyZyAqYXJncywgaW50IHNpemVvcCkKICAgICAvKiBUTEIgSGl0LiAgTm90ZSB0aGF0IEFs cGhhIHN0YXRpY2FsbHkgcHJlZGljdHMgZm9yd2FyZCBicmFuY2ggYXMKICAgICAgICBub3Qg dGFrZW4sIHNvIGFycmFuZ2UgdGhlIGZhbGx0aHJ1IGFzIHRoZSBjb21tb24gY2FzZS4KIAot ICAgICAgIEFERFJfUkVHIGNvbnRhaW5zIHRoZSBndWVzdCBhZGRyZXNzLCBhbmQgUjEgY29u dGFpbnMgdGhlIHBvaW50ZXIKLSAgICAgICB0byBUTEJfRU5UUlkuQUREUl9SRUFELiAgV2Ug bmVlZCB0byBsb2FkIFRMQl9FTlRSWS5BRERFTkQgYW5kCi0gICAgICAgYWRkIGl0IHRvIEFE RFJfUkVHIHRvIGdldCB0aGUgaG9zdCBhZGRyZXNzLiAgKi8KKyAgICAgICBSMCBjb250YWlu cyB0aGUgZ3Vlc3QgYWRkcmVzcywgYW5kIFIxIGNvbnRhaW5zIHRoZSBwb2ludGVyCisgICAg ICAgdG8gQ1BVX0VOViBwbHVzIHRoZSBUTEIgZW50cnkgb2Zmc2V0LiAgKi8KIAogICAgIHRj Z19vdXRfbGQocywgVENHX1RZUEVfSTY0LCByMSwgcjEsCi0gICAgICAgICAgICAgICBvZmZz ZXRvZihDUFVUTEJFbnRyeSwgYWRkZW5kKQotICAgICAgICAgICAgICAgLSBvZmZzZXRvZihD UFVUTEJFbnRyeSwgYWRkcl93cml0ZSkpOwotCi0gICAgaWYgKFRBUkdFVF9MT05HX0JJVFMg PT0gMzIpIHsKLSAgICAgICAgdGNnX291dF9leHRlbmQocywgMiwgYWRkcl9yZWcsIHIwKTsK LSAgICAgICAgYWRkcl9yZWcgPSByMDsKLSAgICB9Ci0KLSAgICB0Y2dfb3V0X2ZtdF9vcHIo cywgSU5TTl9BRERRLCBhZGRyX3JlZywgcjEsIHIwKTsKKyAgICAgICAgICAgICAgIG9mZnNl dG9mKENQVVN0YXRlLCB0bGJfdGFibGVbbWVtX2luZGV4XVswXS5hZGRlbmQpKTsKKyAgICB0 Y2dfb3V0X2ZtdF9vcHIocywgSU5TTl9BRERRLCByMCwgcjEsIHIwKTsKICAgICB2YWwgPSAw OwogI2Vsc2UKICAgICByMCA9IGFkZHJfcmVnOwo= --------------050601020509060403050901--