gfortran.h (gfc_option_t): Replace dump_parse_tree by dump_fortran_original and add dump_fortran_optimized.
2010-10-30 Thomas Koenig <tkoenig@gcc.gnu.org> * gfortran.h (gfc_option_t): Replace dump_parse_tree by dump_fortran_original and add dump_fortran_optimized. * lang.opt: Add fdump-fortran-original and fdump-fortran-optimized. Document that fdump-parse-tree is deprecated. * gfortran.texi: Add -fdump-fortran-original and -fdump-fortran-optimized. -fdump-parse-tree is deprecated. * frontend-passes.c (gfc_run_passes): If optimizing and if gfc_option.dump_fortran_optimized is set, dump the parse tree after optimization. * parse.c: Rename gfc_option.dump_parse_tree to gfc_option.dump_fortran_original. * options.c (gfc_init_options): Rename gfc_option.dump_parse_tree to gfc_option.dump_fortran_original and handle gfc_option.dump_fortran_optimize. (gfc_post_options): Rename gfc_option.dump_parse_tree to gfc_option.dump_fortran_original. (gfc_handle_option): Rename OPT_fdump_parse_tree to OPT_fdump_fortran_original and gfc_option.dump_parse_tree to gfc_option.dump_fortran_original. Handle OPT_fdump_fortran_optimized. From-SVN: r166091
This commit is contained in:
parent
dcedcddb5a
commit
1607a827d1
7 changed files with 68 additions and 13 deletions
|
@ -1,3 +1,27 @@
|
|||
2010-10-30 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||||
|
||||
* gfortran.h (gfc_option_t): Replace dump_parse_tree by
|
||||
dump_fortran_original and add dump_fortran_optimized.
|
||||
* lang.opt: Add fdump-fortran-original and
|
||||
fdump-fortran-optimized. Document that fdump-parse-tree is
|
||||
deprecated.
|
||||
* gfortran.texi: Add -fdump-fortran-original and
|
||||
-fdump-fortran-optimized. -fdump-parse-tree is deprecated.
|
||||
* frontend-passes.c (gfc_run_passes): If optimizing and
|
||||
if gfc_option.dump_fortran_optimized is set, dump the parse tree
|
||||
after optimization.
|
||||
* parse.c: Rename gfc_option.dump_parse_tree to
|
||||
gfc_option.dump_fortran_original.
|
||||
* options.c (gfc_init_options): Rename gfc_option.dump_parse_tree
|
||||
to gfc_option.dump_fortran_original and handle
|
||||
gfc_option.dump_fortran_optimize.
|
||||
(gfc_post_options): Rename gfc_option.dump_parse_tree
|
||||
to gfc_option.dump_fortran_original.
|
||||
(gfc_handle_option): Rename OPT_fdump_parse_tree to
|
||||
OPT_fdump_fortran_original and gfc_option.dump_parse_tree
|
||||
to gfc_option.dump_fortran_original. Handle
|
||||
OPT_fdump_fortran_optimized.
|
||||
|
||||
2010-10-30 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/44917
|
||||
|
|
|
@ -42,7 +42,11 @@ void
|
|||
gfc_run_passes (gfc_namespace *ns)
|
||||
{
|
||||
if (optimize)
|
||||
optimize_namespace (ns);
|
||||
{
|
||||
optimize_namespace (ns);
|
||||
if (gfc_option.dump_fortran_optimized)
|
||||
gfc_dump_parse_tree (ns, stdout);
|
||||
}
|
||||
}
|
||||
|
||||
/* Callback for each gfc_code node invoked through gfc_code_walker
|
||||
|
|
|
@ -2178,7 +2178,8 @@ typedef struct
|
|||
int max_continue_fixed;
|
||||
int max_continue_free;
|
||||
int max_identifier_length;
|
||||
int dump_parse_tree;
|
||||
int dump_fortran_original;
|
||||
int dump_fortran_optimized;
|
||||
|
||||
int warn_aliasing;
|
||||
int warn_ampersand;
|
||||
|
|
|
@ -143,8 +143,8 @@ and warnings}.
|
|||
|
||||
@item Debugging Options
|
||||
@xref{Debugging Options,,Options for debugging your program or GNU Fortran}.
|
||||
@gccoptlist{-fdump-parse-tree -ffpe-trap=@var{list} @gol
|
||||
-fdump-core -fbacktrace}
|
||||
@gccoptlist{-fdump-fortran-original -fdump-fortran-optimized @gol
|
||||
-ffpe-trap=@var{list} -fdump-core -fbacktrace -fdump-parse-tree}
|
||||
|
||||
@item Directory Options
|
||||
@xref{Directory Options,,Options for directory search}.
|
||||
|
@ -879,10 +879,22 @@ GNU Fortran has various special options that are used for debugging
|
|||
either your program or the GNU Fortran compiler.
|
||||
|
||||
@table @gcctabopt
|
||||
@item -fdump-parse-tree
|
||||
@item -fdump-fortran-original
|
||||
@opindex @code{fdump-fortran-original}
|
||||
Output the internal parse tree after translating the source program
|
||||
into internal representation. Only really useful for debugging the
|
||||
GNU Fortran compiler itself.
|
||||
|
||||
@item -fdump-optimized-tree
|
||||
@opindex @code{fdump-fortran-optimized}
|
||||
Output the parse tree after front-end optimization. Only really
|
||||
useful for debugging the GNU Fortran compiler itself.
|
||||
|
||||
@opindex @code{fdump-parse-tree}
|
||||
Output the internal parse tree before starting code generation. Only
|
||||
really useful for debugging the GNU Fortran compiler itself.
|
||||
Output the internal parse tree after translating the source program
|
||||
into internal representation. Only really useful for debugging the
|
||||
GNU Fortran compiler itself. This option is deprecated; use
|
||||
@code{-fdump-fortran-original} instead.
|
||||
|
||||
@item -ffpe-trap=@var{list}
|
||||
@opindex @code{ffpe-trap=}@var{list}
|
||||
|
|
|
@ -358,10 +358,18 @@ fdump-core
|
|||
Fortran
|
||||
Dump a core file when a runtime error occurs
|
||||
|
||||
fdump-parse-tree
|
||||
fdump-fortran-original
|
||||
Fortran
|
||||
Display the code tree after parsing
|
||||
|
||||
fdump-fortran-optimized
|
||||
Fortran
|
||||
Display the code tree after front end optimization
|
||||
|
||||
fdump-parse-tree
|
||||
Fortran
|
||||
Display the code tree after parsing; deprecated option
|
||||
|
||||
fexternal-blas
|
||||
Fortran
|
||||
Specify that an external BLAS library should be used for matmul calls on large-size arrays
|
||||
|
|
|
@ -90,7 +90,8 @@ gfc_init_options (unsigned int decoded_options_count,
|
|||
gfc_option.flag_max_array_constructor = 65535;
|
||||
gfc_option.convert = GFC_CONVERT_NATIVE;
|
||||
gfc_option.record_marker = 0;
|
||||
gfc_option.dump_parse_tree = 0;
|
||||
gfc_option.dump_fortran_original = 0;
|
||||
gfc_option.dump_fortran_optimized = 0;
|
||||
|
||||
gfc_option.warn_aliasing = 0;
|
||||
gfc_option.warn_ampersand = 0;
|
||||
|
@ -270,7 +271,7 @@ gfc_post_options (const char **pfilename)
|
|||
gfc_option.rtcheck |= GFC_RTCHECK_BOUNDS;
|
||||
|
||||
if (flag_compare_debug)
|
||||
gfc_option.dump_parse_tree = 0;
|
||||
gfc_option.dump_fortran_original = 0;
|
||||
|
||||
/* Verify the input file name. */
|
||||
if (!filename || strcmp (filename, "-") == 0)
|
||||
|
@ -686,8 +687,13 @@ gfc_handle_option (size_t scode, const char *arg, int value,
|
|||
gfc_option.flag_d_lines = 0;
|
||||
break;
|
||||
|
||||
case OPT_fdump_fortran_original:
|
||||
case OPT_fdump_parse_tree:
|
||||
gfc_option.dump_parse_tree = value;
|
||||
gfc_option.dump_fortran_original = value;
|
||||
break;
|
||||
|
||||
case OPT_fdump_fortran_optimized:
|
||||
gfc_option.dump_fortran_optimized = value;
|
||||
break;
|
||||
|
||||
case OPT_ffixed_form:
|
||||
|
|
|
@ -4373,7 +4373,7 @@ loop:
|
|||
gfc_resolve (gfc_current_ns);
|
||||
|
||||
/* Dump the parse tree if requested. */
|
||||
if (gfc_option.dump_parse_tree)
|
||||
if (gfc_option.dump_fortran_original)
|
||||
gfc_dump_parse_tree (gfc_current_ns, stdout);
|
||||
|
||||
gfc_get_errors (NULL, &errors);
|
||||
|
@ -4431,7 +4431,7 @@ prog_units:
|
|||
|
||||
/* Do the parse tree dump. */
|
||||
gfc_current_ns
|
||||
= gfc_option.dump_parse_tree ? gfc_global_ns_list : NULL;
|
||||
= gfc_option.dump_fortran_original ? gfc_global_ns_list : NULL;
|
||||
|
||||
for (; gfc_current_ns; gfc_current_ns = gfc_current_ns->sibling)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue