From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 7018D385841B; Fri, 28 Jul 2023 12:02:35 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7018D385841B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1690545755; bh=AElEypDcifbyQSsi4JUkBPWIOiplIpmrcfaY9EpdnNY=; h=From:To:Subject:Date:In-Reply-To:References:From; b=V0TPDfyTQ0zM5LWhvU5yLypE9y6ibteJa1nsQILaSXjYd+pKzrk0vNwHDJm83tFSU TLghPfJRexV7bNQ3cVrc/6lAekNN4DhpzaFcSpGYXIRUm3KQKhtrtXf9nKh7BHCLCR CvnL9+/qMLRGIlvC0yL1mZZFaLgyJBQdfCImoLeg= From: "burnus at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libgomp/110842] [14 Regression] Openmp loops with KIND=16 DO loops Date: Fri, 28 Jul 2023 12:02:34 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libgomp X-Bugzilla-Version: 14.0 X-Bugzilla-Keywords: needs-bisection, openmp, wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: burnus at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 14.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: keywords Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D110842 Tobias Burnus changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |openmp --- Comment #4 from Tobias Burnus --- > libgomp has no support for loop iterators larger than 64-bit unsigned, an= d I believe in OpenMP it is implementation defined which iterator type is u= sed. "The iterations of some number of associated loops can be collapsed into one larger iteration space that is called the logical iteration space. The particular integer type used to compute the iteration count for the collaps= ed loop is implementation defined, but its bit precision must be at least that= of3 the widest type that the implementation would use for the iteration count of each loop if it was the only associated loop." This sounds a bit as if it should be supported =E2=80=93 but at the end it = is implementation defined. However, I think it makes sense to document it as implementation defined in libomp.texi =E2=80=93 and to output a compile time error if we know that so= mething is not implemented. * * * For use the largest type used in the loop, see also OG13-only patch (origin= ally for OG-12): commit https://gcc.gnu.org/g:90d8139007c69657325c5c187b0d47f463b455d1 "openmp: Sca= le type precision of collapsed iterator variable" But that won't help if libgomp does not support the integer type. * * * > C/C++ OpenMP loops with __int128 or unsigned __int128 iterator will not w= ork either (nor with _BitInt(575) or similar). ... and we likely don't want to support _BitInt iterators!=