From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26453 invoked by alias); 12 Sep 2003 15:08:12 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 26446 invoked by alias); 12 Sep 2003 15:08:11 -0000 Date: Fri, 12 Sep 2003 15:08:00 -0000 Message-ID: <20030912150811.26444.qmail@sources.redhat.com> From: "cvs-commit at gcc dot gnu dot org" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20021216151600.8967.martin@xemacs.org> References: <20021216151600.8967.martin@xemacs.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug optimization/8967] [3.4 regression] Making class data members `const' pessimizes code X-Bugzilla-Reason: CC X-SW-Source: 2003-09/txt/msg00983.txt.bz2 List-Id: PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8967 ------- Additional Comments From cvs-commit at gcc dot gnu dot org 2003-09-12 15:08 ------- Subject: Bug 8967 CVSROOT: /cvs/gcc Module name: gcc Changes by: sayle@gcc.gnu.org 2003-09-12 15:07:52 Modified files: gcc : ChangeLog alias.c rtl.h flow.c Log message: PR optimization/8967 * alias.c (write_dependence_p): Modify to take an additional constp argument that controls whether the UNCHANGING_RTX_P flags are used. (anti_dependence, output_dependence): Adjust write_dependence_p callers to pass this additional argument, to return the same result. (unchanging_anti_dependence): New variant of anti_dependence that ignores the UNCHANGING_RTX_P property on memory references. * rtl.h (unchaning_anti_dependence): Prototype here. * flow.c (init_propagate_block): Place fake constant mem writes on the mem_set_list so that dead writes to const variables are deleted. (insn_dead_p): Change anti_dependence to unchanging_anti_dependence. (mark_used_regs): Likewise. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.1036&r2=2.1037 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/alias.c.diff?cvsroot=gcc&r1=1.199&r2=1.200 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/rtl.h.diff?cvsroot=gcc&r1=1.434&r2=1.435 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&r1=1.561&r2=1.562