From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25859 invoked by alias); 9 Aug 2010 10:50:57 -0000 Received: (qmail 25779 invoked by alias); 9 Aug 2010 10:50:39 -0000 Date: Mon, 09 Aug 2010 10:50:00 -0000 Message-ID: <20100809105039.25778.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/45128] Segmentation fault with -fwhole-file for subref_array_pointer In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "paul dot richard dot thomas at gmail dot com" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-08/txt/msg00634.txt.bz2 ------- Comment #2 from paul dot richard dot thomas at gmail dot com 2010-08-09 10:50 ------- Subject: Re: Segmentation fault with -fwhole-file for subref_array_pointer Dear Tobias, > If one now recycles the definition for the array descriptor "desc" this > information is not present. I think the real solution is the new array > descriptor. I do not know how to fix this otherwise - except by always > generating a span variable. This has occurred to me more than once! > > Paul - any progress from the array-descriptor front? Yes, I made a small start whilst on vacation. I have embarked on the first step of the project, which is to add to the existing dimension triplet the stride measure (sm) and extent fields. On top of that, I added an extra field to the descriptor itself, which does nothing but uncover all the accesses to the descriptor fields that do not use the ABI in trans-array.c. I just reached the stage of plugging all the segfaults arising from the latter. The next step is to evaluate the sm and extent fields, in parallel to the stride and upper fields, just to check all is well. Then will come the crucial step of using the new fields for evaluation of array references. I suspect that there will be a substantial performance hit in the scalarizer and problems with the library, both of which will require time to fix. Then, the stride and upper fields can be taken away. Finally, all the extra fields can be added to the descriptor. I will have some time to work on this next week. Cheers Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45128