From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 124426 invoked by alias); 21 Nov 2017 19:50:35 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 124401 invoked by uid 89); 21 Nov 2017 19:50:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,KB_WAM_FROM_NAME_SINGLEWORD,RCVD_IN_DNSWL_LOW,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=learned, endian X-Spam-User: qpsmtpd, 2 recipients X-HELO: cc-smtpout1.netcologne.de Received: from cc-smtpout1.netcologne.de (HELO cc-smtpout1.netcologne.de) (89.1.8.211) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 21 Nov 2017 19:50:32 +0000 Received: from cc-smtpin2.netcologne.de (cc-smtpin2.netcologne.de [89.1.8.202]) by cc-smtpout1.netcologne.de (Postfix) with ESMTP id E620112895; Tue, 21 Nov 2017 20:50:27 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by cc-smtpin2.netcologne.de (Postfix) with ESMTP id D905B11DF8; Tue, 21 Nov 2017 20:50:27 +0100 (CET) Received: from [78.35.131.92] (helo=cc-smtpin2.netcologne.de) by localhost with ESMTP (eXpurgate 4.1.9) (envelope-from ) id 5a148383-02b8-7f0000012729-7f000001bba2-1 for ; Tue, 21 Nov 2017 20:50:27 +0100 Received: from [192.168.178.20] (xdsl-78-35-131-92.netcologne.de [78.35.131.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by cc-smtpin2.netcologne.de (Postfix) with ESMTPSA; Tue, 21 Nov 2017 20:50:25 +0100 (CET) Subject: Re: [patch, fortran] Implement maxloc and minloc for character To: Janne Blomqvist Cc: "fortran@gcc.gnu.org" , gcc-patches References: <44c7b39b-d849-e31a-7175-80bf1a348908@netcologne.de> <03e85917-b506-0d8b-78b0-263c371cba6a@netcologne.de> From: Thomas Koenig Message-ID: <09d35ad1-6883-0372-7a1a-840c8c4b07f9@netcologne.de> Date: Tue, 21 Nov 2017 19:53:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------79DF473D94099362ED976786" X-SW-Source: 2017-11/txt/msg01950.txt.bz2 This is a multi-part message in MIME format. --------------79DF473D94099362ED976786 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-length: 2394 Hi Janne, >> So, any other comments about my patch? OK for trunk? > > - In many cases the copyright notice has "This file is part of the GNU > Fortran 95 runtime library (libgfortran)." It's a while since we've > called ourselves "GNU Fortran 95", so just remove the "95". That's what I got for copying over an old version of maxloc (when it still didn't have NAN handling) as a basis for my own patch. This also meant that I had an old copyright notice. Fixed. > - It seems in the library you're using int for string lengths? Please > use gfc_charlen_type instead (in the frontend, gfc_charlen_type_node). > (Most of the charlen->size_t patch is fixing up places where we're > accidentally using int instead of gfc_charlen_type..). Fixed. > - Why are you using GFC_INTEGER_1 / GFC_INTEGER_4 to loop over the > arrays rather than char/gfc_char4_t? Not sure if it makes any > difference in practice, but it sure seems confusing.. The reason has to do with evil m4 magic. I used a macro from iparm.m4, atype_code. Changing m4 code should mostly be restricted to those cases where it is _really_ necessary (people, say, not without justification, that m4 is a write-only langauge). > - Not really related to your patch, but memcmp_char4 sure looks > redundant. Isn't it the same as memcmp(a, b, size*4), in which case we > could use optimized memcmp implementations? Big/little endian issues. Consider the following short program: #include #include char a[4] = { 1, 2, 3, 4}; char b[4] = { 4, 3, 2, 1}; int main() { int i, j; memcpy (&i, a, sizeof(i)); memcpy (&j, b, sizeof(j)); printf("memcmp : "); if (memcmp (&i,&j,sizeof(i))) printf("larger\n"); else printf("smaller\n"); printf("Direct comparison: "); if (i > j) printf("larger\n"); else printf("smaller\n"); return 0; } On my x86_64 system, this prints memcmp : larger Direct comparison: larger On a big-endian system, this prints memcmp : larger Direct comparison: smaller However, I just learned about the __BYTE_ORDER__ macro. We could use that (and in places where we currently have a runtime check, for example in replacing the big_endian global variable in libgfortran). But that is for another day. So, attached is a new version of the patch. No update on the ChangeLog. OK for trunk? Regards Thomas --------------79DF473D94099362ED976786 Content-Type: application/gzip; name="p8.diff.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="p8.diff.gz" Content-length: 32558 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 j6ahO7K/H6PMdFU6vZH+GcGTl/9rtNtttd5evb2xn5zA8VzEhmyr1VJtduo/ 2E4YfPPmjt0U8/jRwRFq4YMO6bMZvNF69xc0nM2n9sx2QzPkHXhjFE5sdHn6 94urM+S4oe+4gcOSPITQmTd/9p3HSYjIEe6jT75to1tvHP5m+jb65C3ckeBx gIaudRi34AweFkw69PCM7ibezAzQL57tOo88Eu8mToC4gxD7nJt+mPT/+cs9 4ygURIMu8hdu6Mxsrrdv+s/obcYAzUPO6SKt4LzGXLYglu0n9OwtkMW+8e2R E8QSISdEpjt65/lsqeuNnPEzr2FK2L4QIbT9WZCV57Mw9BRdLx6m3CIXjmW7 gY2YRnNeFUwiLTm9zDY/IeaQic26fLJ94dFO0kXM7gB5PnprhlxmH3lz3qrJ BH1GU+ZkH8XtqpROdRsxzwmmE2/ONJkwdky335zpFD3YaBHY48X0oNFipOhv w7ufr+7v0OmXr+hvpzc3p1/uvv7ESMOJx761n+yIkcPCxGF8mT6st/CZSd1o XZ7fnP3MGpx+GF4M775yyT8N776c396iT1c36BRdn97cDc/uL05v0PX9zfXV 7fkhQrc2F8lutMpGTYyAmFZo5jHTjezQdKaBUPde+OaWrR654frccJ+vL9DS kgfCz9zgj1xGJq05Gjmc2Jw2WnPmTyfglMxSdmAxS6V2+syWHDdxkF3EQXb+ 3bLnUUDHXTRanUN8sJHDheBfmVgBs+d0hCbmk83C0LKdJy4fstiYkgfZ0h4s UButAvUqkZE59dxH4UZGzAeX7zGjzH5qtILI/GLYBejs6vrr8MvnDu8hKRze 3H+5G16eMzmDObf2kz19Zo4bjpHrhQeIcWi0/ncShvPjd+/+v71v7W7b1rb9 LP8KxqcPP+RUsmGHruOMkaZJm9E07UjSu3dvb66iSHSiRI9sUWrak+b89oMF gCT4APiQRMny7Ghrm09gEVhYa2JO4OPHj7ffjOe3J9M3PNQXpfW/ucevPviG qv5fPDUYzvues6t12dtvd7Uzd3nKwk/efnsvfpB7njeJg13f96azxMHhYMSd nDgo33jFv+/VYMztu/fj/f/zsPPDowc8C3zx8Ac+QLT3na++sp0/26eH+OQO e7x1DPl15AZ3DinP5N+2c9UbO3s93opmTuxG56DbdDKPv246b656nd7b7nTo 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 djApgFAAoQBCAYSiIEJRA4/C6N/9yv59KQjFyjgUbp0cCrcSh8IFhwIIBRAK IBTgUEQ7bG89h8J1dP+/EIfCzZx2cCOEwgWHAgjFshAKN0Io3DVwKMyNvXxr B4cCCAUQCiAUQCgs3t5fxNuXRyiM/t2v7N8XRyjcFXIo3Do5FG4lDoULDgUQ CiAUQCjAoVgEobhmHIoYQrEYh8LNnHaIIxTgUAChWAVCUTuHwtzYy7d2cCiA UAChAEIBhKIgQlEDh8Lo3/3K/n0pCMWyOBRBUD3qflgNKqG9QEMijk/Z6elx BhwRuzwNQbSbjCAIRgDEETmtFzzn7Nyh5hn+5fK/uBHeDCevu8Nvd8T373QG nse71JTnNCOPh/Kdn3/5Xh7rDbu+32lzYxW88uxCFOXk9E7zzDmkHy4VR94d VKDD+wf/Vi1aNGRKt1hOM+tZV3WSzLN+23rW/GTWGVhKRWdtJ4+VCc7OhAnO XKsJmNUCzGYAZqs/s1Wf2WrvWmvv2mrvRrW/cypqf+fcWnvXWnvXVnvXVnvX VnvXXPs2tQxz9dVp69nAAC4TBjhvWQzQtveAtrUHtK09oG3tAW1rD2hbe0Db 1gPaeg84PyETsFbbagJmtQCzGYDZ6s9s1We22rvW2ru22kc9gLWORe3bx802 s1TftVbftVXftVXftVVfdoHMk8fWhnMcNBzDWWa7ldnudG13mrosj7JM30qe Mp4JvtKJ/Eqnhm4qggrzQKWdZtazGd8pOptVce2s+cmGbqqdtZ0MTMDawgRn basJmNUCzGYAZqs/s1Wf2WrvWmvv2mqvdVP+5an2d46ttXettXdttXdttXdt tXfNtTcPVPpp69nQAOfCAO6JxQBtew9oW3tA29oD2tYe0Lb2gLa1B7RtPUAf qBiP0cgE58xqAma1ALMZgNnqz2zVZ7bau9bau7baaz3gjojVT1unhoEqvGNq fdnUVk5L9V1b9bMHKn2nBOtZ873Mdiuz3ena7jR1WeNAFZwynlFf6bQl/NTp yVl2G81LqXJyqpykKierykmrcvIqe2KVzqxOW8JjnbI7dlMwuyWY1RDMagdm NQOzWsG1W8G1WiHqtqdt4bROT127FVy7FVyrFVyrFVyrFVyLFczDV06ilZFp nR5L/3V2bjNEO6dntO09o23vGW17z2jbe0bb3jPa1p6hD2TkHcgUbstuCma3 BLMaglntwKxmYFYruHYruFYraD2DCezh9LxtGNByUi977mVPvuzZlz39ysm/ chIwewZmT8HsOZg9CbNlYZY0LJGHnZ4JrOCsbfLpOYlYTiaWk4rl5GI5yVhO NmZPx9L52OkdkZKeHbt2UzC7JZjVEMxqB2Y1A7NawbVbwbVaQevErshKz07O 7VZw7VZwrVZwrVZwrVZwLVawDG/29CwjPzs9F4HfmQmhyEvQcjK0nBQtJ0fL SdJysjR7mpbO007PReB3ZkIqchI1e6ZmT9XsuZo9WcvJ1uzpWjpfO2uJwO/s jglYzEnY7BmbPWWz52z2pC0na8tJ2+x5mz1xs2du9tTNlrtZkrdE9nbnXPh0 9ywbYfBzsjffnr359uzNt2dvvj178+3Zm2/N3vx09ua2hGN375zaTcHslmBW QzCrHZjVDMxqBdduBddqhagTu23h1V33zG4F124F12oF12oF12oF12IF4/Dm 27M3PyN7c9vCp7vnd2yGaOf0jLa9Z7TtPaNt7xlte89o23tG29oz9OHNPRaO /bzl2k3B7JZgVkMwqx2Y1QzMagXXbgXXagWtZ5yIdP6ct4vM4c23Z2++NXvz rdmbb83efGv25tuzN9+evfnW7M23Zm++NXvzrdmbb8nefHP25ieyN/dUZNzn zOTT7dmbb8/efHv25tuzN9+evfn27M23Zm9+OnujIZ5McXpmNwWzW4JZDcGs dmBWMzCrFVy7FVyrFbROfEek8+dnd+xWcO1WcK1WcK1WcK1WcC1WsAxv1uzN z8jeXFcEfud3XJsh2jk9o23vGW17z2jbe0bb3jPa9p7RtvaM2PB2LgK/c/fc bgpmtwSzGoJZ7cCsZmBWK7h2K7hWK0Q941zO47Rb/KdhfLOmb741ffOt6Ztv Td98a/rm29M3356++db0zbemb741ffOt6ZtvSd98c/rmJ9K3dvv8rHmHf7WT FuM/g492wG/8zP/T2JaPjh8kGJd0JJN1Gb7t6rjXITnY4GrQ63S6r/1OL12T 9EX0+UXhjk9cWTh2phXOdOuMHxEtJ1HyB+fniZLTkaySd3sT/+oi+v0t/yOD PhuTpa2EPxt7QwECbeL6NIP25A6N2of045wb0iHhBakJiJVMCs7fNUK+lKP9 fP/fne8f//zw6fPHvzx93txxLPqD8o+LS0XO9mPyF2rRgW4heHJ0ftB2dGH4 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 oJQxyZaAUyMFRNUFQWWT4QFPbRItvn4Ma1Oo89WhLckZzwW1/HWBWrm08k2n lJeEsQrSz+sGrvqLQUxlySwSJVoyF17aWLOckRhfhQWzMNq0/VhTUYyheKaf RXMxB3iW/LZE3q89RfVXY/kyE//KZQQxZHuJIdufhIMd8n7hxF/22EuTajoK LfXx1pupLD7oa6ofqKNGHxtPnBtZTuvWpfYgKkXq2zwOP4N6Gx+IYmT7ydVu THeU+jx0R5jA0If5NnGD4evpxheOOKZv0r9MWIPYPTG1aUYgvSbwogguEWIP e+1kQRLsEmMmjJR2oZR28Uw08sclskdrEigvMaeC6RwwS+4hZckpMtPeF9TU vjgJFcvxu/a+YPuZsmnTSzNP6+9OY1Kx12feX0g1WIdmMK4YNC3nnLojLRpk tKv3IZN7e1fQo+w4mUIAZ8dZpRDAycyWjko8YMcpmi0pXNPw0QOB06o+uHp+ wY8dXp3xoWkFdLk2u1NYrnl+qhSbO84ypZniYT8zXZbKG4Xw6yKZFzIyoVSj c+LPHSUr2+NXibCEjh43nVf0qb9od744ln3zKOMyflXsrr3BFTlE7nGagyZN wv/w8FkzOjZtPnt4/4l2YNhUeIp2rNd88MvPvz55+O/mfPx+PPk43uf/NF9R MeJuqr6CRMf88GFa4WKl060p+gWViYoXcqC+aAcmDa6VPzrqSnFGvXLqvfH+ +rD3xXHz1f//o3V0/vLr/SZPDV6ZnaXaRGuV+mrtFbni6ti1RmX1WVsIq1+l V81RXefn+//m40gUeYqB8sHkw9/TwZu3M+e41b7jPJryXvF8cjX7SMrKRxSm i2c0HR7p3lZ3jMNu9vpv3lMno67v/DTxxoM3FJsV7boqlKbKpsXWt+lJT6ID 9KwrKpuvynbh/D2ZO70uhdv9sOOrwOqbyXTnUEiL/6YjkTOYedORr5fnBxKR d4fOr/PXQ7LIk0GPx10eyXg/0CH/rawlXW+yzYXDP8hbj7/yT28qPuNJ8Ar1 uCYpXPe6Myrz1JFJ0D4v6N8OhWtTR92XVem+5tQGUnP9dvKBQryuCCM/DoZD JS++mg95gEGx3r8ev/jxl99eOPef/u78i2KEpy9+vxAekNB+709vHEpqB/y5 H6lPjWd/81LvHP788NmDH/kN9797/OTxi9+p5I8ev3j68Plz59Evz5z7zq88 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 --------------79DF473D94099362ED976786--