From owner-freebsd-hackers@freebsd.org Sun Jan 17 23:31:51 2021 Return-Path: Delivered-To: freebsd-hackers@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id EA5BE4DB40C for ; Sun, 17 Jan 2021 23:31:51 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic317-21.consmr.mail.gq1.yahoo.com (sonic317-21.consmr.mail.gq1.yahoo.com [98.137.66.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4DJrm60gmNz4fyw for ; Sun, 17 Jan 2021 23:31:49 +0000 (UTC) (envelope-from marklmi@yahoo.com) X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1610926308; bh=tr6T3mA4HBQgX/393DlRUU9X0VMoNeNR1xAnZ/uHEo6=; h=Subject:From:Date:To:From:Subject:Reply-To; b=cT0LLgt/3QIs7WgqYFzhNouPARiUuVM+rbyoOKkJ66iNm405nx3iwvTAEGEEZjbgm6X95QH0IVFW7P/7TAKqr1os8iKYMSNA2V8GU/JXihz7UV+Edq6FeI/6Mp4D80fVCfFL/rRuLCOYk4fDf4lBIrO4zKc3LqIslMbvJKxTpTuABeAzBp8GKTf/vCQr8c1tEXG+gwmtr//7Lxg/BYjzzApxkSQPpiol40y2H3tJUaHvHtQ6grSQ8FHDGVIgMq6HZ9CqK9DS2971hwdezbWJwVsZTfYpedG3Ger+c5YtbtZlhhVRcSYU9zydVuoMsRI8vi7pCvrFeHDkMT+HcrVV/A== X-YMail-OSG: vXjoArUVM1kBDIhH2eYCBJ_CVtRuqWakwYKuMmqldeAP1SEZRXLWbRMwPVfHlzw 6TE1BjUavE2Dyg9UfS7LxJp8JW0Bq1oHgiEvcnpFO5RFrnYN0h2ju5fHYaz2EXeflLYARoPnPDwZ zEMikID4vZ._1lRh4ZMzEsl7aR3Ka9e6zfftwkRaFbO1120hR_HSQ6BWu9ct6FDEYtZVvwlQuA_9 wQDxC5btGdND216QOcn7UbB6Gj8ANWencYJSlQl6g50GGYdNYV.MQ6jW5AcvvTsA10pI6vp.VFM_ pq1lVXVminoH9GTBjKbntK7gd8OTk2.tpwBP6nrYbq6epX0XHUSHiD_7yC1G99DfdOywZa3zI8LI Wc69Dm38tzuJ2xQwIMBcRhV70pbGQFsIv81W6IlZU96BasjAurOukM0dB1hei1zQUux1zHtdAp3_ SUToTVt.8EKf8PsBN.rqcxV_LTPsEedxX_w6lO8_MQ8oNOYg.mQW83eonmjmCGgnEZP8ami7.T.A YoTuwOUuH4onaL7oyOmsPOjApYpqJfivLKGvBanyt61phTlKv7zwpMHHldOWSaZ_a5dOMH8z_Ub9 xIgoGZzzCwE2V8cLlulb1uosvfIMK0qSUqmP4hI4jpfLg0_Yi3gG3lfTcqfYWr7MjoM0IaH2sCOx 2LEjKqtxqi3xgG63NaZq6o5mCMyyfmyMcjLy2GvMNQndKjS9DS86hm35N5VyaB1cSL7O79eSt8c_ yXfWSFvYJlKI1Pud2JXp.shMb1zJsIJdH_bhT2P5IebLoRyTx2ymOzh1C4G6ooChmxK.rMF3VmAE BK3QpiFR5pM6saocjf4OW3Rn4mXkLgBLtya0zIU4FpyeNQ.2Mt6hWWKbkBQNsPCMtfIV6Q0E5t.0 O3gbcUJPCaDz.39ITtD2.AbFWAIsRIqkGmODRIH5R8MpDfEM3YGh5vNL2TIB9IHQrDsvIilrOXB9 c63mfN6HY7cp22AUAbdLyCup7MLJ92rNQjxh8qWk3Ub99qTqM_knoc5Fm3bV9tvFlzw3P.5Sa.xH 8_0hTFdBOXhH3kEVkGcFRlq_.UeadJvtcsq5Je1hcjxg8rPj2UgaN2469nVd8bhYnE8R6X4us1Ub Fp2SoDzwGK8mYGMpt.i_HpaitUehxuljE_RVehWcPr6n0PERBb2gwuBNikvfBgMGJ1.JHYeZqQeA vD5WZJIf0AQUWtqGtKviODy1YzCrUM8YC6uAMwDzK0KHLu1T7NLVJ5Rs1Uo1sKBlKX7wb6.sukAu 3niruJ3.xvnByX.AuKUgFx4.bgaKMBywLVII29VBs8PjyW6BsF0IrYRwOS7whfKNLXE8lkQxibC5 N7ZplQKiBPxSfaH9iq2tsCHThH0u197xbBftU0E6RA6d6GrIAICR6ImIR3s5FNcAgdh1d.ErtoG6 mImolazEvqThIMqUzRbXXdHuW6NbLDup20Vs7rBU_wcG5qR2LYr4FS8aL79MKstdEeO8wDwO.4CM MM_3EFTyN1veZ9lqOoaFS2jjVDYPyEym0lXihn3DZtBd84q4mpkvgqXKALdn7kAgZ4zaTgdWREMU c9H0Ff1H_MZw4YlM42P7R5svTyw9ue4sEMLDwPGLvcEDjvbzwpv.Obyp8GjD6I3eRS34jSOzkIMK VyhyImiVmRBfKYrQV3vq1I3nX4EVLpKdKM_SRzAIxHj._uwVDORfr8ZzZy81HMcf6BYlUHgdDghs uv2EZa17CpEsEUIFIpFeplMQCRXiuQuzIT9L.S1WFknQJc_n2QFF5GjDmv_P.QAPEH9iX2MgGtY9 Iixbe3d6ZEK2TonUJSV0NVqoarWpabav2G3Uow0MjgdBfQyL2ID3wCtdUFxgA0sCCsxK8sOkbZab odg9nbVBH8ObrF0r8gl94kso7kNN5dmO1K1NFmOzLYEiZjzJch9hHUQ0oxHN1H9gz0sxFRO6GSmY .w3wbdN96sYZ50yCAuBtwPiPUTOHa5VEJJSIpesBqYj_Y432tWebVz9HOg5oYUUWqyTTNcNtdXQ4 y3CK1HyhzmCe1BnBjsNXZGHK3B77OUsRxD6OgXY3oKo6nCuLbL9krq0iIbRQKJOgdzZ_fqObSBjH e7MqWHNon0EzACcnoyeUilAR8gqX2Z0Eeo9E0_KtRbJX4OM3rP3J8VJQLO_XCmIp7Bp3OgIKKSEx v_ahVbaQKdZ0GNjkjZFi.rC86eymEC3FQOmmo1pwOvKxjy5RiaA2rQRvFeL0SSaEBfq8gjQayXhS VFbQ80Pw4gOHS5iflC8UBPp22jCypa0ZeTJEdquI02yRieUviCLGHC19vc8df1h9Q_1eFkNHxO_b 2CjlM_kKB5qbpuQLTyic.YTGE0Jeiu.5QZE3.cL9eNyTnjFs7HCiaNosf99kdufrCe1bN.dFwV6R EnyuBRFaJXE6pX47ECBt6LlwODXV7hnjag2edqbvKqZzotckNY3YCOE9CFVN2fgmbcXbW6sQ4LOA gqZeZoumJSF_vbHwB35j.XHTuOy4iYyWewBEj8rPFWZMkqVPkzg-- Received: from sonic.gate.mail.ne1.yahoo.com by sonic317.consmr.mail.gq1.yahoo.com with HTTP; Sun, 17 Jan 2021 23:31:48 +0000 Received: by smtp416.mail.gq1.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID ac743ae6d700ef704260789805e88df3; Sun, 17 Jan 2021 23:31:47 +0000 (UTC) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.40.0.2.32\)) Subject: Re: Implicit assumptions (was: Re: Some fun with -O2) From: Mark Millard In-Reply-To: <22093525.sr7ieKrsik@t450s.local.lan> Date: Sun, 17 Jan 2021 15:31:46 -0800 Cc: freebsd-hackers@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <1648904.MsCH1bHPGx@t450s.local.lan> <22093525.sr7ieKrsik@t450s.local.lan> To: Walter von Entferndt X-Mailer: Apple Mail (2.3654.40.0.2.32) X-Rspamd-Queue-Id: 4DJrm60gmNz4fyw X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.50 / 15.00]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[yahoo.com]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; DKIM_TRACE(0.00)[yahoo.com:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; NEURAL_HAM_SHORT(-1.00)[-1.000]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US]; RBL_DBL_DONT_QUERY_IPS(0.00)[98.137.66.147:from]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; SPAMHAUS_ZRD(0.00)[98.137.66.147:from:127.0.2.255]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[98.137.66.147:from]; RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.66.147:from]; RCVD_COUNT_TWO(0.00)[2]; MAILMAN_DEST(0.00)[freebsd-hackers] X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Jan 2021 23:31:52 -0000 On 2021-Jan-17, at 13:25, Walter von Entferndt = wrote: > . . . > - for (j =3D 1; 0 < j; j *=3D 2) > + /* NOTE This does not reach very large values > time_t_max/2 > + neither the (susceptible for overflow) version > + for (j =3D 1; 0 < j; j *=3D 2) does */ > + for (i =3D j =3D 1; i < PRECISION(INT_MAX); i++, j *=3D 2) I'm unclear on why INT_MAX here. 32767 <=3D INT_MAX for C (and the LP32 data model), but 2147483647 =3D=3D INT_MAX is common (IPL32, LLP64, LP64). The bigtime_test(j) call has j being 2**(i-1), inventing notation for an exponent. So for the 2 identified cases varying the exponent calls for: 2**(1-1) to 2**(14-1) for 0x7FFF=3D=3DINT_MAX 2**(1-1) to 2**(30-1) for 0x7FFFFFFF=3D=3DINT_MAX > bigtime_test (j); and so for the below bigtime_test(j-1): (2**(15-1))-1 for 0x7FFF=3D=3DINT_MAX (2**(31-1))-1 for 0x7FFFFFFF=3D=3DINT_MAX > bigtime_test (j - 1); The above notes are independent of time_t. I'm also unsure of your intended relationship to time_t in general (if any). For example, for time_t being 64 bits (63 value bits) on powerpc (32-bit and 64-bit) for FreeBSD but 32-bit (31 value bits) for i386 for FreeBSD and 64-bit (63 value bits) for amd64 for FreeBSD. (As I understand, FreeBSD does not claim to support INT_MAX<2147483647 even though C of itself does. FreeBSD is just an example here.) It leaves me to wonder about using something that invovled PRECISION(time_t_max). (Not that I've thought that through enough to claim just what would always be appropriate.) > } > irix_6_4_bug (); > spring_forward_gap (); > - exit (0); > + exit (EXIT_SUCCESS); > } > +/*! vi: set ai tabstop=3D8 shiftwidth=3D2: */ Again, I do not make a claim of having thought every aspect of the code through. The above is just what stood out on a quick read. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)