From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13477 invoked by alias); 12 Jan 2008 19:14:41 -0000 Received: (qmail 13321 invoked by uid 48); 12 Jan 2008 19:13:56 -0000 Date: Sat, 12 Jan 2008 19:43:00 -0000 Message-ID: <20080112191356.13320.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/34648] [4.3 Regression] ICE in find_or_generate_expression In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenth 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: 2008-01/txt/msg01172.txt.bz2 ------- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-12 19:13 ------- Danny, maybe you mis-understood. We try to generate *VH.98, but VH.98 is indeed not in avail_out[19], but created for example as exp_gen[4] := { x_7(D) (VH.72) , D.1661_4 (VH.98) , *VH.74 (VH.75) , a.1_6 (VH.76) , *VH.72 (VH.77) , (unsigned int) VH.77 (VH.78) , VH.76 + VH.78 (VH.79) , *VH.79 (VH.80) , (unsigned int) VH.80 (VH.81) , VH.81 * 2 (VH.82) , VH.75 + VH.82 (VH.83) , *VH.83 (VH.84) , (int) VH.84 (VH.85) , VH.85 & 8192 (VH.86) } tmp_gen[4] := { D.1661_4 (VH.98) , D.1662_5 (VH.75) , a.1_6 (VH.76) , D.1664_8 (VH.77) , D.1665_9 (VH.78) , D.1666_10 (VH.79) , D.1667_11 (VH.80) , D.1668_12 (VH.81) , D.1669_13 (VH.82) , D.1670_14 (VH.83) , D.1671_15 (VH.84) , D.1672_16 (VH.85) , D.1673_17 (VH.86) } exp_gen[7] := { D.1661_4 (VH.98) , D.1667_34 (VH.97) , *VH.98 (VH.99) , (unsigned int) VH.97 (VH.100) , VH.100 * 2 (VH.101) , VH.99 + VH.101 (VH.102) , *VH.102 (VH.103) , (int) VH.103 (VH.104) , VH.104 & 8192 (VH.105) } tmp_gen[7] := { D.1661_35 (VH.98) , D.1662_36 (VH.99) , D.1668_42 (VH.100) , D.1669_43 (VH.101) , D.1670_44 (VH.102) , D.1671_45 (VH.103) , D.1672_46 (VH.104) , D.1673_47 (VH.105) } exp_gen[9] := { D.1661_4 (VH.98) , D.1667_53 (VH.109) , *VH.98 (VH.110) , (unsigned int) VH.109 (VH.111) , VH.111 * 2 (VH.112) , VH.110 + VH.112 (VH.113) , *VH.113 (VH.114) , (int) VH.114 (VH.115) , VH.115 & 8192 (VH.116) } tmp_gen[9] := { D.1661_54 (VH.98) , D.1662_55 (VH.110) , D.1668_61 (VH.111) , D.1669_62 (VH.112) , D.1670_63 (VH.113) , D.1671_64 (VH.114) , D.1672_65 (VH.115) , D.1673_66 (VH.116) } exp_gen[10] := { D.1661_4 (VH.98) , D.1667_53 (VH.109) , *VH.98 (VH.110) , (unsigned int) VH.109 (VH.111) , VH.111 * 2 (VH.112) , VH.110 + VH.112 (VH.113) , *VH.113 (VH.114) , (int) VH.114 (VH.115) , VH.115 & 8192 (VH.116) } But all these expressions for VH.98 are plain SSA_NAMEs. So we can in fact not do insertion of *VH.98 in two of the preds of BB. It looks like we do not do verification for that anywhere? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34648