* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
@ 2012-09-24 10:47 ` manu at gcc dot gnu.org
2014-10-07 16:14 ` manu at gcc dot gnu.org
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: manu at gcc dot gnu.org @ 2012-09-24 10:47 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-09-24
Blocks| |44054
Ever Confirmed|0 |1
--- Comment #1 from Manuel López-Ibáñez <manu at gcc dot gnu.org> 2012-09-24 10:46:41 UTC ---
This is also a pre-requisite for using LangEnabledBy to encode options
dependencies in fortran/lang.opt file.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
2012-09-24 10:47 ` [Bug fortran/54687] " manu at gcc dot gnu.org
@ 2014-10-07 16:14 ` manu at gcc dot gnu.org
2014-12-11 16:25 ` burnus at gcc dot gnu.org
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: manu at gcc dot gnu.org @ 2014-10-07 16:14 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
--- Comment #3 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
Author: manu
Date: Tue Oct 7 16:13:22 2014
New Revision: 215974
URL: https://gcc.gnu.org/viewcvs?rev=215974&root=gcc&view=rev
Log:
gcc/fortran/ChangeLog:
2014-10-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR fortran/44054
PR fortran/54687
* gfortran.h (gfc_warning_cmdline): Add overload that takes an
option.
(gfc_error_cmdline): Declare.
* error.c (gfc_warning_cmdline): New overload that takes an option.
(gfc_error_cmdline): New.
* lang.opt (Wmissing-include-dirs): New.
* scanner.c (add_path_to_list): Use the new functions.
(load_file): Likewise.
* options.c (gfc_init_options): Wmissing-include-dirs is enabled
by default in Fortran.
(gfc_handle_option): Accept automatically handled options.
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/error.c
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/lang.opt
trunk/gcc/fortran/options.c
trunk/gcc/fortran/scanner.c
>From gcc-bugs-return-463453-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Oct 07 16:14:04 2014
Return-Path: <gcc-bugs-return-463453-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 25945 invoked by alias); 7 Oct 2014 16:14:03 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 25804 invoked by uid 55); 7 Oct 2014 16:13:59 -0000
From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/44054] Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color
Date: Tue, 07 Oct 2014 16:14:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 4.6.0
X-Bugzilla-Keywords: diagnostic
X-Bugzilla-Severity: normal
X-Bugzilla-Who: manu at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-44054-4-pbJr8kO4XO@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-44054-4@http.gcc.gnu.org/bugzilla/>
References: <bug-44054-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-10/txt/msg00474.txt.bz2
Content-length: 1123
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44054
--- Comment #16 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
Author: manu
Date: Tue Oct 7 16:13:22 2014
New Revision: 215974
URL: https://gcc.gnu.org/viewcvs?rev=215974&root=gcc&view=rev
Log:
gcc/fortran/ChangeLog:
2014-10-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR fortran/44054
PR fortran/54687
* gfortran.h (gfc_warning_cmdline): Add overload that takes an
option.
(gfc_error_cmdline): Declare.
* error.c (gfc_warning_cmdline): New overload that takes an option.
(gfc_error_cmdline): New.
* lang.opt (Wmissing-include-dirs): New.
* scanner.c (add_path_to_list): Use the new functions.
(load_file): Likewise.
* options.c (gfc_init_options): Wmissing-include-dirs is enabled
by default in Fortran.
(gfc_handle_option): Accept automatically handled options.
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/error.c
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/lang.opt
trunk/gcc/fortran/options.c
trunk/gcc/fortran/scanner.c
>From gcc-bugs-return-463455-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Oct 07 16:18:36 2014
Return-Path: <gcc-bugs-return-463455-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 30241 invoked by alias); 7 Oct 2014 16:18:35 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 30203 invoked by uid 55); 7 Oct 2014 16:18:31 -0000
From: "yroux at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug bootstrap/61565] [4.10 Regression] ICE building libjava/interpret.cc
Date: Tue, 07 Oct 2014 16:18:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: bootstrap
X-Bugzilla-Version: unknown
X-Bugzilla-Keywords: EH, ice-on-valid-code
X-Bugzilla-Severity: normal
X-Bugzilla-Who: yroux at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: rth at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-61565-4-84hPc6C9pJ@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-61565-4@http.gcc.gnu.org/bugzilla/>
References: <bug-61565-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-10/txt/msg00476.txt.bz2
Content-length: 964
https://gcc.gnu.org/bugzilla/show_bug.cgi?ida565
--- Comment #6 from Yvan Roux <yroux at gcc dot gnu.org> ---
Author: yroux
Date: Tue Oct 7 16:17:57 2014
New Revision: 215975
URL: https://gcc.gnu.org/viewcvs?rev!5975&root=gcc&view=rev
Log:
2014-10-07 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
Backport from trunk r209643, r211881.
2014-06-22 Richard Henderson <rth@redhat.com>
PR target/61565
* compare-elim.c (struct comparison): Add eh_note.
(find_comparison_dom_walker::before_dom_children): Don't eliminate
a redundant comparison in a different EH region. Purge EH edges if
necessary.
2014-04-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/aarch64/aarch64.c (TARGET_FLAGS_REGNUM): Define.
Modified:
branches/linaro/gcc-4_9-branch/gcc/ChangeLog.linaro
branches/linaro/gcc-4_9-branch/gcc/compare-elim.c
branches/linaro/gcc-4_9-branch/gcc/config/aarch64/aarch64.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
2012-09-24 10:47 ` [Bug fortran/54687] " manu at gcc dot gnu.org
2014-10-07 16:14 ` manu at gcc dot gnu.org
@ 2014-12-11 16:25 ` burnus at gcc dot gnu.org
2014-12-11 16:58 ` manu at gcc dot gnu.org
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: burnus at gcc dot gnu.org @ 2014-12-11 16:25 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |burnus at gcc dot gnu.org
--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> ---
At least all warnings should be handled now (work done as part of PR44054 and
in the separate but related commit r218188).
Is there still something missing?
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
` (2 preceding siblings ...)
2014-12-11 16:25 ` burnus at gcc dot gnu.org
@ 2014-12-11 16:58 ` manu at gcc dot gnu.org
2014-12-16 19:30 ` burnus at gcc dot gnu.org
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: manu at gcc dot gnu.org @ 2014-12-11 16:58 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Blocks|44054 |
--- Comment #5 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
(In reply to Tobias Burnus from comment #4)
> At least all warnings should be handled now (work done as part of PR44054
> and in the separate but related commit r218188).
>
> Is there still something missing?
Note that the options machinery has ways to encode String->Enum options, so
things like gfc_handle_coarray_option and the handling of OPT_finit_real_ are
redundant (and others).
(Personally, I think the way to describe such options in the .opt file is a bit
ugly, but incremental improvements like your '||' patch are possible)
The options machinery can also handle Alias options transparently such as
OPT_fdump_fortran_original and OPT_fdump_parse_tree.
Also, my intuition tells me that any explicit handling of optimization options
that does not use the common machinery such as:
if (gfc_option.flag_protect_parens == -1)
gfc_option.flag_protect_parens = !optimize_fast;
if (gfc_option.flag_stack_arrays == -1)
gfc_option.flag_stack_arrays = optimize_fast;
will at some moment, if not already, miss any automatic merging of optimization
options for LTO or automatic setting via #pragma and attribute "optimize"
https://gcc.gnu.org/onlinedocs/gcc/Function-Specific-Option-Pragmas.html (see
also generated file options-save.c)
In the future, it would be ideal to have separate option structs for
FE-specific options, such that not all FEs have to see all options from all
other FEs. Although moving options from gfc_option_t to the globally generated
option struct may seem a step backward in that respect, it is actually a step
forward, since those separated structs should be generated directly from the
*.opt files.
Finally, most, if not all, of gfc_option_t and gfc_handle_option seems
redundant given the features of opt files (and the possibility of improving the
generators). There is the chance to remove a lot of code from the Fortran FE,
which should be always a good thing, no?
But ultimately, this is up to the Fortran devs. This doesn't block PR44054
anymore since all the warning flags have been moved.
>From gcc-bugs-return-470312-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Dec 11 17:14:26 2014
Return-Path: <gcc-bugs-return-470312-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 7727 invoked by alias); 11 Dec 2014 17:14:25 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 7667 invoked by uid 48); 11 Dec 2014 17:14:19 -0000
From: "burnus at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/45179] Support UTF-8 (and other encodings) in the source file (.f90) for CHARACTER(kind=4)
Date: Thu, 11 Dec 2014 17:14:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 4.6.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: burnus at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: dependson
Message-ID: <bug-45179-4-3fpXx6zwvo@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-45179-4@http.gcc.gnu.org/bugzilla/>
References: <bug-45179-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-12/txt/msg01319.txt.bz2
Content-length: 537
https://gcc.gnu.org/bugzilla/show_bug.cgi?idE179
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Depends on| |28662
--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> ---
I think a reasonable implementation would be to let libcpp do most of the work;
in that case, it requires that libcpp is used for reading the source file. Cf.
PR28662 comment 10
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
` (3 preceding siblings ...)
2014-12-11 16:58 ` manu at gcc dot gnu.org
@ 2014-12-16 19:30 ` burnus at gcc dot gnu.org
2014-12-16 20:45 ` burnus at gcc dot gnu.org
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: burnus at gcc dot gnu.org @ 2014-12-16 19:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
--- Comment #6 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Missed the PR number for the commit r218790:
2014-12-16 Tobias Burnus <burnus@net-b.de>
PR fortran/54687
* lang.opt (fsecond-underscore, frecord-marker=8, frecord-marker=4,
frealloc-lhs, freal-8-real-16, freal-8-real-10, freal-8-real-4,
freal-4-real-16, freal-4-real-10, freal-4-real-8, fprotect-parens,
fstack-arrays, fmax-stack-var-size=, fmax-subrecord-length=,
ffrontend-optimize, ffree-line-length-, ffixed-line-length-,
finteger-4-integer-8, fdefault-real-8, fdefault-integer-8,
fdefault-double-8): Add Var() and Init().
* gfortran.h (gfc_option_t): Remove moved flags.
* options.c (gfc_init_options, gfc_handle_option): Ditto.
(gfc_post_options): Update for name change.
* decl.c (gfc_match_old_kind_spec, gfc_match_kind_spec): Handle
flag-name change.
* frontend-passes.c (gfc_run_passes): Ditto.
* module.c (use_iso_fortran_env_module): Ditto.
* primary.c (match_integer_constant, match_real_constant): Ditto.
* resolve.c (resolve_ordinary_assign): Ditto.
* scanner.c (gfc_next_char_literal, load_line): Ditto.
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_conv_resolve_dependencies, gfc_trans_auto_array_allocation,
gfc_conv_ss_startstride): Ditto.
* trans-common.c (gfc_sym_mangled_common_id): Ditto.
* trans-decl.c (gfc_sym_mangled_function_id,
create_main_function): Ditto.
* trans-expr.c (gfc_conv_expr_op, gfc_conv_procedure_call,
arrayfunc_assign_needs_temporary, gfc_trans_arrayfunc_assign,
gfc_trans_assignment_1): Ditto.
* trans-stmt.c (gfc_trans_allocate): Ditto.
* trans-types.c (gfc_init_kinds): Ditto.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
` (4 preceding siblings ...)
2014-12-16 19:30 ` burnus at gcc dot gnu.org
@ 2014-12-16 20:45 ` burnus at gcc dot gnu.org
2014-12-16 22:25 ` burnus at gcc dot gnu.org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: burnus at gcc dot gnu.org @ 2014-12-16 20:45 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
--- Comment #7 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Author: burnus
Date: Tue Dec 16 20:44:45 2014
New Revision: 218792
URL: https://gcc.gnu.org/viewcvs?rev=218792&root=gcc&view=rev
Log:
2014-12-16 Tobias Burnus <burnus@net-b.de>
PR fortran/54687
* gfortran.h (gfc_option_t): Remove flags which now
have a Var().
* lang.opt (flag-aggressive_function_elimination,
flag-align_commons, flag-all_intrinsics,
flag-allow_leading_underscore, flag-automatic, flag-backslash,
flag-backtrace, flag-blas_matmul_limit, flag-cray_pointer,
flag-dollar_ok, flag-dump_fortran_original,
flag-dump_fortran_optimized, flag-external_blas, flag-f2c,
flag-implicit_none, flag-max_array_constructor,
flag-module_private, flag-pack_derived, flag-range_check,
flag-recursive, flag-repack_arrays, flag-sign_zero,
flag-underscoring): Add Var() and, where applicable, Enum().
* options.c (gfc_init_options, gfc_post_options,
gfc_handle_option): Update for *.opt changes.
* arith.c: Update for flag-variable name changes.
* array.c: Ditto.
* cpp.c: Ditto.
* decl.c: Ditto.
* expr.c: Ditto.
* f95-lang.c: Ditto.
* frontend-passes.c: Ditto.
* intrinsic.c: Ditto.
* io.c: Ditto.
* match.c: Ditto.
* module.c: Ditto.
* parse.c: Ditto.
* primary.c: Ditto.
* resolve.c: Ditto.
* scanner.c: Ditto.
* simplify.c: Ditto.
* symbol.c: Ditto.
* trans-array.c: Ditto.
* trans-common.c: Ditto.
* trans-decl.c: Ditto.
* trans-expr.c: Ditto.
* trans-intrinsic.c: Ditto.
* trans-openmp.c: Ditto.
* trans-types.c: Ditto.
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/arith.c
trunk/gcc/fortran/array.c
trunk/gcc/fortran/cpp.c
trunk/gcc/fortran/decl.c
trunk/gcc/fortran/expr.c
trunk/gcc/fortran/f95-lang.c
trunk/gcc/fortran/frontend-passes.c
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/intrinsic.c
trunk/gcc/fortran/io.c
trunk/gcc/fortran/lang.opt
trunk/gcc/fortran/match.c
trunk/gcc/fortran/module.c
trunk/gcc/fortran/options.c
trunk/gcc/fortran/parse.c
trunk/gcc/fortran/primary.c
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/scanner.c
trunk/gcc/fortran/simplify.c
trunk/gcc/fortran/symbol.c
trunk/gcc/fortran/trans-array.c
trunk/gcc/fortran/trans-common.c
trunk/gcc/fortran/trans-decl.c
trunk/gcc/fortran/trans-expr.c
trunk/gcc/fortran/trans-intrinsic.c
trunk/gcc/fortran/trans-openmp.c
trunk/gcc/fortran/trans-types.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
` (5 preceding siblings ...)
2014-12-16 20:45 ` burnus at gcc dot gnu.org
@ 2014-12-16 22:25 ` burnus at gcc dot gnu.org
2014-12-17 6:30 ` burnus at gcc dot gnu.org
2020-04-12 16:32 ` dominiq at lps dot ens.fr
8 siblings, 0 replies; 10+ messages in thread
From: burnus at gcc dot gnu.org @ 2014-12-16 22:25 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
--- Comment #8 from Tobias Burnus <burnus at gcc dot gnu.org> ---
(In reply to Manuel López-Ibáñez from comment #5)
> > Is there still something missing?
> Note that the options machinery has ways to encode String->Enum options, so
> things like gfc_handle_coarray_option and the handling of OPT_finit_real_
> are redundant (and others).
Pending patch (awaiting ME review):
https://gcc.gnu.org/ml/gcc-patches/2014-12/msg01377.html
> Also, my intuition tells me that any explicit handling of optimization
> options that does not use the common machinery such as:
> if (gfc_option.flag_protect_parens == -1)
> if (gfc_option.flag_stack_arrays == -1)
Those should be fine as they are completely handled in the FE: The
protect_parens translates into PAREN_EXPR and stack_arrays is also a choice
done by the FE.
> In the future, it would be ideal to have separate option structs for
> FE-specific options, such that not all FEs have to see all options from all
> other FEs. Although moving options from gfc_option_t to the globally
> generated option struct may seem a step backward in that respect, it is
> actually a step forward, since those separated structs should be generated
> directly from the *.opt files.
I concur. I think it also would be useful to support combined options like
Fortran's -ffpe-trap= and -fcheck= or common's -fsanitize=.
>From gcc-bugs-return-470937-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 16 22:40:32 2014
Return-Path: <gcc-bugs-return-470937-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 439 invoked by alias); 16 Dec 2014 22:40:31 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 376 invoked by uid 48); 16 Dec 2014 22:40:25 -0000
From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/54687] Use gcc option machinery for gfortran
Date: Tue, 16 Dec 2014 22:40:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 4.8.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: enhancement
X-Bugzilla-Who: manu at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-54687-4-s01MSy9CGf@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-54687-4@http.gcc.gnu.org/bugzilla/>
References: <bug-54687-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-12/txt/msg01944.txt.bz2
Content-length: 517
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
--- Comment #9 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
(In reply to Tobias Burnus from comment #8)
> I concur. I think it also would be useful to support combined options like
> Fortran's -ffpe-trap= and -fcheck= or common's -fsanitize=.
Total agreement!
In my wildest dreams most of invoke.texi would be auto-generated from the opt
files.
Please could you open PRs for such missing features of the common machinery?
>From gcc-bugs-return-470938-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 16 22:57:24 2014
Return-Path: <gcc-bugs-return-470938-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 16899 invoked by alias); 16 Dec 2014 22:57:23 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 16831 invoked by uid 48); 16 Dec 2014 22:57:18 -0000
From: "burnus at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug middle-end/64334] New: Common .opt handling: Support flags which take a list of values (-fopt=a,b,c ...)
Date: Tue, 16 Dec 2014 22:57:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: middle-end
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords: diagnostic
X-Bugzilla-Severity: normal
X-Bugzilla-Who: burnus at gcc dot gnu.org
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status keywords bug_severity priority component assigned_to reporter cc blocked
Message-ID: <bug-64334-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-12/txt/msg01945.txt.bz2
Content-length: 1102
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64334
Bug ID: 64334
Summary: Common .opt handling: Support flags which take a list
of values (-fopt=a,b,c ...)
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Keywords: diagnostic
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: burnus at gcc dot gnu.org
CC: manu at gcc dot gnu.org
Blocks: 54687
Split off from PR54687.
There are some options which take a list of values – and applies bitwise OR to
the choice.
Example:
fsanitize=
which takes "address" (SANITIZE_ADDRESS | SANITIZE_USER_ADDRESS),
"kernel-address" (SANITIZE_ADDRESS | SANITIZE_KERNEL_ADDRESS), "thread"
(SANITIZE_THREAD) etc. as argument.
Similarly, in Fortran: -ffpe-trap and -ffpe-summary which take "invalid",
"denormal" etc. or -fcheck= with "all", "bounds", ...
It would be useful it one could extend the current Enum scheme to support this.
>From gcc-bugs-return-470939-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Dec 16 23:04:58 2014
Return-Path: <gcc-bugs-return-470939-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 23665 invoked by alias); 16 Dec 2014 23:04:58 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 23606 invoked by uid 48); 16 Dec 2014 23:04:53 -0000
From: "tavianator at gmail dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/64308] Missed optimization: 64-bit divide used when 32-bit divide would work
Date: Tue, 16 Dec 2014 23:04:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: tree-optimization
X-Bugzilla-Version: 4.9.2
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: tavianator at gmail dot com
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-64308-4-cN0JDWcOGN@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64308-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64308-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-12/txt/msg01946.txt.bz2
Content-length: 961
https://gcc.gnu.org/bugzilla/show_bug.cgi?idd308
--- Comment #3 from Tavian Barnes <tavianator at gmail dot com> ---
@Richard Biener: Yes the range for _16 could be [0, 4294967294]. Why can't VRP
can't assume division by zero doesn't occur? If it can then it could say
anything mod [a, b] fits in [0, b - 1].
That's a reasonable improvement by itself but it's not enough to optimize this
PR, because to use divl for (ret * b % m), you need (ret * b / m) to fit in [0,
4294967295] as well. And to know that that, as Marc Glisse suggests, you'd
need symbolic ranges.
@Marc Glisse: Is there currently no support at all for symbolic ranges? If you
can infer that b < m is an invariant then that's all you need. Formally it's
something like this:
If x, y, and z are 32-bit unsigned integers, and x <= z || y <= z, then
(uint64_t)x * (uint64_t)y % z
can be computed with mull and divl because x * y / z is always <= max(x, y)
which fits in 32 bits.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
` (6 preceding siblings ...)
2014-12-16 22:25 ` burnus at gcc dot gnu.org
@ 2014-12-17 6:30 ` burnus at gcc dot gnu.org
2020-04-12 16:32 ` dominiq at lps dot ens.fr
8 siblings, 0 replies; 10+ messages in thread
From: burnus at gcc dot gnu.org @ 2014-12-17 6:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
--- Comment #10 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Author: burnus
Date: Wed Dec 17 06:29:30 2014
New Revision: 218808
URL: https://gcc.gnu.org/viewcvs?rev=218808&root=gcc&view=rev
Log:
2014-12-17 Tobias Burnus <burnus@net-b.de>
PR fortran/54687
gcc/
* flag-types.h (gfc_init_local_real, gfc_fcoarray,
gfc_convert): New enums; moved from fortran/.
gcc/fortran/
* gfortran.h (gfc_option_t): Remove flags which now
have a Var().
(init_local_real, gfc_fcoarray): Moved to ../flag-types.h.
* libgfortran.h (unit_convert): Add comment.
* lang.opt (flag-convert, flag-init_real, flag-coarray):
Add Var() and Enum().
* options.c (gfc_handle_coarray_option): Remove.
(gfc_init_options, gfc_post_options, gfc_handle_option):
Update for *.opt changes.
* array.c: Update for flag-variable name changes.
* check.c: Ditto.
* match.c: Ditto.
* resolve.c: Ditto.
* simplify.c: Ditto.
* trans-array.c: Ditto.
* trans-decl.c: Ditto.
* trans-expr.c: Ditto.
* trans-intrinsic.c: Ditto.
* trans-stmt.c: Ditto.
* trans-types.c: Ditto.
* trans.c: Ditto.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/flag-types.h
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/array.c
trunk/gcc/fortran/check.c
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/lang.opt
trunk/gcc/fortran/libgfortran.h
trunk/gcc/fortran/match.c
trunk/gcc/fortran/options.c
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/simplify.c
trunk/gcc/fortran/trans-array.c
trunk/gcc/fortran/trans-decl.c
trunk/gcc/fortran/trans-expr.c
trunk/gcc/fortran/trans-intrinsic.c
trunk/gcc/fortran/trans-stmt.c
trunk/gcc/fortran/trans-types.c
trunk/gcc/fortran/trans.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug fortran/54687] Use gcc option machinery for gfortran
2012-09-24 5:32 [Bug fortran/54687] New: Use gcc option machinery for gfortran tkoenig at gcc dot gnu.org
` (7 preceding siblings ...)
2014-12-17 6:30 ` burnus at gcc dot gnu.org
@ 2020-04-12 16:32 ` dominiq at lps dot ens.fr
8 siblings, 0 replies; 10+ messages in thread
From: dominiq at lps dot ens.fr @ 2020-04-12 16:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54687
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |NEW
Assignee|dominiq at lps dot ens.fr |unassigned at gcc dot gnu.org
--- Comment #19 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
Unassigning myself.
^ permalink raw reply [flat|nested] 10+ messages in thread