From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6334 invoked by alias); 4 Feb 2009 20:55:10 -0000 Received: (qmail 6032 invoked by alias); 4 Feb 2009 20:54:52 -0000 Date: Wed, 04 Feb 2009 20:55:00 -0000 Message-ID: <20090204205452.6031.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug rtl-optimization/37889] [4.3/4.4 Regression] SEGV, conditional execution proactively executed the false arm. In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "bonzini at gcc dot gnu dot org" 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: 2009-02/txt/msg00378.txt.bz2 ------- Comment #18 from bonzini at gnu dot org 2009-02-04 20:54 ------- Subject: Bug 37889 Author: bonzini Date: Wed Feb 4 20:54:36 2009 New Revision: 143939 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=143939 Log: 2009-02-04 Paolo Bonzini Hans-Peter Nilsson PR rtl-optimization/37889 * rtlanal.c (rtx_addr_can_trap_p_1): Add offset and size arguments. Move offset handling from PLUS to before the switch. Use new arguments when considering SYMBOL_REFs too. (rtx_addr_can_trap_p): Pass dummy offset and size. (enum may_trap_p_flags): Remove. (may_trap_p_1): Pass size from MEM_SIZE. PR rtl-optimization/38921 * loop-invariant.c (find_invariant_insn): Use may_trap_or_fault_p. * rtl.h (may_trap_after_code_motion_p): Delete prototype. * rtlanal.c (may_trap_after_code_motion_p): Delete. (may_trap_p, may_trap_or_fault_p): Pass 0/1 as flags. Modified: trunk/gcc/ChangeLog trunk/gcc/loop-invariant.c trunk/gcc/rtl.h trunk/gcc/rtlanal.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37889