From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1VepFI-0001FB-Fl for mharc-grub-devel@gnu.org; Fri, 08 Nov 2013 11:49:20 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60105) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VepF6-00014Q-Bg for grub-devel@gnu.org; Fri, 08 Nov 2013 11:49:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VepEx-0006Ry-US for grub-devel@gnu.org; Fri, 08 Nov 2013 11:49:08 -0500 Received: from mail-ee0-x22c.google.com ([2a00:1450:4013:c00::22c]:60525) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VepEx-0006Rl-IU for grub-devel@gnu.org; Fri, 08 Nov 2013 11:48:59 -0500 Received: by mail-ee0-f44.google.com with SMTP id d41so1150151eek.3 for ; Fri, 08 Nov 2013 08:48:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type; bh=Ov+X69jy5ZZBh552U8sh/RnrxBj+WOeKNg29SHqMF3k=; b=eQJIFfyRiba9AyE+tcaxkGIBp2n+f9L9aPQYeiBzyP7e8tCtCFMiXj6Yc/0/e/O6Vn FDo6rItA3cGgD00K/xeld9Ob4na+psTk6uL8ohyePzhJKwsDPTXYX7nBK/QZ5ccwhBQZ DRZLk83P/amt5civNmYjCSUX3S6hieHk+esrZKy44huZB9ukEC7+D26SO+BTzFXPiQPq +pRBtMA0huUexnVKIu2eyXGWBkkaLMBxa69Mdt/4AoyqrNys80MRVxJL3egWX8shtCRU 6zwvF0IWwOgUPMIBXlwXe6qMWAR4/4/U7romj5ydFTdZcgTl4cLnbvi44/Zsfn7MN8yZ W++A== X-Received: by 10.14.251.196 with SMTP id b44mr3091135ees.10.1383929338593; Fri, 08 Nov 2013 08:48:58 -0800 (PST) Received: from [192.168.42.74] (140-236.197-178.cust.bluewin.ch. [178.197.236.140]) by mx.google.com with ESMTPSA id z1sm24848632eeo.14.2013.11.08.08.48.54 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 08 Nov 2013 08:48:57 -0800 (PST) Message-ID: <527D15F4.4010200@gmail.com> Date: Fri, 08 Nov 2013 17:48:52 +0100 From: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20131005 Icedove/17.0.9 MIME-Version: 1.0 To: The development of GRUB 2 Subject: [ARM, IA64] Division on arm and ia64 X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="----enig2SXWSBXATOBNKKDDKBKND" X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:4013:c00::22c X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Nov 2013 16:49:17 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2SXWSBXATOBNKKDDKBKND Content-Type: multipart/mixed; boundary="------------020808090507020508030303" This is a multi-part message in MIME format. --------------020808090507020508030303 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, all. ARM and ia64 apparently don't generically have opcode to make division of pointer-sized integers. Alpha has the same property but alpha port is in very sorry state anyway so it doesn't matter anyway. Looking at libgcc code at functions at question, I see that they use algorithm very similar to what we have in divmod64. IA64 version uses FPU which probably worked more by luck since we don't do proper FPU setup on any platform. Alpha version also uses FPU and probably doesn't work. In my alpha port I redirected all division functions to grub_divmod64. What do you think about attached patch? --------------020808090507020508030303 Content-Type: application/x-patch; name="div.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="div.diff" ZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwppbmRleCBlYTM4ZjA5 Li45NTZjZmVkIDEwMDY0NAotLS0gYS9jb25maWd1cmUuYWMKKysrIGIvY29uZmlndXJlLmFj CkBAIC04MjAsNyArODIwLDcgQEAgQ0ZMQUdTPSIkVEFSR0VUX0NGTEFHUyAtV2wsLS1kZWZz eW0sYWJvcnQ9bWFpbiIKIGZpCiAKICMgQ2hlY2sgZm9yIGxpYmdjYyBzeW1ib2xzCi1BQ19D SEVDS19GVU5DUyhfX2Jzd2Fwc2kyIF9fYnN3YXBkaTIgX19hc2hsZGkzIF9fYXNocmRpMyBf X2xzaHJkaTMgX191Y21wZGkyIF9yZXN0Z3ByXzE0X3ggX191ZGl2c2kzIF9fdW1vZGRpMyBf X3VkaXZkaTMgX19kaXZzaTMgX19tb2RzaTMgX191bW9kc2kzIF9fbW9kZGkzIF9fZGl2ZGkz IF9fY3R6ZGkyIF9fY3R6c2kyKQorQUNfQ0hFQ0tfRlVOQ1MoX19ic3dhcHNpMiBfX2Jzd2Fw ZGkyIF9fYXNobGRpMyBfX2FzaHJkaTMgX19sc2hyZGkzIF9fdWNtcGRpMiBfcmVzdGdwcl8x NF94IF9fY3R6ZGkyIF9fY3R6c2kyKQogCiBpZiB0ZXN0ICJ4JFRBUkdFVF9BUFBMRV9DQyIg PSB4MSA7IHRoZW4KIENGTEFHUz0iJFRBUkdFVF9DRkxBR1MgLW5vc3RkbGliIgpkaWZmIC0t Z2l0IGEvZ3J1Yi1jb3JlL2tlcm4vYXJtL21pc2MuUyBiL2dydWItY29yZS9rZXJuL2FybS9t aXNjLlMKaW5kZXggOWQ0YzMzMy4uNjhlNDgyOCAxMDA2NDQKLS0tIGEvZ3J1Yi1jb3JlL2tl cm4vYXJtL21pc2MuUworKysgYi9ncnViLWNvcmUva2Vybi9hcm0vbWlzYy5TCkBAIC0zMCw2 ICszMCwyNiBAQAogCiAJLmFsaWduCTIKIAorCS5tYWNybyBkaXZpc2lvbiBwYXJlbnQKKwor ICAgICAgICBzdG1mZCAgIHNwISwge2xyfQorICAgICAgICBzdWIgICAgIHNwLCBzcCwgIzEy CisgICAgICAgIG1vdiAgICAgcjIsIHIxCisgICAgICAgIGFkZCAgICAgcjEsIHNwLCAjNAor ICAgICAgICBzdHIgICAgIHIxLCBbc3AsICMwXQorICAgICAgICBtb3YgICAgIHIxLCAjMAor ICAgICAgICBtb3YgICAgIHIzLCAjMAorICAgICAgICBibCAgICAgIFxwYXJlbnQKKwlsZHIg ICAgIHIxLCBbc3AsICM0XQorICAgICAgICBhZGQgICAgIHNwLCBzcCwgIzEyCisgICAgICAg IGxkbWZkICAgc3AhLCB7bHJ9CisgICAgICAgIGJ4ICAgICAgbHIKKwkuZW5kbQorCitGVU5D VElPTihfX2FlYWJpX3VpZGl2bW9kKQorCWRpdmlzaW9uIGdydWJfZGl2bW9kNjQKKworCiAv KgogICogTnVsbCBkaXZpZGUtYnktemVybyBoYW5kbGVyCiAgKi8KZGlmZiAtLWdpdCBhL2dy dWItY29yZS9rZXJuL21pc2MuYyBiL2dydWItY29yZS9rZXJuL21pc2MuYwppbmRleCBmODgz ZmI5Li5jYWY3Nzc5IDEwMDY0NAotLS0gYS9ncnViLWNvcmUva2Vybi9taXNjLmMKKysrIGIv Z3J1Yi1jb3JlL2tlcm4vbWlzYy5jCkBAIC01ODksNiArNTg5LDQ5IEBAIGdydWJfZGl2bW9k NjQgKGdydWJfdWludDY0X3QgbiwgZ3J1Yl91aW50NjRfdCBkLCBncnViX3VpbnQ2NF90ICpy KQogICByZXR1cm4gcTsKIH0KIAorI2lmIGRlZmluZWQgKF9fYXJtX18pCisKK2dydWJfdWlu dDMyX3QKK19fdWRpdnNpMyAoZ3J1Yl91aW50MzJfdCBhLCBncnViX3VpbnQzMl90IGIpCit7 CisgIHJldHVybiBncnViX2Rpdm1vZDY0IChhLCBiLCAwKTsKK30KKworZ3J1Yl91aW50MzJf dAorX191bW9kc2kzIChncnViX3VpbnQzMl90IGEsIGdydWJfdWludDMyX3QgYikKK3sKKyAg Z3J1Yl91aW50NjRfdCByZXQ7CisgIGdydWJfZGl2bW9kNjQgKGEsIGIsICZyZXQpOworICBy ZXR1cm4gcmV0OworfQorCisKKyNlbmRpZgorCisjaWZkZWYgX19hcm1fXworZ3J1Yl91aW50 MzJfdAorX19hZWFiaV91aWRpdiAoZ3J1Yl91aW50MzJfdCBhLCBncnViX3VpbnQzMl90IGIp CisgIF9fYXR0cmlidXRlX18gKChhbGlhcyAoIl9fdWRpdnNpMyIpKSk7CisjZW5kaWYKKwor I2lmIGRlZmluZWQgKF9faWE2NF9fKQorCitncnViX3VpbnQ2NF90CitfX3VkaXZkaTMgKGdy dWJfdWludDY0X3QgYSwgZ3J1Yl91aW50NjRfdCBiKQoreworICByZXR1cm4gZ3J1Yl9kaXZt b2Q2NCAoYSwgYiwgMCk7Cit9CisKK2dydWJfdWludDY0X3QKK19fdW1vZGRpMyAoZ3J1Yl91 aW50NjRfdCBhLCBncnViX3VpbnQ2NF90IGIpCit7CisgIGdydWJfdWludDY0X3QgcmV0Owor ICBncnViX2Rpdm1vZDY0IChhLCBiLCAmcmV0KTsKKyAgcmV0dXJuIHJldDsKK30KKworI2Vu ZGlmCisKIC8qIENvbnZlcnQgYSBsb25nIGxvbmcgdmFsdWUgdG8gYSBzdHJpbmcuIFRoaXMg ZnVuY3Rpb24gYXZvaWRzIDY0LWJpdAogICAgbW9kdWxhciBhcml0aG1ldGljIG9yIGRpdmlz aW9ucy4gICovCiBzdGF0aWMgY2hhciAqCmRpZmYgLS1naXQgYS9ncnViLWNvcmUvbGliL2xp YmdjcnlwdC9jaXBoZXIvaWRlYS5jIGIvZ3J1Yi1jb3JlL2xpYi9saWJnY3J5cHQvY2lwaGVy L2lkZWEuYwppbmRleCBjMDI1Yzk1Li4zYzU1NzhmIDEwMDY0NAotLS0gYS9ncnViLWNvcmUv bGliL2xpYmdjcnlwdC9jaXBoZXIvaWRlYS5jCisrKyBiL2dydWItY29yZS9saWIvbGliZ2Ny eXB0L2NpcGhlci9pZGVhLmMKQEAgLTcyLDggKzcyLDggQEAgbXVsX2ludiggdTE2IHggKQog CiAgICAgaWYoIHggPCAyICkKIAlyZXR1cm4geDsKLSAgICB0MSA9IDB4MTAwMDFMIC8geDsK LSAgICB5ID0gIDB4MTAwMDFMICUgeDsKKyAgICB0MSA9IDB4MTAwMDFVTCAvIHg7CisgICAg eSA9ICAweDEwMDAxVUwgJSB4OwogICAgIGlmKCB5ID09IDEgKQogCXJldHVybiAoMS10MSkg JiAweGZmZmY7CiAKZGlmZiAtLWdpdCBhL2dydWItY29yZS90ZXJtL3RwYXJtLmMgYi9ncnVi LWNvcmUvdGVybS90cGFybS5jCmluZGV4IDhjMWMyODguLmY2NTlmMTMgMTAwNjQ0Ci0tLSBh L2dydWItY29yZS90ZXJtL3RwYXJtLmMKKysrIGIvZ3J1Yi1jb3JlL3Rlcm0vdHBhcm0uYwpA QCAtNjE0LDEzICs2MTQsMTMgQEAgdHBhcmFtX2ludGVybmFsKGNvbnN0IGNoYXIgKnN0cmlu ZywgdmFfbGlzdCBhcCkKIAkgICAgY2FzZSAnLyc6CiAJCXkgPSBucG9wKCk7CiAJCXggPSBu cG9wKCk7Ci0JCW5wdXNoKHkgPyAoeCAvIHkpIDogMCk7CisJCW5wdXNoKHkgPyAoKHVuc2ln bmVkKXggLyAodW5zaWduZWQpeSkgOiAwKTsKIAkJYnJlYWs7CiAKIAkgICAgY2FzZSAnbSc6 CiAJCXkgPSBucG9wKCk7CiAJCXggPSBucG9wKCk7Ci0JCW5wdXNoKHkgPyAoeCAlIHkpIDog MCk7CisJCW5wdXNoKHkgPyAoKHVuc2lnbmVkKXggJSAodW5zaWduZWQpeSkgOiAwKTsKIAkJ YnJlYWs7CiAKIAkgICAgY2FzZSAnQSc6CmRpZmYgLS1naXQgYS9pbmNsdWRlL2dydWIvbGli Z2NjLmggYi9pbmNsdWRlL2dydWIvbGliZ2NjLmgKaW5kZXggZDEwMWRiNC4uZmRjNjYxMSAx MDA2NDQKLS0tIGEvaW5jbHVkZS9ncnViL2xpYmdjYy5oCisrKyBiL2luY2x1ZGUvZ3J1Yi9s aWJnY2MuaApAQCAtNDIsMzAgKzQyLDYgQEAgdm9pZCBFWFBPUlRfRlVOQyAoX19ic3dhcHNp MikgKHZvaWQpOwogIyBpZmRlZiBIQVZFX19fQlNXQVBESTIKIHZvaWQgRVhQT1JUX0ZVTkMg KF9fYnN3YXBkaTIpICh2b2lkKTsKICMgZW5kaWYKLSMgaWZkZWYgSEFWRV9fX1VESVZTSTMK LXZvaWQgRVhQT1JUX0ZVTkMgKF9fdWRpdnNpMykgKHZvaWQpOwotIyBlbmRpZgotIyBpZmRl ZiBIQVZFX19fVU1PRFNJMwotdm9pZCBFWFBPUlRfRlVOQyAoX191bW9kc2kzKSAodm9pZCk7 Ci0jIGVuZGlmCi0jIGlmZGVmIEhBVkVfX19VTU9EREkzCi12b2lkIEVYUE9SVF9GVU5DIChf X3Vtb2RkaTMpICh2b2lkKTsKLSMgZW5kaWYKLSMgaWZkZWYgSEFWRV9fX1VESVZESTMKLXZv aWQgRVhQT1JUX0ZVTkMgKF9fdWRpdmRpMykgKHZvaWQpOwotIyBlbmRpZgotIyBpZmRlZiBI QVZFX19fTU9EREkzCi12b2lkIEVYUE9SVF9GVU5DIChfX21vZGRpMykgKHZvaWQpOwotIyBl bmRpZgotIyBpZmRlZiBIQVZFX19fRElWREkzCi12b2lkIEVYUE9SVF9GVU5DIChfX2RpdmRp MykgKHZvaWQpOwotIyBlbmRpZgotIyBpZmRlZiBIQVZFX19fRElWU0kzCi12b2lkIEVYUE9S VF9GVU5DIChfX2RpdnNpMykgKHZvaWQpOwotIyBlbmRpZgotIyBpZmRlZiBIQVZFX19fTU9E U0kzCi12b2lkIEVYUE9SVF9GVU5DIChfX21vZHNpMykgKHZvaWQpOwotIyBlbmRpZgogIyBp ZmRlZiBIQVZFX19fQ1RaREkyCiB2b2lkIEVYUE9SVF9GVU5DIChfX2N0emRpMikgKHZvaWQp OwogIyBlbmRpZgpAQCAtMTE0LDEyICs5MCw4IEBAIHZvaWQgRVhQT1JUX0ZVTkMgKF9zYXZl Z3ByXzMxKSAodm9pZCk7CiAjZW5kaWYKIAogI2lmIGRlZmluZWQgKF9fYXJtX18pCi12b2lk IEVYUE9SVF9GVU5DIChfX2FlYWJpX2lkaXYpICh2b2lkKTsKLXZvaWQgRVhQT1JUX0ZVTkMg KF9fYWVhYmlfaWRpdm1vZCkgKHZvaWQpOwogdm9pZCBFWFBPUlRfRlVOQyAoX19hZWFiaV9s YXNyKSAodm9pZCk7CiB2b2lkIEVYUE9SVF9GVU5DIChfX2FlYWJpX2xsc2wpICh2b2lkKTsK IHZvaWQgRVhQT1JUX0ZVTkMgKF9fYWVhYmlfbGxzcikgKHZvaWQpOwotdm9pZCBFWFBPUlRf RlVOQyAoX19hZWFiaV91aWRpdikgKHZvaWQpOwotdm9pZCBFWFBPUlRfRlVOQyAoX19hZWFi aV91aWRpdm1vZCkgKHZvaWQpOwogdm9pZCBFWFBPUlRfRlVOQyAoX19hZWFiaV91bGNtcCkg KHZvaWQpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9pbmNsdWRlL2dydWIvbWlzYy5oIGIvaW5j bHVkZS9ncnViL21pc2MuaAppbmRleCA5NTgzNzI0Li42NzY3OTUzIDEwMDY0NAotLS0gYS9p bmNsdWRlL2dydWIvbWlzYy5oCisrKyBiL2luY2x1ZGUvZ3J1Yi9taXNjLmgKQEAgLTQ0OSw2 ICs0NDksMzUgQEAgZ3J1Yl9lcnJvcl9sb2FkIChjb25zdCBzdHJ1Y3QgZ3J1Yl9lcnJvcl9z YXZlZCAqc2F2ZSkKICAgZ3J1Yl9lcnJubyA9IHNhdmUtPmdydWJfZXJybm87CiB9CiAKKyNp ZiBkZWZpbmVkIChfX2FybV9fKQorCitncnViX3VpbnQzMl90CitFWFBPUlRfRlVOQyAoX191 ZGl2c2kzKSAoZ3J1Yl91aW50MzJfdCBhLCBncnViX3VpbnQzMl90IGIpOworCitncnViX3Vp bnQzMl90CitFWFBPUlRfRlVOQyAoX191bW9kc2kzKSAoZ3J1Yl91aW50MzJfdCBhLCBncnVi X3VpbnQzMl90IGIpOworCisjZW5kaWYKKworI2lmZGVmIF9fYXJtX18KK2dydWJfdWludDMy X3QKK0VYUE9SVF9GVU5DIChfX2FlYWJpX3VpZGl2KSAoZ3J1Yl91aW50MzJfdCBhLCBncnVi X3VpbnQzMl90IGIpOworZ3J1Yl91aW50MzJfdAorRVhQT1JUX0ZVTkMgKF9fYWVhYmlfdWlk aXZtb2QpIChncnViX3VpbnQzMl90IGEsIGdydWJfdWludDMyX3QgYik7CisKKyNlbmRpZgor CisjaWYgZGVmaW5lZCAoX19pYTY0X18pCisKK2dydWJfdWludDY0X3QKK0VYUE9SVF9GVU5D IChfX3VkaXZkaTMpIChncnViX3VpbnQ2NF90IGEsIGdydWJfdWludDY0X3QgYik7CisKK2dy dWJfdWludDY0X3QKK0VYUE9SVF9GVU5DIChfX3Vtb2RkaTMpIChncnViX3VpbnQ2NF90IGEs IGdydWJfdWludDY0X3QgYik7CisKKyNlbmRpZgorCisKICNpZiBCT09UX1RJTUVfU1RBVFMK IHN0cnVjdCBncnViX2Jvb3RfdGltZQogewo= --------------020808090507020508030303-- ------enig2SXWSBXATOBNKKDDKBKND Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.15 (GNU/Linux) Comment: Using GnuPG with Icedove - http://www.enigmail.net/ iF4EAREKAAYFAlJ9FfQACgkQmBXlbbo5nOvELgD8CTwdoJx4TpVxfbmY6L/pV84X D9U2n4UvF/cqp9T2vGMBAJVe9vnFVQSwp0ZNevSNVxqe2Q9Jk/GNjKmXFx8OtnvI =DQxH -----END PGP SIGNATURE----- ------enig2SXWSBXATOBNKKDDKBKND--