This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[gfortran,patch] Another (possibly last?) LBOUND and UBOUND fix


Hi all,

Attached patch fixes both the simplification and translation for intrinsic UBOUND/LBOUND to get correct results in all cases I could imagine. This clears completely PR 29489 & 29712. The logic behind both patches is straightforward, and the only thing noteworthy is that {L,U}BOUND simplification provided by this patch is a bit pessimistic: there are a few more cases that we should be able to simplify here, but for thoses cases the folding of code emitted will take sufficient to not need runtime evaluation.

I'm in no position to regtest this patch, being on the road with a very slow laptop. I bootstrapped it, and regtested only {L,U}BOUND- related testcases. Moreover, the patch is confined to two routines, so I'm confident it doesn't break other things. Nonetheless, I'd appreciate if a reviewer could give it a spin.

OK for mainline, 4.2 and 4.1?

FX



:ADDPATCH fortran:

Attachment: ubound_lbound_4.ChangeLog
Description: Binary data

Attachment: ubound_lbound_4.diff
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]