invoke.texi (-fipa-struct-reorg): Do not mention -fipa-type-escape.
2010-05-16 Richard Guenther <rguenther@suse.de> * doc/invoke.texi (-fipa-struct-reorg): Do not mention -fipa-type-escape. * ipa-type-escape.c (gate_type_escape_vars): Run when -fipa-struct-reorg runs. * opts.c (decode_options): Do not unset flag_ipa_type_escape. * common.opt (fipa-type-escape): Remove. * gcc.dg/pr43317.c: Do not pass -fipa-type-escape. * gcc.dg/pr43084.c: Likewise. * gcc.dg/pr42250.c: Pass -fipa-struct-reorg instead of -fipa-type-escape. * gcc.dg/struct/wo_prof_escape_arg_to_local.c: Do not pass -fipa-type-escape. * gcc.dg/struct/struct-reorg.exp: Likewise. * gcc.dg/struct/wo_prof_empty_str.c: Likewise. * gcc.dg/struct/wo_prof_escape_return.c: Likewise. From-SVN: r159464
This commit is contained in:
parent
203a92e384
commit
6b87d1b4ca
@ -1,3 +1,12 @@
|
||||
2010-05-16 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
* doc/invoke.texi (-fipa-struct-reorg): Do not mention
|
||||
-fipa-type-escape.
|
||||
* ipa-type-escape.c (gate_type_escape_vars): Run when
|
||||
-fipa-struct-reorg runs.
|
||||
* opts.c (decode_options): Do not unset flag_ipa_type_escape.
|
||||
* common.opt (fipa-type-escape): Remove.
|
||||
|
||||
2010-05-16 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
|
||||
|
@ -717,10 +717,6 @@ fipa-reference
|
||||
Common Report Var(flag_ipa_reference) Init(0) Optimization
|
||||
Discover readonly and non addressable static variables
|
||||
|
||||
fipa-type-escape
|
||||
Common Report Var(flag_ipa_type_escape) Init(0) Optimization
|
||||
Type based escape and alias analysis
|
||||
|
||||
fipa-matrix-reorg
|
||||
Common Report Var(flag_ipa_matrix_reorg) Optimization
|
||||
Perform matrix layout flattening and transposing based
|
||||
|
@ -346,7 +346,7 @@ Objective-C and Objective-C++ Dialects}.
|
||||
-finline-functions -finline-functions-called-once -finline-limit=@var{n} @gol
|
||||
-finline-small-functions -fipa-cp -fipa-cp-clone -fipa-matrix-reorg -fipa-pta @gol
|
||||
-fipa-profile -fipa-pure-const -fipa-reference -fipa-struct-reorg @gol
|
||||
-fipa-type-escape -fira-algorithm=@var{algorithm} @gol
|
||||
-fira-algorithm=@var{algorithm} @gol
|
||||
-fira-region=@var{region} -fira-coalesce @gol
|
||||
-fira-loop-pressure -fno-ira-share-save-slots @gol
|
||||
-fno-ira-share-spill-slots -fira-verbose=@var{n} @gol
|
||||
@ -6633,8 +6633,7 @@ Perform structure reorganization optimization, that change C-like structures
|
||||
layout in order to better utilize spatial locality. This transformation is
|
||||
affective for programs containing arrays of structures. Available in two
|
||||
compilation modes: profile-based (enabled with @option{-fprofile-generate})
|
||||
or static (which uses built-in heuristics). Require @option{-fipa-type-escape}
|
||||
to provide the safety of this transformation. It works only in whole program
|
||||
or static (which uses built-in heuristics). It works only in whole program
|
||||
mode, so it requires @option{-fwhole-program} and @option{-combine} to be
|
||||
enabled. Structures considered @samp{cold} by this transformation are not
|
||||
affected (see @option{--param struct-reorg-cold-struct-ratio=@var{value}}).
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Type based alias analysis.
|
||||
/* Escape analysis for types.
|
||||
Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010
|
||||
Free Software Foundation, Inc.
|
||||
Contributed by Kenneth Zadeck <zadeck@naturalbridge.com>
|
||||
@ -2112,9 +2112,7 @@ type_escape_execute (void)
|
||||
static bool
|
||||
gate_type_escape_vars (void)
|
||||
{
|
||||
return (flag_ipa_type_escape
|
||||
/* Don't bother doing anything if the program has errors. */
|
||||
&& !(errorcount || sorrycount));
|
||||
return flag_ipa_struct_reorg && flag_whole_program && (optimize > 0);
|
||||
}
|
||||
|
||||
struct simple_ipa_opt_pass pass_ipa_type_escape =
|
||||
|
@ -1151,7 +1151,6 @@ decode_options (unsigned int argc, const char **argv)
|
||||
{
|
||||
/* These passes are not WHOPR compatible yet. */
|
||||
flag_ipa_cp = 0;
|
||||
flag_ipa_type_escape = 0;
|
||||
flag_ipa_pta = 0;
|
||||
flag_ipa_struct_reorg = 0;
|
||||
}
|
||||
|
@ -1,3 +1,15 @@
|
||||
2010-05-16 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
* gcc.dg/pr43317.c: Do not pass -fipa-type-escape.
|
||||
* gcc.dg/pr43084.c: Likewise.
|
||||
* gcc.dg/pr42250.c: Pass -fipa-struct-reorg instead of
|
||||
-fipa-type-escape.
|
||||
* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Do not pass
|
||||
-fipa-type-escape.
|
||||
* gcc.dg/struct/struct-reorg.exp: Likewise.
|
||||
* gcc.dg/struct/wo_prof_empty_str.c: Likewise.
|
||||
* gcc.dg/struct/wo_prof_escape_return.c: Likewise.
|
||||
|
||||
2010-05-16 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* gcc.dg/c1x-static-assert-1.c, gcc.dg/c1x-static-assert-2.c,
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -fipa-type-escape" } */
|
||||
/* { dg-options "-O2 -fipa-struct-reorg" } */
|
||||
|
||||
extern double log10 (double __x);
|
||||
extern double ceil (double __x);
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* PR debug/43084 */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O1 -fipa-struct-reorg -fwhole-program -fipa-type-escape -fcompare-debug" } */
|
||||
/* { dg-options "-O1 -fipa-struct-reorg -fwhole-program -fcompare-debug" } */
|
||||
|
||||
struct S
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O -fipa-struct-reorg -fwhole-program -fipa-type-escape -g" } */
|
||||
/* { dg-options "-O -fipa-struct-reorg -fwhole-program -g" } */
|
||||
|
||||
extern void *malloc(__SIZE_TYPE__);
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
||||
load_lib gcc-dg.exp
|
||||
load_lib target-supports.exp
|
||||
|
||||
set STRUCT_REORG_CFLAGS "-O3 -fipa-struct-reorg -fdump-ipa-all -fwhole-program -combine -fipa-type-escape"
|
||||
set STRUCT_REORG_CFLAGS "-O3 -fipa-struct-reorg -fdump-ipa-all -fwhole-program -combine"
|
||||
|
||||
# Initialize `dg'.
|
||||
dg-init
|
||||
@ -51,7 +51,7 @@ load_lib profopt.exp
|
||||
# These are globals used by profopt-execute. The first is options
|
||||
# needed to generate profile data, the second is options to use the
|
||||
# profile data.
|
||||
set common "-O3 -fwhole-program -combine -fipa-type-escape"
|
||||
set common "-O3 -fwhole-program -combine"
|
||||
set profile_option [concat $common " -fprofile-generate"]
|
||||
set feedback_option [concat $common " -fprofile-use -fipa-struct-reorg -fdump-ipa-all"]
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* { dg-options "-O3 -fno-inline -fipa-type-escape -fdump-ipa-all -fipa-struct-reorg -fwhole-program -combine" } */
|
||||
/* { dg-options "-O3 -fno-inline -fdump-ipa-all -fipa-struct-reorg -fwhole-program -combine" } */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-do run } */
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* { dg-options "-O3 -fno-inline -fno-ipa-sra -fipa-type-escape -fdump-ipa-all -fipa-struct-reorg -fwhole-program -combine" } */
|
||||
/* { dg-options "-O3 -fno-inline -fno-ipa-sra -fdump-ipa-all -fipa-struct-reorg -fwhole-program -combine" } */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-do run } */
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* { dg-options "-O3 -fno-inline -fipa-type-escape -fdump-ipa-all -fipa-struct-reorg -fwhole-program -combine" } */
|
||||
/* { dg-options "-O3 -fno-inline -fdump-ipa-all -fipa-struct-reorg -fwhole-program -combine" } */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-do run } */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user