This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] bootstrap problem on powerpc-apple-darwin6.6



On Thursday, Aug 21, 2003, at 12:22 US/Eastern, Jason Merrill wrote:


On Thu, 21 Aug 2003 12:12:24 -0400, Andrew Pinski <pinskia@physics.uc.edu> wrote:

I think the problem is that the rewrite of "if (a); else b" to "if (!a) b"
should really be to "if (a!=0) b".
This is in gimplify_cond_expr on line 1972 in gimplify.c.
Maybe someone else will know what is going on.
Here is what arg is when passed to invert_thruthvalue:
[...]
See that it is a integer_type and not a boolean_type so something needs to
change.

Why isn't the call to gimple_boolify earlier in the function working?

I do not know but I can reduce the source to: union tree_node; typedef union tree_node *tree; typedef enum fallback_t { fb_none = 0, fb_rvalue=1, fb_lvalue=2, fb_either=1|2 } fallback_t; int gimplify_expr (tree *expr_p, fallback_t fallback) { tree internal_post = (tree) ((void *)0); if ((fallback & fb_rvalue) && is_gimple_rhs (*expr_p)) { f_temp_2(); } else { abort(); } return 1; }

Thanks,
Andrew Pinski


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]