[Bug d/110514] d: accesses of immutable arrays using constant index still bounds checked
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Jul 1 23:20:29 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110514
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Iain Buclaw
<ibuclaw@gcc.gnu.org>:
https://gcc.gnu.org/g:750526ee180ae2af66ee07db95c9787e8d86ed4b
commit r12-9747-g750526ee180ae2af66ee07db95c9787e8d86ed4b
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date: Sat Jul 1 23:32:53 2023 +0200
d: Fix accesses of immutable arrays using constant index still bounds
checked
Starts setting TREE_READONLY against specific kinds of VAR_DECLs, so
that the middle-end/optimization passes can more aggressively constant
fold D code that makes use of `immutable' or `const'.
PR d/110514
gcc/d/ChangeLog:
* decl.cc (get_symbol_decl): Set TREE_READONLY on certain kinds of
const and immutable variables.
* expr.cc (ExprVisitor::visit (ArrayLiteralExp *)): Set
TREE_READONLY
on immutable dynamic array literals.
gcc/testsuite/ChangeLog:
* gdc.dg/pr110514a.d: New test.
* gdc.dg/pr110514b.d: New test.
* gdc.dg/pr110514c.d: New test.
* gdc.dg/pr110514d.d: New test.
(cherry picked from commit 61b1c562f8c703bff045e91257120e42b7fae523)
More information about the Gcc-bugs
mailing list