re PR target/29030 (gcc.dg/array-9.c produces internal compiler error on Darwin at -m64)

2006-09-16   Andrew Pinski  <pinskia@physics.uc.edu>
             Jack Howarth  <howarth@bromo.med.uc.edu>

        PR target/29030
        * config/rs6000/rs6000.c (rs6000_darwin64_record_arg_advance_recurse)
        skip on error_mark_node.                                                                   (rs6000_darwin64_record_arg_recurse): Likewise.

Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>

From-SVN: r116994
This commit is contained in:
Andrew Pinski 2006-09-16 09:01:16 +00:00 committed by Eric Christopher
parent 3c40b0525e
commit 70fb00df82
2 changed files with 16 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2006-09-16 Andrew Pinski <pinskia@physics.uc.edu>
Jack Howarth <howarth@bromo.med.uc.edu>
PR target/29030
* config/rs6000/rs6000.c (rs6000_darwin64_record_arg_advance_recurse)
skip on error_mark_node.
(rs6000_darwin64_record_arg_recurse): Likewise.
2006-09-16 Steven Bosscher <steven@gcc.gnu.org>
* rtl.h (LABEL_OUTSIDE_LOOP_P): Remove.

View File

@ -4607,7 +4607,10 @@ rs6000_darwin64_record_arg_advance_recurse (CUMULATIVE_ARGS *cum,
{
HOST_WIDE_INT bitpos = startbitpos;
tree ftype = TREE_TYPE (f);
enum machine_mode mode = TYPE_MODE (ftype);
enum machine_mode mode;
if (ftype == error_mark_node)
continue;
mode = TYPE_MODE (ftype);
if (DECL_SIZE (f) != 0
&& host_integerp (bit_position (f), 1))
@ -4975,7 +4978,10 @@ rs6000_darwin64_record_arg_recurse (CUMULATIVE_ARGS *cum, tree type,
{
HOST_WIDE_INT bitpos = startbitpos;
tree ftype = TREE_TYPE (f);
enum machine_mode mode = TYPE_MODE (ftype);
enum machine_mode mode;
if (ftype == error_mark_node)
continue;
mode = TYPE_MODE (ftype);
if (DECL_SIZE (f) != 0
&& host_integerp (bit_position (f), 1))