------- Comment #13 from hosking at cs dot purdue dot edu 2006-08-24 15:27
-------
Is this enough?
Here is the dump output, followed by stack traces at the resize and remove
points (the remove goes on to fail). The edge being split is:
(gdb) p *e
$9 = {
src = 0x425cc8d0,
dest = 0x425cc8a0,
insns = {
r = 0x425ccc90,
t = 0x425ccc90
},
aux = 0x424a1270,
goto_locus = 0x0,
flags = 0,
probability = 0,
count = 0,
dest_idx = 1111565824
}
Its src is:
(gdb) p *(e->src)
$12 = {
stmt_list = 0x425cd7e0,
preds = 0x425bd7e0,
succs = 0x0,
aux = 0x0,
loop_father = 0x0,
dom = {0x1, 0x2710},
prev_bb = 0x0,
next_bb = 0x0,
il = {
rtl = 0x2
},
phi_nodes = 0x0,
predictions = 0x0,
count = 4781934674863446560,
index = 0,
loop_depth = 0,
frequency = 0,
flags = 1
}
Its dest is:
(gdb) p *(e->dest)
$13 = {
stmt_list = 0x425cd780,
preds = 0x425bd7e0,
succs = 0x0,
aux = 0x0,
loop_father = 0x0,
dom = {0x1, 0x2710},
prev_bb = 0x0,
next_bb = 0x0,
il = {
rtl = 0x3
},
phi_nodes = 0x0,
predictions = 0x0,
count = 4781934262546585568,
index = 0,
loop_depth = 0,
frequency = 0,
flags = 1
}
Here is the dump:
;; Function TrestleGoo__PutProp (TrestleGoo__PutProp)
TrestleGoo__PutProp (M3_BFdKo9_vv, M3_Af40ku_ref)
{
<unnamed type> * M3_BFdKo9_v;
word_32 M3_Cwb5VA_tc;
<unnamed type> * M3_BhAG13_p;
<unnamed type> * M3_BhAG13_e;
struct
{
} L_2;
<unnamed type> * D.403;
<unnamed type> * D.406;
<unnamed type> * D.407;
<unnamed type> * D.419;
<unnamed type> (*<T181>) (<unnamed type> *) D.506;
<unnamed type> * D.505;
<unnamed type> * * D.504;
<unnamed type> * D.503;
<unnamed type> * D.502;
<unnamed type> * * L_2.3;
<unnamed type> D.500;
<unnamed type> D.499;
word_32 D.498;
word_32 D.497;
word_32 D.496;
int_32 D.495;
int_32 * D.494;
<unnamed type> * D.493;
<unnamed type> * * D.492;
<unnamed type> * * D.491;
<unnamed type> D.490;
word_32 D.489;
word_32 D.488;
int_32 M3_Cwb5VA_tc.2;
<unnamed type> D.486;
<unnamed type> D.485;
word_32 D.484;
word_32 D.483;
word_32 D.482;
int_32 D.481;
int_32 * D.480;
<unnamed type> * D.479;
<unnamed type> * * D.478;
<unnamed type> * D.477;
<unnamed type> D.476;
<unnamed type> D.475;
word_32 D.474;
word_32 D.473;
word_32 D.472;
int_32 D.471;
int_32 * D.470;
<unnamed type> * D.469;
<unnamed type> * * M3_BhAG13_e.1;
<unnamed type> * * D.467;
<unnamed type> * * D.466;
<unnamed type> * D.465;
<unnamed type> * D.464;
<unnamed type> * D.463;
<unnamed type> * * D.462;
<unnamed type> * D.461;
int_32 D.460;
<unnamed type> * D.459;
int_32 D.458;
int_32 * D.457;
<unnamed type> * D.456;
int_32 D.455;
word_32 D.454;
word_32 D.453;
word_32 D.452;
int_32 D.451;
int_32 * D.450;
<unnamed type> * D.449;
<unnamed type> * D.448;
int_32 * D.447;
<unnamed type> * D.446;
<unnamed type> (*<T181>) (<unnamed type> *) D.445;
<unnamed type> * D.444;
<unnamed type> * * D.443;
<unnamed type> * D.442;
<unnamed type> * * D.441;
<unnamed type> * D.440;
<unnamed type> * * D.439;
<unnamed type> * D.438;
<unnamed type> D.437;
<unnamed type> D.436;
word_32 D.435;
word_32 D.434;
word_32 D.433;
int_32 D.432;
int_32 * D.431;
<unnamed type> * D.430;
<unnamed type> * D.429;
<unnamed type> * * D.428;
<unnamed type> * D.427;
# BLOCK 0 freq:1000
# PRED: ENTRY [100.0%] (fallthru,exec)
D.427_4 = &MM_TrestleGoo + 52;
D.428_5 = (<unnamed type> * *) D.427_4;
# VUSE <MM_TrestleGoo_197>;
D.429_6 = *D.428_5;
if (D.429_6 == 0B) goto <L53>; else goto <L0>;
# SUCC: 43 [19.0%] (true,exec) 1 [81.0%] (false,exec)
# BLOCK 43 freq:190
# PRED: 0 [19.0%] (true,exec)
<L53>:;
goto <bb 3> (<L2>);
# SUCC: 3 [100.0%] (fallthru)
# BLOCK 1 freq:810
# PRED: 0 [81.0%] (false,exec)
<L0>:;
D.430_166 = D.429_6 + ffffffffffffffff;
D.431_167 = (int_32 *) D.430_166;
# VUSE <MM_TrestleGoo_197>;
# VUSE <L_2_198>;
D.432_168 = *D.431_167;
D.433_169 = (word_32) D.432_168;
D.434_170 = D.433_169 << 22;
D.435_171 = D.434_170 >> 31;
if (D.435_171 == 0) goto <L54>; else goto <L1>;
# SUCC: 44 [70.0%] (true,exec) 2 [30.0%] (false,exec)
# BLOCK 44 freq:567
# PRED: 1 [70.0%] (true,exec)
<L54>:;
goto <bb 3> (<L2>);
# SUCC: 3 [100.0%] (fallthru)
# BLOCK 2 freq:243
# PRED: 1 [30.0%] (false,exec)
<L1>:;
# MM_TrestleGoo_239 = V_MAY_DEF <MM_TrestleGoo_197>;
# L_2_240 = V_MAY_DEF <L_2_198>;
RTHooks__CheckLoadTracedRef (D.429_6);
# SUCC: 3 [100.0%] (fallthru,exec)
# BLOCK 3 freq:1000
# PRED: 43 [100.0%] (fallthru) 44 [100.0%] (fallthru) 2 [100.0%]
(fallthru,exec)
# L_2_187 = PHI <L_2_198(43), L_2_198(44), L_2_240(2)>;
# MM_TrestleGoo_177 = PHI <MM_TrestleGoo_197(43), MM_TrestleGoo_197(44),
MM_TrestleGoo_239(2)>;
<L2>:;
D.438_7 = &L_2 + 8;
D.439_8 = (<unnamed type> * *) D.438_7;
# VUSE <MM_TrestleGoo_177>;
D.440_11 = *D.428_5;
# L_2_199 = V_MAY_DEF <L_2_187>;
*D.439_8 = D.440_11;
D.441_15 = (<unnamed type> * *) D.440_11;
# VUSE <MM_TrestleGoo_177>;
# VUSE <L_2_199>;
D.442_16 = *D.441_15;
D.443_17 = (<unnamed type> * *) D.442_16;
# VUSE <MM_TrestleGoo_177>;
# VUSE <L_2_199>;
D.444_18 = *D.443_17;
D.445_19 = (<unnamed type> (*<T181>) (<unnamed type> *)) D.444_18;
# MM_TrestleGoo_200 = V_MAY_DEF <MM_TrestleGoo_177>;
# L_2_201 = V_MAY_DEF <L_2_199>;
D.445_19 (D.440_11);
# SUCC: 4 [100.0%] (fallthru,exec)
# BLOCK 4 freq:1000
# PRED: 3 [100.0%] (fallthru,exec)
<L3>:;
D.446_23 = &L_2 + 4;
D.447_24 = (int_32 *) D.446_23;
# L_2_202 = V_MAY_DEF <L_2_201>;
*D.447_24 = 6;
# MM_TrestleGoo_203 = V_MAY_DEF <MM_TrestleGoo_200>;
# L_2_204 = V_MAY_DEF <L_2_202>;
RTHooks__PushEFrame (&L_2);
# SUCC: 5 [100.0%] (fallthru,exec)
# BLOCK 5 freq:1000
# PRED: 4 [100.0%] (fallthru,exec)
# MM_TrestleGoo_205 = V_MAY_DEF <MM_TrestleGoo_203>;
# L_2_206 = V_MAY_DEF <L_2_204>;
D.403_26 = TrestleGoo__TrueChild (M3_BFdKo9_vv_25);
# SUCC: 6 [100.0%] (fallthru,exec)
# BLOCK 6 freq:1000
# PRED: 5 [100.0%] (fallthru,exec)
if (M3_Af40ku_ref_29 == 0B) goto <L55>; else goto <L4>;
# SUCC: 45 [19.0%] (true,exec) 7 [81.0%] (false,exec)
# BLOCK 45 freq:190
# PRED: 6 [19.0%] (true,exec)
<L55>:;
goto <bb 8> (<L5>);
# SUCC: 8 [100.0%] (fallthru)
# BLOCK 7 freq:810
# PRED: 6 [81.0%] (false,exec)
<L4>:;
D.449_156 = M3_Af40ku_ref_29 + ffffffffffffffff;
D.450_157 = (int_32 *) D.449_156;
# VUSE <MM_TrestleGoo_205>;
# VUSE <L_2_206>;
D.451_158 = *D.450_157;
D.452_159 = (word_32) D.451_158;
D.453_160 = D.452_159 << 1;
D.454_161 = D.453_160 >> 12;
D.403_162 = (<unnamed type> *) D.454_161;
# SUCC: 8 [100.0%] (fallthru,exec)
# BLOCK 8 freq:1000
# PRED: 45 [100.0%] (fallthru) 7 [100.0%] (fallthru,exec)
# D.403_2 = PHI <0B(45), D.403_162(7)>;
<L5>:;
D.455_31 = (int_32) D.403_2;
M3_Cwb5VA_tc_32 = (word_32) D.455_31;
D.456_33 = &MM_TrestleGoo + 208;
D.457_34 = (int_32 *) D.456_33;
# VUSE <MM_TrestleGoo_205>;
D.458_35 = *D.457_34;
# MM_TrestleGoo_207 = V_MAY_DEF <MM_TrestleGoo_205>;
# L_2_208 = V_MAY_DEF <L_2_206>;
D.403_36 = VBT__GetProp (D.403_26, D.458_35);
# SUCC: 9 [100.0%] (fallthru,exec)
# BLOCK 9 freq:1000
# PRED: 8 [100.0%] (fallthru,exec)
if (D.403_36 == 0B) goto <L56>; else goto <L6>;
# SUCC: 46 [19.0%] (true,exec) 10 [81.0%] (false,exec)
# BLOCK 46 freq:190
# PRED: 9 [19.0%] (true,exec)
<L56>:;
goto <bb 12> (<L8>);
# SUCC: 12 [100.0%] (fallthru)
# BLOCK 10 freq:810
# PRED: 9 [81.0%] (false,exec)
<L6>:;
D.449_146 = D.403_36 + ffffffffffffffff;
D.450_147 = (int_32 *) D.449_146;
# VUSE <MM_TrestleGoo_207>;
# VUSE <L_2_208>;
D.451_148 = *D.450_147;
D.452_149 = (word_32) D.451_148;
D.453_150 = D.452_149 << 1;
D.454_151 = D.453_150 >> 12;
D.460_152 = (int_32) D.454_151;
# VUSE <MM_TrestleGoo_207>;
D.458_155 = *D.457_34;
if (D.460_152 == D.458_155) goto <L57>; else goto <L7>;
# SUCC: 47 [48.8%] (true,exec) 11 [51.2%] (false,exec)
# BLOCK 47 freq:395
# PRED: 10 [48.8%] (true,exec)
<L57>:;
goto <bb 12> (<L8>);
# SUCC: 12 [100.0%] (fallthru)
# BLOCK 11 freq:415
# PRED: 10 [51.2%] (false,exec)
<L7>:;
# MM_TrestleGoo_237 = V_MAY_DEF <MM_TrestleGoo_207>;
# L_2_238 = V_MAY_DEF <L_2_208>;
_m3_fault (1349);
# SUCC: 12 [100.0%] (fallthru,exec)
# BLOCK 12 freq:1000
# PRED: 46 [100.0%] (fallthru) 47 [100.0%] (fallthru) 11 [100.0%]
(fallthru,exec)
# L_2_188 = PHI <L_2_208(46), L_2_208(47), L_2_238(11)>;
# MM_TrestleGoo_178 = PHI <MM_TrestleGoo_207(46), MM_TrestleGoo_207(47),
MM_TrestleGoo_237(11)>;
<L8>:;
D.461_39 = &MM_TrestleGoo + 204;
D.462_40 = (<unnamed type> * *) D.461_39;
# VUSE <MM_TrestleGoo_178>;
D.463_41 = *D.462_40;
# MM_TrestleGoo_209 = V_MAY_DEF <MM_TrestleGoo_178>;
# L_2_210 = V_MAY_DEF <L_2_188>;
D.403_42 = RTHooks__Allocate (D.463_41);
# SUCC: 13 [100.0%] (fallthru,exec)
# BLOCK 13 freq:1000
# PRED: 12 [100.0%] (fallthru,exec)
D.465_45 = D.403_42 + 4;
D.466_46 = (<unnamed type> * *) D.465_45;
# MM_TrestleGoo_211 = V_MAY_DEF <MM_TrestleGoo_209>;
# L_2_212 = V_MAY_DEF <L_2_210>;
*D.466_46 = M3_Af40ku_ref_29;
D.467_48 = (<unnamed type> * *) D.403_42;
# MM_TrestleGoo_213 = V_MAY_DEF <MM_TrestleGoo_211>;
# L_2_214 = V_MAY_DEF <L_2_212>;
*D.467_48 = D.403_36;
# MM_TrestleGoo_215 = V_MAY_DEF <MM_TrestleGoo_213>;
# L_2_216 = V_MAY_DEF <L_2_214>;
VBT__PutProp (D.403_26, D.403_42);
goto <bb 34> (<L50>);
# SUCC: 34 [100.0%] (fallthru,exec)
# BLOCK 14 freq:9000
# PRED: 42 [100.0%] (fallthru,exec)
<L9>:;
# VUSE <MM_TrestleGoo_55>;
# VUSE <L_2_65>;
D.407_67 = *M3_BhAG13_e.1_50;
if (D.407_67 == 0B) goto <L58>; else goto <L10>;
# SUCC: 48 [19.0%] (true,exec) 15 [81.0%] (false,exec)
# BLOCK 48 freq:1710
# PRED: 14 [19.0%] (true,exec)
<L58>:;
goto <bb 17> (<L12>);
# SUCC: 17 [100.0%] (fallthru)
# BLOCK 15 freq:7290
# PRED: 14 [81.0%] (false,exec)
<L10>:;
D.469_130 = D.407_67 + ffffffffffffffff;
D.470_131 = (int_32 *) D.469_130;
# VUSE <MM_TrestleGoo_55>;
# VUSE <L_2_65>;
D.471_132 = *D.470_131;
D.472_133 = (word_32) D.471_132;
D.473_134 = D.472_133 << 22;
D.474_135 = D.473_134 >> 31;
if (D.474_135 == 0) goto <L59>; else goto <L11>;
# SUCC: 49 [70.0%] (true,exec) 16 [30.0%] (false,exec)
# BLOCK 49 freq:5103
# PRED: 15 [70.0%] (true,exec)
<L59>:;
goto <bb 17> (<L12>);
# SUCC: 17 [100.0%] (fallthru)
# BLOCK 16 freq:2187
# PRED: 15 [30.0%] (false,exec)
<L11>:;
# MM_TrestleGoo_233 = V_MAY_DEF <MM_TrestleGoo_55>;
# L_2_234 = V_MAY_DEF <L_2_65>;
RTHooks__CheckLoadTracedRef (D.407_67);
# SUCC: 17 [100.0%] (fallthru,exec)
# BLOCK 17 freq:9000
# PRED: 48 [100.0%] (fallthru) 49 [100.0%] (fallthru) 16 [100.0%]
(fallthru,exec)
# L_2_189 = PHI <L_2_65(48), L_2_65(49), L_2_234(16)>;
# MM_TrestleGoo_179 = PHI <MM_TrestleGoo_55(48), MM_TrestleGoo_55(49),
MM_TrestleGoo_233(16)>;
<L12>:;
D.477_68 = D.407_67 + 4;
D.478_69 = (<unnamed type> * *) D.477_68;
# VUSE <MM_TrestleGoo_179>;
# VUSE <L_2_189>;
D.406_70 = *D.478_69;
if (D.406_70 == 0B) goto <L60>; else goto <L13>;
# SUCC: 50 [19.0%] (true,exec) 18 [81.0%] (false,exec)
# BLOCK 18 freq:7290
# PRED: 17 [81.0%] (false,exec)
<L13>:;
D.449_122 = D.406_70 + ffffffffffffffff;
D.450_123 = (int_32 *) D.449_122;
# VUSE <MM_TrestleGoo_179>;
# VUSE <L_2_189>;
D.481_124 = *D.450_123;
D.482_125 = (word_32) D.481_124;
D.483_126 = D.482_125 << 22;
D.484_127 = D.483_126 >> 31;
if (D.484_127 == 0) goto <L61>; else goto <L14>;
# SUCC: 51 [70.0%] (true,exec) 19 [30.0%] (false,exec)
# BLOCK 19 freq:2187
# PRED: 18 [30.0%] (false,exec)
<L14>:;
# MM_TrestleGoo_231 = V_MAY_DEF <MM_TrestleGoo_179>;
# L_2_232 = V_MAY_DEF <L_2_189>;
RTHooks__CheckLoadTracedRef (D.406_70);
goto <bb 41> (<L51>);
# SUCC: 41 [100.0%] (fallthru,exec)
# BLOCK 50 freq:1710
# PRED: 17 [19.0%] (true,exec)
<L60>:;
# SUCC: 20 [100.0%] (fallthru)
# BLOCK 20 freq:9000
# PRED: 50 [100.0%] (fallthru) 41 [100.0%] (fallthru,exec)
# L_2_74 = PHI <L_2_189(50), L_2_252(41)>;
# MM_TrestleGoo_76 = PHI <MM_TrestleGoo_179(50), MM_TrestleGoo_251(41)>;
# D.403_3 = PHI <0B(50), D.403_121(41)>;
<L17>:;
D.455_72 = (int_32) D.403_3;
M3_Cwb5VA_tc.2_73 = (int_32) M3_Cwb5VA_tc_32;
if (D.455_72 != M3_Cwb5VA_tc.2_73) goto <L27>; else goto <L18>;
# SUCC: 30 [71.0%] (true,exec) 21 [29.0%] (false,exec)
# BLOCK 21 freq:2610
# PRED: 20 [29.0%] (false,exec)
<L18>:;
D.449_86 = M3_BhAG13_e_1 + ffffffffffffffff;
D.450_87 = (int_32 *) D.449_86;
# VUSE <MM_TrestleGoo_76>;
# VUSE <L_2_74>;
D.451_88 = *D.450_87;
D.452_89 = (word_32) D.451_88;
D.488_90 = D.452_89 << 21;
D.489_91 = D.488_90 >> 31;
if (D.489_91 != 0) goto <L62>; else goto <L19>;
# SUCC: 52 [70.0%] (true,exec) 22 [30.0%] (false,exec)
# BLOCK 52 freq:1827
# PRED: 21 [70.0%] (true,exec)
<L62>:;
goto <bb 23> (<L20>);
# SUCC: 23 [100.0%] (fallthru)
# BLOCK 22 freq:783
# PRED: 21 [30.0%] (false,exec)
<L19>:;
# MM_TrestleGoo_229 = V_MAY_DEF <MM_TrestleGoo_76>;
# L_2_230 = V_MAY_DEF <L_2_74>;
RTHooks__CheckStoreTraced (M3_BhAG13_e_1);
# SUCC: 23 [100.0%] (fallthru,exec)
# BLOCK 23 freq:2610
# PRED: 52 [100.0%] (fallthru) 22 [100.0%] (fallthru,exec)
# L_2_191 = PHI <L_2_74(52), L_2_230(22)>;
# MM_TrestleGoo_181 = PHI <MM_TrestleGoo_76(52), MM_TrestleGoo_229(22)>;
<L20>:;
# VUSE <MM_TrestleGoo_181>;
# VUSE <L_2_191>;
D.406_94 = *M3_BhAG13_e.1_50;
if (D.406_94 == 0B) goto <L63>; else goto <L21>;
# SUCC: 53 [19.0%] (true,exec) 24 [81.0%] (false,exec)
# BLOCK 53 freq:496
# PRED: 23 [19.0%] (true,exec)
<L63>:;
goto <bb 26> (<L23>);
# SUCC: 26 [100.0%] (fallthru)
# BLOCK 24 freq:2114
# PRED: 23 [81.0%] (false,exec)
<L21>:;
D.479_107 = D.406_94 + ffffffffffffffff;
D.480_108 = (int_32 *) D.479_107;
# VUSE <MM_TrestleGoo_181>;
# VUSE <L_2_191>;
D.481_109 = *D.480_108;
D.482_110 = (word_32) D.481_109;
D.483_111 = D.482_110 << 22;
D.484_112 = D.483_111 >> 31;
if (D.484_112 == 0) goto <L64>; else goto <L22>;
# SUCC: 54 [70.0%] (true,exec) 25 [30.0%] (false,exec)
# BLOCK 54 freq:1480
# PRED: 24 [70.0%] (true,exec)
<L64>:;
goto <bb 26> (<L23>);
# SUCC: 26 [100.0%] (fallthru)
# BLOCK 25 freq:634
# PRED: 24 [30.0%] (false,exec)
<L22>:;
# MM_TrestleGoo_227 = V_MAY_DEF <MM_TrestleGoo_181>;
# L_2_228 = V_MAY_DEF <L_2_191>;
RTHooks__CheckLoadTracedRef (D.406_94);
# SUCC: 26 [100.0%] (fallthru,exec)
# BLOCK 26 freq:2610
# PRED: 53 [100.0%] (fallthru) 54 [100.0%] (fallthru) 25 [100.0%]
(fallthru,exec)
# L_2_192 = PHI <L_2_191(53), L_2_191(54), L_2_228(25)>;
# MM_TrestleGoo_182 = PHI <MM_TrestleGoo_181(53), MM_TrestleGoo_181(54),
MM_TrestleGoo_227(25)>;
<L23>:;
D.491_95 = (<unnamed type> * *) D.406_94;
# VUSE <MM_TrestleGoo_182>;
# VUSE <L_2_192>;
D.407_96 = *D.491_95;
if (D.407_96 == 0B) goto <L65>; else goto <L24>;
# SUCC: 55 [19.0%] (true,exec) 27 [81.0%] (false,exec)
# BLOCK 55 freq:496
# PRED: 26 [19.0%] (true,exec)
<L65>:;
goto <bb 29> (<L26>);
# SUCC: 29 [100.0%] (fallthru)
# BLOCK 27 freq:2114
# PRED: 26 [81.0%] (false,exec)
<L24>:;
D.469_99 = D.407_96 + ffffffffffffffff;
D.470_100 = (int_32 *) D.469_99;
# VUSE <MM_TrestleGoo_182>;
# VUSE <L_2_192>;
D.471_101 = *D.470_100;
D.472_102 = (word_32) D.471_101;
D.473_103 = D.472_102 << 22;
D.474_104 = D.473_103 >> 31;
if (D.474_104 == 0) goto <L66>; else goto <L25>;
# SUCC: 56 [70.0%] (true,exec) 28 [30.0%] (false,exec)
# BLOCK 56 freq:1480
# PRED: 27 [70.0%] (true,exec)
<L66>:;
goto <bb 29> (<L26>);
# SUCC: 29 [100.0%] (fallthru)
# BLOCK 28 freq:634
# PRED: 27 [30.0%] (false,exec)
<L25>:;
# MM_TrestleGoo_225 = V_MAY_DEF <MM_TrestleGoo_182>;
# L_2_226 = V_MAY_DEF <L_2_192>;
RTHooks__CheckLoadTracedRef (D.407_96);
# SUCC: 29 [100.0%] (fallthru,exec)
# BLOCK 29 freq:2610
# PRED: 55 [100.0%] (fallthru) 56 [100.0%] (fallthru) 28 [100.0%]
(fallthru,exec)
# L_2_193 = PHI <L_2_192(55), L_2_192(56), L_2_226(28)>;
# MM_TrestleGoo_183 = PHI <MM_TrestleGoo_182(55), MM_TrestleGoo_182(56),
MM_TrestleGoo_225(28)>;
<L26>:;
# MM_TrestleGoo_223 = V_MAY_DEF <MM_TrestleGoo_183>;
# L_2_224 = V_MAY_DEF <L_2_193>;
*M3_BhAG13_e.1_50 = D.407_96;
goto <bb 33> (<L49>);
# SUCC: 33 [100.0%] (fallthru,exec)
# BLOCK 30 freq:6390
# PRED: 20 [71.0%] (true,exec)
<L27>:;
# VUSE <MM_TrestleGoo_76>;
# VUSE <L_2_74>;
D.419_75 = *M3_BhAG13_e.1_50;
if (D.419_75 == 0B) goto <L67>; else goto <L28>;
# SUCC: 57 [19.0%] (true,exec) 31 [81.0%] (false,exec)
# BLOCK 57 freq:1214
# PRED: 30 [19.0%] (true,exec)
<L67>:;
goto <bb 33> (<L49>);
# SUCC: 33 [100.0%] (fallthru)
# BLOCK 31 freq:5176
# PRED: 30 [81.0%] (false,exec)
<L28>:;
D.493_77 = D.419_75 + ffffffffffffffff;
D.494_78 = (int_32 *) D.493_77;
# VUSE <MM_TrestleGoo_76>;
# VUSE <L_2_74>;
D.495_79 = *D.494_78;
D.496_80 = (word_32) D.495_79;
D.497_81 = D.496_80 << 22;
D.498_82 = D.497_81 >> 31;
if (D.498_82 == 0) goto <L68>; else goto <L29>;
# SUCC: 58 [70.0%] (true,exec) 32 [30.0%] (false,exec)
# BLOCK 58 freq:3623
# PRED: 31 [70.0%] (true,exec)
<L68>:;
goto <bb 33> (<L49>);
# SUCC: 33 [100.0%] (fallthru)
# BLOCK 32 freq:1553
# PRED: 31 [30.0%] (false,exec)
<L29>:;
# MM_TrestleGoo_221 = V_MAY_DEF <MM_TrestleGoo_76>;
# L_2_222 = V_MAY_DEF <L_2_74>;
RTHooks__CheckLoadTracedRef (D.419_75);
# SUCC: 33 [100.0%] (fallthru,exec)
# BLOCK 33 freq:9000
# PRED: 29 [100.0%] (fallthru,exec) 32 [100.0%] (fallthru,exec) 58 [100.0%]
(fallthru) 57 [100.0%] (fallthru)
# L_2_184 = PHI <L_2_224(29), L_2_222(32), L_2_74(58), L_2_74(57)>;
# MM_TrestleGoo_194 = PHI <MM_TrestleGoo_223(29), MM_TrestleGoo_221(32),
MM_TrestleGoo_76(58), MM_TrestleGoo_76(57)>;
# M3_BhAG13_e_253 = PHI <M3_BhAG13_e_1(29), D.419_75(32), D.419_75(58),
D.419_75(57)>;
<L49>:;
# SUCC: 34 [100.0%] (fallthru,dfs_back,exec)
# BLOCK 34 freq:10000
# PRED: 33 [100.0%] (fallthru,dfs_back,exec) 13 [100.0%] (fallthru,exec)
# L_2_195 = PHI <L_2_184(33), L_2_216(13)>;
# MM_TrestleGoo_185 = PHI <MM_TrestleGoo_194(33), MM_TrestleGoo_215(13)>;
# M3_BhAG13_e_1 = PHI <M3_BhAG13_e_253(33), D.403_42(13)>;
<L50>:;
M3_BhAG13_e.1_50 = (<unnamed type> * *) M3_BhAG13_e_1;
# VUSE <MM_TrestleGoo_185>;
# VUSE <L_2_195>;
D.419_51 = *M3_BhAG13_e.1_50;
if (D.419_51 == 0B) goto <L35>; else goto <L33>;
# SUCC: 37 [10.0%] (loop_exit,true,exec) 35 [90.0%] (false,exec)
# BLOCK 35 freq:9000
# PRED: 34 [90.0%] (false,exec)
<L33>:;
D.493_138 = D.419_51 + ffffffffffffffff;
D.494_139 = (int_32 *) D.493_138;
# VUSE <MM_TrestleGoo_185>;
# VUSE <L_2_195>;
D.495_140 = *D.494_139;
D.496_141 = (word_32) D.495_140;
D.497_142 = D.496_141 << 22;
D.498_143 = D.497_142 >> 31;
if (D.498_143 == 0) goto <L69>; else goto <L34>;
# SUCC: 59 [70.0%] (true,exec) 36 [30.0%] (false,exec)
# BLOCK 36 freq:2700
# PRED: 35 [30.0%] (false,exec)
<L34>:;
# MM_TrestleGoo_235 = V_MAY_DEF <MM_TrestleGoo_185>;
# L_2_236 = V_MAY_DEF <L_2_195>;
RTHooks__CheckLoadTracedRef (D.419_51);
goto <bb 42> (<L52>);
# SUCC: 42 [100.0%] (fallthru,exec)
# BLOCK 37 freq:1000
# PRED: 34 [10.0%] (loop_exit,true,exec)
# L_2_196 = PHI <L_2_195(34)>;
# MM_TrestleGoo_186 = PHI <MM_TrestleGoo_185(34)>;
<L35>:;
# SUCC: 38 [100.0%] (fallthru,exec)
# BLOCK 38 freq:1000
# PRED: 37 [100.0%] (fallthru,exec)
<L38>:;
L_2.3_52 = (<unnamed type> * *) &L_2;
# VUSE <L_2_196>;
D.502_53 = *L_2.3_52;
# MM_TrestleGoo_217 = V_MAY_DEF <MM_TrestleGoo_186>;
# L_2_218 = V_MAY_DEF <L_2_196>;
RTHooks__PopEFrame (D.502_53);
# SUCC: 39 [100.0%] (fallthru,exec)
# BLOCK 39 freq:1000
# PRED: 38 [100.0%] (fallthru,exec)
# VUSE <L_2_218>;
D.440_56 = *D.439_8;
D.441_57 = (<unnamed type> * *) D.440_56;
# VUSE <MM_TrestleGoo_217>;
# VUSE <L_2_218>;
D.442_58 = *D.441_57;
D.503_59 = D.442_58 + 4;
D.504_60 = (<unnamed type> * *) D.503_59;
# VUSE <MM_TrestleGoo_217>;
# VUSE <L_2_218>;
D.505_61 = *D.504_60;
D.506_62 = (<unnamed type> (*<T181>) (<unnamed type> *)) D.505_61;
# MM_TrestleGoo_219 = V_MAY_DEF <MM_TrestleGoo_217>;
# L_2_220 = V_MAY_DEF <L_2_218>;
D.506_62 (D.440_56);
# SUCC: 40 [100.0%] (fallthru,exec)
# BLOCK 40 freq:1000
# PRED: 39 [100.0%] (fallthru,exec)
<L39>:;
return;
# SUCC: EXIT [100.0%]
# BLOCK 51 freq:5103
# PRED: 18 [70.0%] (true,exec)
<L61>:;
# SUCC: 41 [100.0%] (fallthru)
# BLOCK 41 freq:7290
# PRED: 19 [100.0%] (fallthru,exec) 51 [100.0%] (fallthru)
# L_2_252 = PHI <L_2_232(19), L_2_189(51)>;
# MM_TrestleGoo_251 = PHI <MM_TrestleGoo_231(19), MM_TrestleGoo_179(51)>;
<L51>:;
# VUSE <MM_TrestleGoo_251>;
# VUSE <L_2_252>;
D.451_117 = *D.450_123;
D.452_118 = (word_32) D.451_117;
D.453_119 = D.452_118 << 1;
D.454_120 = D.453_119 >> 12;
D.403_121 = (<unnamed type> *) D.454_120;
goto <bb 20> (<L17>);
# SUCC: 20 [100.0%] (fallthru,exec)
# BLOCK 59 freq:6300
# PRED: 35 [70.0%] (true,exec)
<L69>:;
# SUCC: 42 [100.0%] (fallthru)
# BLOCK 42 freq:9000
# PRED: 36 [100.0%] (fallthru,exec) 59 [100.0%] (fallthru)
# L_2_65 = PHI <L_2_236(36), L_2_195(59)>;
# MM_TrestleGoo_55 = PHI <MM_TrestleGoo_235(36), MM_TrestleGoo_185(59)>;
<L52>:;
goto <bb 14> (<L9>);
# SUCC: 14 [100.0%] (fallthru,exec)
}
Starting program: /Users/hosking/cm3/m3-sys/m3cc/build-4.1.1/gcc/m3cgc1
-fdump-tree-crited-vops-details-blocks-stats -O3 TrestleGoo.mc -o TrestleGoo.ms
TrestleGoo__Alias TrestleGoo__TrueChild TrestleGoo__PutProp
TrestleGoo__GetProp TrestleGoo__RemProp TrestleGoo__Next TrestleGoo_M3
Analyzing compilation unitPerforming intraprocedural optimizations
Assembling functions:
TrestleGoo_M3 _m3_fault TrestleGoo__TrueChild TrestleGoo__Next
TrestleGoo__GetProp TrestleGoo__Alias TrestleGoo__RemProp TrestleGoo__PutProp
Breakpoint 6, resize_phi_node (phi=0x425bd808, len=9) at
../../gcc/gcc/tree-phinodes.c:271
(gdb) where
#0 resize_phi_node (phi=0x425bd808, len=9) at
../../gcc/gcc/tree-phinodes.c:271
#1 0x001415e8 in reserve_phi_args_for_new_edge (bb=0x425bd7e0) at
../../gcc/gcc/tree-phinodes.c:325
#2 0x001fd8b0 in unchecked_make_edge (src=0x425cdcc0, dst=0x425bd7e0,
flags=1113315300) at ../../gcc/gcc/cfg.c:272
#3 0x002414fc in tree_split_edge (edge_in=0x424a12d0) at
../../gcc/gcc/tree-cfg.c:3117
#4 0x00261bcc in split_edge (e=0x425c6670) at ../../gcc/gcc/cfghooks.c:407
#5 0x002445b8 in tree_find_edge_insert_loc (e=0x424a12d0, bsi=0xbfffec48,
new_bb=0x0) at ../../gcc/gcc/tree-cfg.c:2975
#6 0x00244764 in bsi_commit_one_edge_insert (e=0x425bd808, new_bb=0x9) at
../../gcc/gcc/tree-cfg.c:3016
#7 0x002466c8 in bsi_commit_edge_inserts () at ../../gcc/gcc/tree-cfg.c:2997
#8 0x00344098 in execute_pre (do_fre=0 '\0') at
../../gcc/gcc/tree-ssa-pre.c:2731
#9 0x002260b8 in execute_one_pass (pass=0x4ed660) at
../../gcc/gcc/passes.c:827
#10 0x00226188 in execute_pass_list (pass=0x4ed660) at
../../gcc/gcc/passes.c:859
#11 0x002261a0 in execute_pass_list (pass=0x4ec21c) at
../../gcc/gcc/passes.c:860
#12 0x00153fa4 in tree_rest_of_compilation (fndecl=0x42443580) at
../../gcc/gcc/tree-optimize.c:419
#13 0x0000497c in m3_expand_function (fndecl=0x42443580) at
../../gcc/gcc/m3cg/parse.c:848
#14 0x00052784 in cgraph_expand_function (node=0x424501c0) at
../../gcc/gcc/cgraphunit.c:1055
#15 0x00052fc8 in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1121
#16 0x000130c0 in m3_parse_file (xx=0) at ../../gcc/gcc/m3cg/parse.c:4397
#17 0x00036674 in toplev_main (argc=1079409344, argv=0x40567bcc) at
../../gcc/gcc/toplev.c:991
#18 0x00001f24 in _start (argc=6, argv=0xbffff1c4, envp=0xbffff1e0) at
/SourceCache/Csu/Csu-58.1.1/crt.c:272
#19 0x00001dcc in start ()
(gdb) c
Continuing.
Breakpoint 5, remove_phi_node (phi=0x425bec00, prev=0x0) at
../../gcc/gcc/tree-phinodes.c:447
(gdb) where
#0 remove_phi_node (phi=0x425bec00, prev=0x0) at
../../gcc/gcc/tree-phinodes.c:447
#1 0x00341aac in remove_dead_inserted_code () at
../../gcc/gcc/tree-ssa-pre.c:2547
#2 0x003440a0 in execute_pre (do_fre=0 '\0') at
../../gcc/gcc/tree-ssa-pre.c:2733
#3 0x002260b8 in execute_one_pass (pass=0x4ed660) at
../../gcc/gcc/passes.c:827
#4 0x00226188 in execute_pass_list (pass=0x4ed660) at
../../gcc/gcc/passes.c:859
#5 0x002261a0 in execute_pass_list (pass=0x4ec21c) at
../../gcc/gcc/passes.c:860
#6 0x00153fa4 in tree_rest_of_compilation (fndecl=0x42443580) at
../../gcc/gcc/tree-optimize.c:419
#7 0x0000497c in m3_expand_function (fndecl=0x42443580) at
../../gcc/gcc/m3cg/parse.c:848
#8 0x00052784 in cgraph_expand_function (node=0x424501c0) at
../../gcc/gcc/cgraphunit.c:1055
#9 0x00052fc8 in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1121
#10 0x000130c0 in m3_parse_file (xx=0) at ../../gcc/gcc/m3cg/parse.c:4397
#11 0x00036674 in toplev_main (argc=1079409344, argv=0x40567bcc) at
../../gcc/gcc/toplev.c:991
#12 0x00001f24 in _start (argc=6, argv=0xbffff1c4, envp=0xbffff1e0) at
/SourceCache/Csu/Csu-58.1.1/crt.c:272
#13 0x00001dcc in start ()
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28798