[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-10-21 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Mon Oct 21 11:36:36 2019
New Revision: 277244

URL: https://gcc.gnu.org/viewcvs?rev=277244=gcc=rev
Log:
Backported from mainline
2019-09-02  Jakub Jelinek  

PR go/91617
* fold-const.c (range_check_type): For enumeral and boolean
type, pass 1 to type_for_size langhook instead of
TYPE_UNSIGNED (etype).  Return unsigned_type_for result whenever
etype isn't TYPE_UNSIGNED INTEGER_TYPE.
(build_range_check): Don't call unsigned_type_for for pointer types.
* match.pd (X / C1 op C2): Don't call unsigned_type_for on
range_check_type result.

2019-08-29  Jakub Jelinek  

PR tree-optimization/91351
* tree-cfg.c (generate_range_test): Use range_check_type instead of
unsigned_type_for.
* tree-cfgcleanup.c (convert_single_case_switch): Punt if
range_check_type returns NULL.
* tree-switch-conversion.c (switch_conversion::build_one_array):
Use range_check_type instead of unsigned_type_for, don't perform
linear opt if it returns NULL.
(bit_test_cluster::find_bit_tests): Formatting fix.
(bit_test_cluster::emit): Use range_check_type instead of
unsigned_type_for.
(switch_decision_tree::try_switch_expansion): Punt if range_check_type
returns NULL.

* g++.dg/opt/pr91351.C: New test.

Added:
branches/gcc-9-branch/gcc/testsuite/g++.dg/opt/pr91351.C
Modified:
branches/gcc-9-branch/gcc/ChangeLog
branches/gcc-9-branch/gcc/fold-const.c
branches/gcc-9-branch/gcc/match.pd
branches/gcc-9-branch/gcc/testsuite/ChangeLog
branches/gcc-9-branch/gcc/tree-cfg.c
branches/gcc-9-branch/gcc/tree-cfgcleanup.c
branches/gcc-9-branch/gcc/tree-switch-conversion.c

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-09-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

Jakub Jelinek  changed:

   What|Removed |Added

 CC||marxin at gcc dot gnu.org

--- Comment #6 from Jakub Jelinek  ---
*** Bug 91632 has been marked as a duplicate of this bug. ***

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-09-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

Jakub Jelinek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED
   Assignee|ian at airs dot com|jakub at gcc dot gnu.org

--- Comment #5 from Jakub Jelinek  ---
Should be fixed now.

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-09-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Mon Sep  2 08:38:13 2019
New Revision: 275299

URL: https://gcc.gnu.org/viewcvs?rev=275299=gcc=rev
Log:
PR go/91617
* fold-const.c (range_check_type): For enumeral and boolean
type, pass 1 to type_for_size langhook instead of
TYPE_UNSIGNED (etype).  Return unsigned_type_for result whenever
etype isn't TYPE_UNSIGNED INTEGER_TYPE.
(build_range_check): Don't call unsigned_type_for for pointer types.
* match.pd (X / C1 op C2): Don't call unsigned_type_for on
range_check_type result.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/fold-const.c
trunk/gcc/match.pd

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-09-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |10.0

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-08-31 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

--- Comment #3 from Ian Lance Taylor  ---
To see how to run libgo tests, see the Debugging section in libgo/README.

The problem you are having with runtime.osinit looks related to a recent libgo
patch (https://gcc.gnu.org/ml/gcc-patches/2019-08/msg01916.html).  It looks
like you somehow linked against an older version of libgo.

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-08-31 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

--- Comment #2 from Jakub Jelinek  ---
Or something is wrong in the go FE langhooks.
Anyway, I have no idea how to debug this, the libgo libgo.log doesn't contain
anything that would make it clear how to run the tests and even looking at the
simpler gcc/testsuite/go/go.log, there is command how to compile/link the test,
but not how to run it.
LD_LIBRARY_PATH=/home/jakub/src/gcc/obj52/x86_64-pc-linux-gnu/./libgo/.libs
./select5.exe
./select5.exe: symbol lookup error: ./select5.exe: undefined symbol:
runtime.osinit
LD_LIBRARY_PATH=/home/jakub/src/gcc/obj54/x86_64-pc-linux-gnu/./libgo/.libs
./select5.exe
panic: "recv": template: recv:1: unexpected 


goroutine 1 [running]:
main.parse
/home/jakub/src/gcc/gcc/testsuite/go.test/test/chan/select5.go:142

[Bug go/91617] [10 regression] Many go test case failures after r275026

2019-08-30 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91617

--- Comment #1 from Ian Lance Taylor  ---
The cited revision was not to libgo, so my assumption is that there was
something wrong with it and there is nothing to change in the Go frontend.  Let
me know if I'm mistaken.

This was also filed as https://golang.org/issue/33958.