------- Comment #5 from rguenth at gcc dot gnu dot org 2006-03-17 14:29 -------
I see the same on ia64 for trunk.
Program received signal SIGSEGV, Segmentation fault.
0x40000000002ed101 in gimplify_cond_expr (expr_p=0x200000000070aca8,
pre_p=0x607ffffffe8dc798, fallback=fb_none) at gimplify.c:2425
2425 TREE_OPERAND (expr, 0) = gimple_boolify (TREE_OPERAND (expr, 0));
(gdb) bt
#0 0x40000000002ed101 in gimplify_cond_expr (expr_p=0x200000000070aca8,
pre_p=0x607ffffffe8dc798, fallback=fb_none) at gimplify.c:2425
#1 0x4000000000319bd0 in gimplify_expr (expr_p=0x200000000070aca8,
pre_p=0x607ffffffe8dc798, post_p=0x607ffffffe8dc7a0,
[EMAIL PROTECTED]: 0x40000000002c11e0 <is_gimple_stmt>,
fallback=fb_none) at gimplify.c:5251
#2 0x4000000000306660 in gimplify_stmt (stmt_p=0x200000000070aca8)
at gimplify.c:4144
#3 0x40000000003066d0 in gimplify_to_stmt_list (stmt_p=0x200000000070aca8)
at gimplify.c:4152
#4 0x40000000002ee330 in gimplify_cond_expr (expr_p=0x200000000070acf8,
pre_p=0x607ffffffe8dd218, fallback=fb_none) at gimplify.c:2456
#5 0x4000000000319bd0 in gimplify_expr (expr_p=0x200000000070acf8,
pre_p=0x607ffffffe8dd218, post_p=0x607ffffffe8dd220,
[EMAIL PROTECTED]: 0x40000000002c11e0 <is_gimple_stmt>,
fallback=fb_none) at gimplify.c:5251
#6 0x4000000000306660 in gimplify_stmt (stmt_p=0x200000000070acf8)
at gimplify.c:4144
#7 0x40000000003066d0 in gimplify_to_stmt_list (stmt_p=0x200000000070acf8)
at gimplify.c:4152
#8 0x40000000002ee330 in gimplify_cond_expr (expr_p=0x200000000070ad48,
pre_p=0x607ffffffe8ddc98, fallback=fb_none) at gimplify.c:2456
the frontend passes us:
Breakpoint 3, gimplify_cond_expr (expr_p=0x20000000007cfe70,
pre_p=0x607fffffff1fe018, fallback=fb_none) at gimplify.c:2365
2365 tree expr = *expr_p;
(gdb) n
2369 type = TREE_TYPE (expr);
(gdb) call debug_tree(expr)
<cond_expr 0x20000000007cfde0
type <void_type 0x2000000000375080 void VOID
align 8 symtab 0 alias set -1
pointer_to_this <pointer_type 0x2000000000375130>>
arg 0 <integer_cst 0x2000000000345890 type <integer_type 0x20000000003744d0
int> constant invariant 0>
arg 1 <statement_list 0x20000000004714d0 type <void_type 0x2000000000375080
void>
head (nil) tail (nil) stmts
>
arg 2 <cond_expr 0x20000000007cfd90 type <void_type 0x2000000000375080
void>
arg 0 <integer_cst 0x2000000000345890 0>
arg 1 <statement_list 0x2000000000471590 type <void_type
0x2000000000375080 void>
head (nil) tail (nil) stmts
>
arg 2 <cond_expr 0x20000000007cfd40 type <void_type 0x2000000000375080
void>
arg 0 <integer_cst 0x2000000000345890 0>
arg 1 <statement_list 0x2000000000471620 type <void_type
0x2000000000375080 void>
.... etc.
recursive gimplification will of course break at some point here. I remember
Zdenek rewriting gimplification to a non-recursive thingie... any news here?
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rakdver at gcc dot gnu dot
| |org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
GCC build triplet|i686-pc-linux-gnu |
GCC host triplet|i686-pc-linux-gnu |
GCC target triplet|i686-pc-linux-gnu |
Known to fail| |4.2.0
Last reconfirmed|0000-00-00 00:00:00 |2006-03-17 14:29:57
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21898