gcc-2.95 alpha-osf4, new bootstrap failure stage1 in expr.c + PATCH
Jeffrey A Law
law@cygnus.com
Wed Jun 30 23:07:00 GMT 1999
In message < 199906301556.LAA00589@caip.rutgers.edu >you write:
> Yup, but now I'm getting an abort in stage1 building libgcc2.a:
Yes. Alexandre reported it first :-)
Try the attached patch. Basically I mis-read convert_to_mode. We still
need to use copy_to_mode_reg to ensure that the value is in a fresh pseudo.
* expr.c (emit_block_move): Use copy_to_mode_reg for
!TARGET_MEM_FUNCTIONS case too.
Index: expr.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/expr.c,v
retrieving revision 1.144.4.2
diff -c -3 -p -r1.144.4.2 expr.c
*** expr.c 1999/06/30 07:01:37 1.144.4.2
--- expr.c 1999/06/30 16:23:35
*************** emit_block_move (x, y, size, align)
*** 1738,1744 ****
#else
size = convert_to_mode (TYPE_MODE (integer_type_node), size,
TREE_UNSIGNED (integer_type_node));
! size = copy_to_reg (size);
#endif
#ifdef TARGET_MEM_FUNCTIONS
--- 1738,1744 ----
#else
size = convert_to_mode (TYPE_MODE (integer_type_node), size,
TREE_UNSIGNED (integer_type_node));
! size = copy_to_mode_reg (TYPE_MODE (integer_type_node), size);
#endif
#ifdef TARGET_MEM_FUNCTIONS
*************** clear_storage (object, size, align)
*** 2499,2505 ****
#else
size = convert_to_mode (TYPE_MODE (integer_type_node), size,
TREE_UNSIGNED (integer_type_node));
! size = copy_to_reg (size);
#endif
--- 2499,2505 ----
#else
size = convert_to_mode (TYPE_MODE (integer_type_node), size,
TREE_UNSIGNED (integer_type_node));
! size = copy_to_mode_reg (TYPE_MODE (integer_type_node), size);
#endif
More information about the Gcc-bugs
mailing list