This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa]: Patch: bootstrap regression fix
- From: Andrew Pinski <pinskia at physics dot uc dot edu>
- To: Dale Johannesen <dalej at apple dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Andrew Pinski <pinskia at physics dot uc dot edu>
- Date: Wed, 17 Dec 2003 11:39:18 -0800
- Subject: Re: [tree-ssa]: Patch: bootstrap regression fix
- References: <04007537-30C8-11D8-B374-000A95D7CD40@apple.com>
On Dec 17, 2003, at 11:34, Dale Johannesen wrote:
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
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 this falls under the obvious rules, right?
Should the definition of MOVE_RATIO go under defaults.h, anyway?
Thanks,
Andrew Pinski
(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 ----