Bug 189376
Summary: | Regression test failed on network address related functions | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Anton Guda <atu> | ||||
Component: | gcc | Assignee: | Jakub Jelinek <jakub> | ||||
Status: | CLOSED UPSTREAM | QA Contact: | |||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | rawhide | CC: | tgl | ||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | i586 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2006-04-24 15:48:14 UTC | Type: | --- | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Description
Anton Guda
2006-04-19 15:55:02 UTC
Created attachment 127989 [details]
regression diff file
This looks to me like it could be a compiler bug, seeing that the same source code passes this test fine on many other platforms. Did you update gcc since your last successful build? Does the failure go away if you change the --target spec? The code in question is network_network() in src/backend/utils/adt/network.c if you want to take a closer look. I'm betting that gcc is misoptimizing the shift-and-mask operations. Yes, gcc was updated every time as it was updated in ``development'' Fedora branch. Tested arch: i566, i686. I will try to rewrite some code to find misoptimization. And will update gcc once again. It's really a gcc bug. The miscompilated code in src/backend/utils/adt/network.c: network_network: byte = 0; while (bits) { ... } If bits == 25, the loop running 3 times, not 4, If loop header rewrited as while(bits>0) all tests passed. gcc-4.1.0-9 Reclassifying as gcc bug. Tracking thsi upstream. |