From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 107722 invoked by alias); 4 May 2019 11:20:55 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 107710 invoked by uid 89); 4 May 2019 11:20:54 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-20.4 required=5.0 tests=AWL,BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=builtins.c, UD:builtins.c, builtinsc, wide_int X-HELO: mail-ed1-f42.google.com Received: from mail-ed1-f42.google.com (HELO mail-ed1-f42.google.com) (209.85.208.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 04 May 2019 11:20:53 +0000 Received: by mail-ed1-f42.google.com with SMTP id b8so9167368edm.11 for ; Sat, 04 May 2019 04:20:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Hn/wyy2xcR3IE1o0xXxP3esF+2F53RxRexDvXtsKhKg=; b=jRMUcExrQiabEgnacySG+5BAYMQnkDGGOkVEW9+EwdLA+pYZJGcygBm8/anpHFne0M 0bDDghLHYisBZqDNC5Ex/ng0bWOQNvSqK76YTKpMT4DQKPmhtk647oS83fJxawBxGHGa tn2rNx9FNEllUp4mgKW32SwrS+RXSVDruarh2byxlNx+MZX3nmBYRMWKtIeXefyu3jWl UD3SBpMwQyGT+5/PN2FEYgJmDLEtRXIeyM1kWbSZIY45ev1YK/HLN/0p5vHEYJVcVmL9 JxL6e8z5vcFh5NYeE4AfRxYYHS+mY+sDPOMMMl4cuq8x/YTDK5OqdtbJ18ESfARvhzOW 0dKQ== MIME-Version: 1.0 References: In-Reply-To: From: Tejas Joshi Date: Sat, 04 May 2019 11:20:00 -0000 Message-ID: Subject: Re: About GSOC. To: gcc@gcc.gnu.org Cc: Martin Jambor , joseph@codesourcery.com Content-Type: multipart/mixed; boundary="00000000000038322705880e0f66" X-IsSubscribed: yes X-SW-Source: 2019-05/txt/msg00030.txt.bz2 --00000000000038322705880e0f66 Content-Type: text/plain; charset="UTF-8" Content-length: 483 Hello. Taking the notes from Joseph under consideration, I have developed a fairly working patch for roundeven, attached herewith. I have done bit-wise calculations to check for halfway cases, though HOST_WIDE_INT is only used to check for even and odd numbers (or is it necessary to do bit-wise for this too?). Also, why unsigned long sig[SIGSZ] in real_value has to be an array? (for 64 bit system, its an array of size 3, mostly first 2 values being 0?). Thanks. Regards, -Tejas --00000000000038322705880e0f66 Content-Type: text/x-patch; charset="US-ASCII"; name="roundeven.patch" Content-Disposition: attachment; filename="roundeven.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jv9f628t0 Content-length: 6556 ZGlmZiAtLWdpdCBhL2djYy9idWlsdGlucy5jIGIvZ2NjL2J1aWx0aW5zLmMK aW5kZXggMjVlMDFlNDA5MmIuLjBiMmQ2YmY4MmY5IDEwMDY0NAotLS0gYS9n Y2MvYnVpbHRpbnMuYworKysgYi9nY2MvYnVpbHRpbnMuYwpAQCAtMjA2Nyw2 ICsyMDY3LDcgQEAgbWF0aGZuX2J1aWx0X2luXzIgKHRyZWUgdHlwZSwgY29t YmluZWRfZm4gZm4pCiAgICAgQ0FTRV9NQVRIRk4gKFJFTVFVTykKICAgICBD QVNFX01BVEhGTl9GTE9BVE4gKFJJTlQpCiAgICAgQ0FTRV9NQVRIRk5fRkxP QVROIChST1VORCkKKyAgICBDQVNFX01BVEhGTiAoUk9VTkRFVkVOKQogICAg IENBU0VfTUFUSEZOIChTQ0FMQikKICAgICBDQVNFX01BVEhGTiAoU0NBTEJM TikKICAgICBDQVNFX01BVEhGTiAoU0NBTEJOKQpkaWZmIC0tZ2l0IGEvZ2Nj L2J1aWx0aW5zLmRlZiBiL2djYy9idWlsdGlucy5kZWYKaW5kZXggZWY4OTcy OWZkMGMuLmUxZDU5M2E4NzY1IDEwMDY0NAotLS0gYS9nY2MvYnVpbHRpbnMu ZGVmCisrKyBiL2djYy9idWlsdGlucy5kZWYKQEAgLTU0Miw2ICs1NDIsOSBA QCBERUZfQzk5X0JVSUxUSU4gICAgICAgIChCVUlMVF9JTl9SSU5UTCwgInJp bnRsIiwgQlRfRk5fTE9OR0RPVUJMRV9MT05HRE9VQkxFLCBBVAogI2RlZmlu ZSBSSU5UX1RZUEUoRikgQlRfRk5fIyNGIyNfIyNGCiBERUZfRVhUX0xJQl9G TE9BVE5fTlhfQlVJTFRJTlMgKEJVSUxUX0lOX1JJTlQsICJyaW50IiwgUklO VF9UWVBFLCBBVFRSX0NPTlNUX05PVEhST1dfTEVBRl9MSVNUKQogI3VuZGVm IFJJTlRfVFlQRQorREVGX0VYVF9MSUJfQlVJTFRJTiAgICAoQlVJTFRfSU5f Uk9VTkRFVkVOLCAicm91bmRldmVuIiwgQlRfRk5fRE9VQkxFX0RPVUJMRSwg QVRUUl9DT05TVF9OT1RIUk9XX0xFQUZfTElTVCkKK0RFRl9FWFRfTElCX0JV SUxUSU4gICAgKEJVSUxUX0lOX1JPVU5ERVZFTkYsICJyb3VuZGV2ZW5mIiwg QlRfRk5fRkxPQVRfRkxPQVQsIEFUVFJfQ09OU1RfTk9USFJPV19MRUFGX0xJ U1QpCitERUZfRVhUX0xJQl9CVUlMVElOICAgIChCVUlMVF9JTl9ST1VOREVW RU5MLCAicm91bmRldmVubCIsIEJUX0ZOX0xPTkdET1VCTEVfTE9OR0RPVUJM RSwgQVRUUl9DT05TVF9OT1RIUk9XX0xFQUZfTElTVCkKIERFRl9DOTlfQlVJ TFRJTiAgICAgICAgKEJVSUxUX0lOX1JPVU5ELCAicm91bmQiLCBCVF9GTl9E T1VCTEVfRE9VQkxFLCBBVFRSX0NPTlNUX05PVEhST1dfTEVBRl9MSVNUKQog REVGX0M5OV9CVUlMVElOICAgICAgICAoQlVJTFRfSU5fUk9VTkRGLCAicm91 bmRmIiwgQlRfRk5fRkxPQVRfRkxPQVQsIEFUVFJfQ09OU1RfTk9USFJPV19M RUFGX0xJU1QpCiBERUZfQzk5X0JVSUxUSU4gICAgICAgIChCVUlMVF9JTl9S T1VOREwsICJyb3VuZGwiLCBCVF9GTl9MT05HRE9VQkxFX0xPTkdET1VCTEUs IEFUVFJfQ09OU1RfTk9USFJPV19MRUFGX0xJU1QpCmRpZmYgLS1naXQgYS9n Y2MvZm9sZC1jb25zdC1jYWxsLmMgYi9nY2MvZm9sZC1jb25zdC1jYWxsLmMK aW5kZXggMDZhNDIwNjAxYzAuLjdlYWZkOTFlOWEyIDEwMDY0NAotLS0gYS9n Y2MvZm9sZC1jb25zdC1jYWxsLmMKKysrIGIvZ2NjL2ZvbGQtY29uc3QtY2Fs bC5jCkBAIC03OTIsNiArNzkyLDE0IEBAIGZvbGRfY29uc3RfY2FsbF9zcyAo cmVhbF92YWx1ZSAqcmVzdWx0LCBjb21iaW5lZF9mbiBmbiwKIAl9CiAgICAg ICByZXR1cm4gZmFsc2U7CiAKKyAgICBjYXNlIENGTl9CVUlMVF9JTl9ST1VO REVWRU46CisgICAgICBpZiAoIVJFQUxfVkFMVUVfSVNOQU4gKCphcmcpIHx8 ICFmbGFnX2Vycm5vX21hdGgpCisgIHsKKyAgICByZWFsX3JvdW5kZXZlbiAo cmVzdWx0LCBmb3JtYXQsIGFyZyk7CisgICAgcmV0dXJuIHRydWU7CisgIH0K KyAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIENBU0VfQ0ZOX0xPR0I6CiAg ICAgICByZXR1cm4gZm9sZF9jb25zdF9sb2diIChyZXN1bHQsIGFyZywgZm9y bWF0KTsKIApAQCAtODU0LDYgKzg2Miw5IEBAIGZvbGRfY29uc3RfY2FsbF9z cyAod2lkZV9pbnQgKnJlc3VsdCwgY29tYmluZWRfZm4gZm4sCiAgICAgICBy ZXR1cm4gZm9sZF9jb25zdF9jb252ZXJzaW9uIChyZXN1bHQsIHJlYWxfcm91 bmQsIGFyZywKIAkJCQkgICAgcHJlY2lzaW9uLCBmb3JtYXQpOwogCisgICAg Y2FzZSBDRk5fQlVJTFRfSU5fUk9VTkRFVkVOOgorICAgICAgcmV0dXJuIGZv bGRfY29uc3RfY29udmVyc2lvbiAocmVzdWx0LCByZWFsX3JvdW5kZXZlbiwg YXJnLCBwcmVjaXNpb24sIGZvcm1hdCk7CisKICAgICBDQVNFX0NGTl9JUklO VDoKICAgICBDQVNFX0NGTl9MUklOVDoKICAgICBDQVNFX0NGTl9MTFJJTlQ6 CmRpZmYgLS1naXQgYS9nY2MvZm9sZC1jb25zdC5jIGIvZ2NjL2ZvbGQtY29u c3QuYwppbmRleCA1OWNlZGVhZmQ3MS4uMzBjNDA5ZTk1YmYgMTAwNjQ0Ci0t LSBhL2djYy9mb2xkLWNvbnN0LmMKKysrIGIvZ2NjL2ZvbGQtY29uc3QuYwpA QCAtMzI5LDYgKzMyOSw3IEBAIG5lZ2F0ZV9tYXRoZm5fcCAoY29tYmluZWRf Zm4gZm4pCiAgICAgQ0FTRV9DRk5fTExST1VORDoKICAgICBDQVNFX0NGTl9M Uk9VTkQ6CiAgICAgQ0FTRV9DRk5fUk9VTkQ6CisgICAgQ0FTRV9DRk5fUk9V TkRFVkVOOgogICAgIENBU0VfQ0ZOX1NJTjoKICAgICBDQVNFX0NGTl9TSU5I OgogICAgIENBU0VfQ0ZOX1RBTjoKQEAgLTEzMDYwLDYgKzEzMDYxLDggQEAg dHJlZV9jYWxsX25vbm5lZ2F0aXZlX3dhcm52X3AgKHRyZWUgdHlwZSwgY29t YmluZWRfZm4gZm4sIHRyZWUgYXJnMCwgdHJlZSBhcmcxLAogICAgIENBU0Vf Q0ZOX1JJTlRfRk46CiAgICAgQ0FTRV9DRk5fUk9VTkQ6CiAgICAgQ0FTRV9D Rk5fUk9VTkRfRk46CisgICAgQ0FTRV9DRk5fUk9VTkRFVkVOOgorICAgIENB U0VfQ0ZOX1JPVU5ERVZFTl9GTjoKICAgICBDQVNFX0NGTl9TQ0FMQjoKICAg ICBDQVNFX0NGTl9TQ0FMQkxOOgogICAgIENBU0VfQ0ZOX1NDQUxCTjoKQEAg LTEzNTgzLDYgKzEzNTg2LDggQEAgaW50ZWdlcl92YWx1ZWRfcmVhbF9jYWxs X3AgKGNvbWJpbmVkX2ZuIGZuLCB0cmVlIGFyZzAsIHRyZWUgYXJnMSwgaW50 IGRlcHRoKQogICAgIENBU0VfQ0ZOX1JJTlRfRk46CiAgICAgQ0FTRV9DRk5f Uk9VTkQ6CiAgICAgQ0FTRV9DRk5fUk9VTkRfRk46CisgICAgQ0FTRV9DRk5f Uk9VTkRFVkVOOgorICAgIENBU0VfQ0ZOX1JPVU5ERVZFTl9GTjoKICAgICBD QVNFX0NGTl9UUlVOQzoKICAgICBDQVNFX0NGTl9UUlVOQ19GTjoKICAgICAg IHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvZ2NjL3JlYWwuYyBiL2djYy9y ZWFsLmMKaW5kZXggZjgyMmFlODJkNjEuLjUzM2Q0NzFhODliIDEwMDY0NAot LS0gYS9nY2MvcmVhbC5jCisrKyBiL2djYy9yZWFsLmMKQEAgLTUwMTAsNiAr NTAxMCw0MyBAQCByZWFsX3JvdW5kIChSRUFMX1ZBTFVFX1RZUEUgKnIsIGZv cm1hdF9oZWxwZXIgZm10LAogICAgIHJlYWxfY29udmVydCAociwgZm10LCBy KTsKIH0KIAorYm9vbAoraXNfaGFsZndheV9iZWxvdyAoY29uc3QgUkVBTF9W QUxVRV9UWVBFICpyKQoreworICB1bnNpZ25lZCBsb25nIHRlbXBzaWdbU0lH U1pdOworICB1bnNpZ25lZCBpbnQgbiA9IFNJR05JRklDQU5EX0JJVFMgLSBS RUFMX0VYUCAocik7CisgIGludCBpLCB3ID0gbiAvIEhPU1RfQklUU19QRVJf TE9ORzsKKworICBmb3IgKGkgPSAwOyBpIDwgU0lHU1o7ICsraSkKKyAgICB0 ZW1wc2lnW2ldID0gci0+c2lnW2ldOworCisgIGZvciAoaSA9IDA7IGkgPCB3 OyArK2kpCisgICAgdGVtcHNpZ1tpXSA9IDA7CisKKyAgdGVtcHNpZ1t3XSAm PSAoKCh1bnNpZ25lZCBsb25nKTEgPDwgKChuICUgSE9TVF9CSVRTX1BFUl9M T05HKSAtIDEpKSAtIDEpOworICAKKyAgaWYgKHRlbXBzaWdbd10gPT0gMCkK KyAgICByZXR1cm4gdHJ1ZTsKKyAgcmV0dXJuIGZhbHNlOworfQorCisvKiBS b3VuZCBYIHRvIG5lYXJlc3QgaW50ZWdlciwgcm91bmRpbmcgaGFsZndheSBj YXNlcyB0b3dhcmRzIGV2ZW4uICovCisKK3ZvaWQKK3JlYWxfcm91bmRldmVu IChSRUFMX1ZBTFVFX1RZUEUgKnIsIGZvcm1hdF9oZWxwZXIgZm10LAorCQlj b25zdCBSRUFMX1ZBTFVFX1RZUEUgKngpCit7CisgIGlmIChpc19oYWxmd2F5 X2JlbG93ICh4KSkKKyAgeworICAgIGRvX2FkZCAociwgeCwgJmRjb25zdGhh bGYsIHgtPnNpZ24pOworICAgIEhPU1RfV0lERV9JTlQgaSA9IHJlYWxfdG9f aW50ZWdlciAocik7CisgICAgaWYgKGkgJSAyKQorICAgICAgZG9fYWRkIChy LCByLCAmZGNvbnN0bTEsIHgtPnNpZ24pOworICB9CisgIGVsc2UKKyAgICBy ZWFsX3JvdW5kIChyLCBmbXQsIHgpOworfQorCiAvKiBTZXQgdGhlIHNpZ24g b2YgUiB0byB0aGUgc2lnbiBvZiBYLiAgKi8KIAogdm9pZApkaWZmIC0tZ2l0 IGEvZ2NjL3JlYWwuaCBiL2djYy9yZWFsLmgKaW5kZXggMGNlNDI1NjU3MDgu LjEwODk4ZWFlNzllIDEwMDY0NAotLS0gYS9nY2MvcmVhbC5oCisrKyBiL2dj Yy9yZWFsLmgKQEAgLTQ5OSw2ICs0OTksOCBAQCBleHRlcm4gdm9pZCByZWFs X2NlaWwgKFJFQUxfVkFMVUVfVFlQRSAqLCBmb3JtYXRfaGVscGVyLAogCQkg ICAgICAgY29uc3QgUkVBTF9WQUxVRV9UWVBFICopOwogZXh0ZXJuIHZvaWQg cmVhbF9yb3VuZCAoUkVBTF9WQUxVRV9UWVBFICosIGZvcm1hdF9oZWxwZXIs CiAJCQljb25zdCBSRUFMX1ZBTFVFX1RZUEUgKik7CitleHRlcm4gdm9pZCBy ZWFsX3JvdW5kZXZlbiAoUkVBTF9WQUxVRV9UWVBFICosIGZvcm1hdF9oZWxw ZXIsCisgICAgICBjb25zdCBSRUFMX1ZBTFVFX1RZUEUgKik7CiAKIC8qIFNl dCB0aGUgc2lnbiBvZiBSIHRvIHRoZSBzaWduIG9mIFguICAqLwogZXh0ZXJu IHZvaWQgcmVhbF9jb3B5c2lnbiAoUkVBTF9WQUxVRV9UWVBFICosIGNvbnN0 IFJFQUxfVkFMVUVfVFlQRSAqKTsK --00000000000038322705880e0f66--