This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 3/3] Introduce IntegerRange for options (PR driver/79659).


Hi Martin,

> On 06/28/2017 06:52 AM, Jeff Law wrote:
>> On 03/15/2017 03:58 AM, Martin Liška wrote:
>>> Huh, I forgot to attach the patch.
>>>
>>> Martin
>>>
>>> 0001-Introduce-IntegerRange-for-options-PR-driver-79659.patch
>>>
>>>
>>> From bb89456e6cecfa9497cf8e265d2083e762d5bc3e Mon Sep 17 00:00:00 2001
>>> From: marxin <mliska@suse.cz>
>>> Date: Mon, 27 Feb 2017 14:07:03 +0100
>>> Subject: [PATCH] Introduce IntegerRange for options (PR driver/79659).
>>>
>>> gcc/ChangeLog:
>>>
>>> 2017-02-28  Martin Liska  <mliska@suse.cz>
>>>
>>> 	PR driver/79659
>>> 	* common.opt: Add IntegerRange to various options.
>>> 	* opt-functions.awk (integer_range_info): New function.
>>> 	* optc-gen.awk: Add integer_range_info to cl_options struct.
>>> 	* opts-common.c (decode_cmdline_option): Handle
>>> 	CL_ERR_INT_RANGE_ARG.
>>> 	(cmdline_handle_error): Likewise.
>>> 	* opts.c (print_filtered_help): Show valid interval in
>>> 	when --help is provided.
>>> 	* opts.h (struct cl_option): Add range_min and range_max fields.
>>> 	* config/i386/i386.opt: Add IntegerRange for -mbranch-cost.
>>>
>>> gcc/c-family/ChangeLog:
>>>
>>> 2017-02-28  Martin Liska  <mliska@suse.cz>
>>>
>>> 	PR driver/79659
>>> 	* c.opt: Add IntegerRange to various options.
>>>
>>> gcc/testsuite/ChangeLog:
>>>
>>> 2017-02-28  Martin Liska  <mliska@suse.cz>
>>>
>>> 	PR driver/79659
>>> 	* g++.dg/opt/pr79659.C: New test.
>> Presumably this never fully moved forward because it wasn't a regression?
>> 
>> This looks quite reasonable to me.  I'm not sure of the state of the
>> prereqs and you may want/need to add IntegerRange checks on newly added
>> options since this was first submitted.
>> 
>> If the prereqs are ack'd, then as far as I'm concerned this is good to
>> go and you're free to add any new IntegerRange checks you deem
>> necessary/desirable.
>> 
>> jeff
>> 
>
> Thank you Jeff for looking at the patch. I've just re-tested the patch and
> I'm going to install it.

seems you didn't test thoroughly enough: your patch introduced a couple
of testsuite regressions on i386-pc-solaris2.12 and x86_64-pc-linux-gnu
(any x86 target, in fact):

+FAIL: gcc.dg/uninit-pred-7_d.c (test for excess errors)
+FAIL: gcc.dg/uninit-pred-7_d.c warning (test for warnings, line 48)
+FAIL: gcc.dg/uninit-pred-8_d.c (test for excess errors)
+FAIL: gcc.dg/uninit-pred-8_d.c warning (test for warnings, line 42)

+FAIL: gcc.target/i386/branch-cost1.c (test for excess errors)
+UNRESOLVED: gcc.target/i386/branch-cost1.c scan-tree-dump-not gimple " & "
+UNRESOLVED: gcc.target/i386/branch-cost1.c scan-tree-dump-times gimple "if " 2
+FAIL: gcc.target/i386/branch-cost4.c (test for excess errors)
+UNRESOLVED: gcc.target/i386/branch-cost4.c scan-tree-dump-not gimple " & "
+UNRESOLVED: gcc.target/i386/branch-cost4.c scan-tree-dump-times gimple "if " 2

In all cases, you get

Excess errors:
xgcc: error: argument to '-mbranch-cost=' is not between 1 and 5

since the tests are compiled with -mbranch-cost=0.

Please fix.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]