[tree-ssa]: Patch: bootstrap regression fix

Jan Hubicka hubicka@ucw.cz
Wed Dec 17 19:39:00 GMT 2003


> This patch
> 2003-12-17  Jan Hubicka  <jh@suse.cz>
> 
>         * tree-inline.c (estimate_num_insns_1):  Check that all nodes 
> are
>         known; add missing nodes; fix MODIFY_EXPR

Erm, it is second time it bit me.  Thanks!
> 
> broke bootstrap on Darwin; the rs6000 files do not define MOVE_RATIO 
> specially.
> According to the doc they don't have to.  This moves the default 
> definition from
> expr.c to expr.h.  Bootstrapped.  OK?

I would say that defaults.h is the proper place.
I am starting bootstrap with that change.  Would it be OK assuming it
passes?

Honza
> 
> (Apple's mailer may screw up the long lines below, although they look 
> all right to me;
> I promise the change is a simple cut-and-paste.)
> 
> Index: expr.h
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/expr.h,v
> retrieving revision 1.117.2.21
> diff -u -d -b -w -c -3 -p -r1.117.2.21 expr.h
> cvs server: conflicting specifications of output style
> *** expr.h      13 Nov 2003 02:37:52 -0000      1.117.2.21
> --- expr.h      17 Dec 2003 19:30:16 -0000
> *************** enum expand_modifier {EXPAND_NORMAL = 0,
> *** 62,67 ****
> --- 62,79 ----
>      inhibit_defer_pop for more information.  */
>   #define NO_DEFER_POP (inhibit_defer_pop += 1)
> 
> + /* If a memory-to-memory move would take MOVE_RATIO or more simple
> +    move-instruction sequences, we will do a movstr or libcall 
> instead.  */
> +
> + #ifndef MOVE_RATIO
> + #if defined (HAVE_movstrqi) || defined (HAVE_movstrhi) || defined 
> (HAVE_movstrsi) || defined (HAVE_movstrdi) || defined (HAVE_movstrti)
> + #define MOVE_RATIO 2
> + #else
> + /* If we are optimizing for space (-Os), cut down the default move 
> ratio.  */
> + #define MOVE_RATIO (optimize_size ? 3 : 15)
> + #endif
> + #endif
> +
>   /* Allow the compiler to defer stack pops.  See inhibit_defer_pop for
>      more information.  */
>   #define OK_DEFER_POP (inhibit_defer_pop -= 1)
> Index: expr.c
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/expr.c,v
> retrieving revision 1.467.2.69
> diff -u -d -b -w -c -3 -p -r1.467.2.69 expr.c
> cvs server: conflicting specifications of output style
> *** expr.c      10 Dec 2003 21:43:51 -0000      1.467.2.69
> --- expr.c      17 Dec 2003 19:30:16 -0000
> *************** static char direct_store[NUM_MACHINE_MOD
> *** 186,203 ****
> 
>   static bool 
> float_extend_from_mem[NUM_MACHINE_MODES][NUM_MACHINE_MODES];
> 
> - /* If a memory-to-memory move would take MOVE_RATIO or more simple
> -    move-instruction sequences, we will do a movstr or libcall 
> instead.  */
> -
> - #ifndef MOVE_RATIO
> - #if defined (HAVE_movstrqi) || defined (HAVE_movstrhi) || defined 
> (HAVE_movstrsi) || defined (HAVE_movstrdi) || defined (HAVE_movstrti)
> - #define MOVE_RATIO 2
> - #else
> - /* If we are optimizing for space (-Os), cut down the default move 
> ratio.  */
> - #define MOVE_RATIO (optimize_size ? 3 : 15)
> - #endif
> - #endif
> -
>   /* This macro is used to determine whether move_by_pieces should be 
> called
>      to perform a structure copy.  */
>   #ifndef MOVE_BY_PIECES_P
> --- 186,191 ----



More information about the Gcc-patches mailing list