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] |
As discussed at https://gcc.gnu.org/ml/gcc/2016-01/msg00023.html , the Go frontend needs some way to prevent ivopts from temporarily removing all pointers into a memory block. This patch adds a new option -fcollectible-pointers which makes that happen. This is not the best way to solve the problem, but it seems safe for GCC 6. I made the option -fcollectible-pointers intending that any similar optimizations (or, rather, non-optimizations) can be captured in the same option. And if we develop a better approach for ivopts, it can still be covered under this option name. Bootstrapped and tested on x86_64-pc-linux-gnu. OK for mainline? Ian gcc/ChangeLog: 2016-01-19 Ian Lance Taylor <iant@google.com> * common.opt (fcollectible-pointers): New option. * tree-ssa-loop-ivopts.c (add_autoinc_candidates): If -fcollectible-pointers, skip pointers. * doc/invoke.texi (Optimize Options): Document -fcollectible-pointers gcc/testsuite/ChangeLog: 2016-01-19 Ian Lance Taylor <iant@google.com> * gcc.dg/tree-ssa/ivopt_5.c: New test.
Attachment:
patch.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |