public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table
@ 2010-08-26 18:17 ro at gcc dot gnu dot org
2010-08-27 16:00 ` [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS " ebotcazou at gcc dot gnu dot org
` (10 more replies)
0 siblings, 11 replies; 12+ messages in thread
From: ro at gcc dot gnu dot org @ 2010-08-26 18:17 UTC (permalink / raw)
To: gcc-bugs
Between 20100709 and 20100823, IRIX6.5 bootstrap with Ada included broke:
$ /vol/gcc/obj/regression/trunk/6.5-gcc/build/./prev-gcc/xgcc
-B/vol/gcc/obj/regression/trunk/6.5-gcc/build/./prev-gcc/
-B/vol/gcc/mips-sgi-irix6.5/bin/ -B/vol/gcc/mips-sgi-irix6.5/bin/
-B/vol/gcc/mips-sgi-irix6.5/lib/ -isystem /vol/gcc/mips-sgi-irix6.5/include
-isystem /vol/gcc/mips-sgi-irix6.5/sys-include -c -g -O2 -gnatpg -gnata
-nostdinc -I- -I. -Iada -I/vol/gcc/src/hg/trunk/local/gcc/ada
-I/vol/gcc/src/hg/trunk/local/gcc/ada/gcc-interface
/vol/gcc/src/hg/trunk/local/gcc/ada/butil.adb -o ada/butil.o
+===========================GNAT BUG DETECTED==============================+
| 4.6.0 20100823 (experimental) (mips-sgi-irix6.5) Program_Error SIGBUS |
| Error detected at s-rident.ads:339:27 |
| Please submit a bug report; see http://gcc.gnu.org/bugs.html. |
| Use a subject line meaningful to you and us to track the bug. |
| Include the entire contents of this bug box in the report. |
| Include the exact gcc or gnatmake command that you entered. |
| Also include sources listed below in gnatchop format |
| (concatenated together with no headers between files). |
+==========================================================================+
Please include these source files with error report
Note that list may not be accurate in some cases,
so please double check that the problem can still
be reproduced with the set of files listed.
Consider also -gnatd.n switch (see debug.adb).
/vol/gcc/src/hg/trunk/local/gcc/ada/system.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/butil.adb
/vol/gcc/src/hg/trunk/local/gcc/ada/butil.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/namet.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/alloc.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/table.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/types.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/unchconv.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/unchdeal.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/hostparm.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/output.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/s-os_lib.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/s-string.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/ada.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/a-uncdea.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/targparm.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/rident.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/s-rident.ads
/vol/gcc/src/hg/t[4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in
sem_aggr.sort_case_tablerunk/local/gcc/ada/s-exctab.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/s-stalib.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/a-unccon.ads
/vol/gcc/src/hg/trunk/local/gcc/ada/s-unstyp.ads
compilation abandoned
make[3]: *** [ada/butil.o] Error 1
Running gnat1 under gdb, I find:
(gdb) run -I- -I. -Iada -I/vol/gcc/src/hg/trunk/local/gcc/ada
-I/vol/gcc/src/hg/trunk/local/gcc/ada/gcc-interface -quiet -nostdinc -dumpbase
butil.adb -auxbase-strip ada/butil.o -O2 -g -gnatpg -gnata -mno-synci -mabi=n32
-gnatO ada/butil.o /vol/gcc/src/hg/trunk/local/gcc/ada/butil.adb
Starting program: /var/gcc/regression/trunk/6.5-gcc/build/gcc/gnat1 -I- -I.
-Iada -I/vol/gcc/src/hg/trunk/local/gcc/ada
-I/vol/gcc/src/hg/trunk/local/gcc/ada/gcc-interface -quiet -nostdinc -dumpbase
butil.adb -auxbase-strip ada/butil.o -O2 -g -gnatpg -gnata -mno-synci -mabi=n32
-gnatO ada/butil.o /vol/gcc/src/hg/trunk/local/gcc/ada/butil.adb
Program received signal SIGSEGV, Segmentation fault.
0x10399108 in sem_aggr.sort_case_table (component_typ=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:3978
Current language: auto
The current source language is "auto; currently ada".
(gdb) (gdb) where
#0 0x10399108 in sem_aggr.sort_case_table (
component_typ=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:3978
#1 sem_aggr.resolve_array_aggregate (component_typ=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:1815
#2 0x1039a24c in sem_aggr.resolve_aggregate (n=17450, typ=17262)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:1046
#3 0x1048db30 in sem_res.resolve ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_res.adb:2574
#4 0x10395918 in sem_aggr.resolve_record_aggregate.resolve_aggr_expr (
expr=17450, component=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:2959
#5 0x10397328 in sem_aggr.resolve_record_aggregate (typ=17414)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:3769
#6 0x1039a458 in sem_aggr.resolve_aggregate (n=17447, typ=17414)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:937
#7 0x1048db30 in sem_res.resolve ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_res.adb:2574
#8 0x10397db4 in sem_aggr.resolve_array_aggregate.resolve_aggr_expr (
expr=17447, single_elmt=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:1472
#9 0x10398e08 in sem_aggr.resolve_array_aggregate (
component_typ=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:1766
#10 0x1039a24c in sem_aggr.resolve_aggregate (n=17444, typ=17772)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_aggr.adb:1046
#11 0x1048db30 in sem_res.resolve ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_res.adb:2574
#12 0x1040b3d4 in sem_ch3.analyze_object_declaration ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch3.adb:2707
#13 0x10391030 in sem.analyze (n=17438)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:327
#14 sem.analyze (n=17438) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#15 0x103ee258 in sem_ch3.analyze_declarations (l=-99998861)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch3.adb:2030
#16 0x104398e8 in sem_ch7.analyze_package_specification ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch7.adb:1076
#17 0x103915c0 in sem.analyze (n=16709)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:435
#18 sem.analyze (n=16709) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#19 0x103da6b4 in sem_ch12.analyze_generic_package_declaration (n=10058)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch12.adb:2724
#20 0x103911ec in sem.analyze (n=10058)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:267
#21 sem.analyze (n=10058) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#22 0x103bd4a8 in sem_ch10.analyze_compilation_unit (n=10049)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:901
#23 0x103914d0 in sem.analyze (n=10049)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:174
#24 sem.analyze (n=10049) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#25 0x10391718 in sem.semantics.do_analyze ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1375
#26 0x103930ec in sem.semantics ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1461
#27 0x103b9560 in sem_ch10.analyze_with_clause (n=10035)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:2383
#28 0x10390af4 in sem.analyze (n=10035)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:583
#29 sem.analyze (n=10035) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#30 0x103b5c58 in sem_ch10.analyze_context (n=10033)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:1349
#31 0x103bd424 in sem_ch10.analyze_compilation_unit (n=10033)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:713
#32 0x103914d0 in sem.analyze (n=10033)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:174
#33 sem.analyze (n=10033) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#34 0x10391718 in sem.semantics.do_analyze ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1375
#35 0x103930ec in sem.semantics ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1461
#36 0x103b9560 in sem_ch10.analyze_with_clause (n=9687)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:2383
#37 0x10390af4 in sem.analyze (n=9687)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:583
#38 sem.analyze (n=9687) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#39 0x103b5c58 in sem_ch10.analyze_context (n=9685)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:1349
#40 0x103bd424 in sem_ch10.analyze_compilation_unit (n=9685)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:713
#41 0x103914d0 in sem.analyze (n=9685)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:174
#42 sem.analyze (n=9685) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#43 0x10391718 in sem.semantics.do_analyze ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1375
#44 0x103930ec in sem.semantics ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1461
#45 0x103b9560 in sem_ch10.analyze_with_clause (n=1669)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:2383
#46 0x10390af4 in sem.analyze (n=1669)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:583
#47 sem.analyze (n=1669) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#48 0x103b5c58 in sem_ch10.analyze_context (n=1663)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:1349
#49 0x103bd424 in sem_ch10.analyze_compilation_unit (n=1663)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem_ch10.adb:713
#50 0x103914d0 in sem.analyze (n=1663)
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:174
#51 sem.analyze (n=1663) at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:107
#52 0x10391718 in sem.semantics.do_analyze ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1375
#53 0x103930ec in sem.semantics ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/sem.adb:1461
#54 0x102ff848 in frontend ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/frontend.adb:326
#55 0x1051b174 in gnat1drv ()
at /vol/gcc/src/hg/trunk/local/gcc/ada/gnat1drv.adb:693
#56 0x1015dfd8 in gnat_parse_file (set_yydebug=<value optimized out>)
at /vol/gcc/src/hg/trunk/local/gcc/ada/gcc-interface/misc.c:185
#57 0x107ef4e8 in compile_file (argc=21, argv=0x7ffb7ed4)
at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:971
#58 do_compile (argc=21, argv=0x7ffb7ed4)
at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:2321
#59 toplev_main (argc=21, argv=0x7ffb7ed4)
at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:2362
#60 0x10134e10 in __start ()
(gdb)
I've not yet started a reghunt to idenfity the culprit patch.
--
Summary: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV
in sem_aggr.sort_case_table
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ro at gcc dot gnu dot org
GCC build triplet: mips-sgi-irix6.5
GCC host triplet: mips-sgi-irix6.5
GCC target triplet: mips-sgi-irix6.5
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
@ 2010-08-27 16:00 ` ebotcazou at gcc dot gnu dot org
2010-08-27 16:01 ` ebotcazou at gcc dot gnu dot org
` (9 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-08-27 16:00 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from ebotcazou at gcc dot gnu dot org 2010-08-27 16:00 -------
I can confirm something similar (an unaligned access) on IA64/Linux:
(botcazou@tinto) /nile.build/botcazou/gcc-head/ia64-unknown-linux-gnu $
gcc/gnat1 -quiet assert1.adb -I gcc/ada/rts
gnat1(32495): unaligned access to 0x60000fffffffa55c, ip=0x40000000005e8cc1
gnat1(32495): unaligned access to 0x60000fffffffa574, ip=0x40000000005e8cc1
gnat1(32495): unaligned access to 0x60000fffffffa58c, ip=0x40000000005e8cc1
gnat1(32495): unaligned access to 0x60000fffffffa55c, ip=0x40000000005e8cc1
The address points to:
Breakpoint 1, sem_aggr.sort_case_table (component_typ=72)
at /nile.build/botcazou/gcc-head/src/gcc/ada/sem_aggr.adb:3974
3974 T := Case_Table (K + 1);
It started to fail on 08/12 according to:
http://gcc.gnu.org/ml/gcc-testresults/2010-08/msg01253.html
http://gcc.gnu.org/ml/gcc-testresults/2010-08/msg01253.html
Likely triggered/exposed by:
2010-08-12 Richard Guenther <rguenther@suse.de>
* tree-flow.h (struct ptr_info_def): Add align and misalign fields.
* tree-ssa-alias.c (get_ptr_info): Move ...
* tree-ssanames.c (get_ptr_info): ... here. Initialize
align and misalign fields conservatively.
* tree-ssa-ccp.c (ccp_finalize): From partially constant pointers
derive alignment information.
(evaluate_stmt): Derive alignment information from memory
allocation functions.
* tree.h (get_pointer_alignment): Make unsigned.
* builtins.c (get_object_alignment): Use alignment information we
have computed for pointers.
(get_pointer_alignment): Likewise. Make conservative, return
and unsigned value.
(expand_builtin_strlen): Adjust.
(expand_builtin_memcmp): Likewise.
(expand_builtin_strcmp): Likewise.
(expand_builtin_strncmp): Likewise.
(get_builtin_sync_mem): Use at least mode alignment.
(fold_builtin_memset): Adjust.
(fold_builtin_memory_op): Likewise.
* gimple-pretty-print.c (dump_gimple_phi): Alongside alias
information also dump pointer alignment knowledge.
(dump_gimple_stmt): Likewise.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ebotcazou at gcc dot gnu dot
| |org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2010-08-27 16:00:30
date| |
Summary|[4.6 regression] Ada |[4.6 regression] Ada
|bootstrap failure on IRIX |bootstrap failure on IRIX
|6.5: SEGV in |6.5: SIGBUS in
|sem_aggr.sort_case_table |sem_aggr.sort_case_table
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
2010-08-27 16:00 ` [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS " ebotcazou at gcc dot gnu dot org
@ 2010-08-27 16:01 ` ebotcazou at gcc dot gnu dot org
2010-08-30 16:02 ` rguenth at gcc dot gnu dot org
` (8 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-08-27 16:01 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from ebotcazou at gcc dot gnu dot org 2010-08-27 16:01 -------
Investigating on IA-64.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC|ebotcazou at gcc dot gnu dot|
|org |
AssignedTo|unassigned at gcc dot gnu |ebotcazou at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
Last reconfirmed|2010-08-27 16:00:30 |2010-08-27 16:01:34
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
2010-08-27 16:00 ` [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS " ebotcazou at gcc dot gnu dot org
2010-08-27 16:01 ` ebotcazou at gcc dot gnu dot org
@ 2010-08-30 16:02 ` rguenth at gcc dot gnu dot org
2010-09-02 21:54 ` [Bug tree-optimization/45421] " ebotcazou at gcc dot gnu dot org
` (7 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-08-30 16:02 UTC (permalink / raw)
To: gcc-bugs
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.6.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (2 preceding siblings ...)
2010-08-30 16:02 ` rguenth at gcc dot gnu dot org
@ 2010-09-02 21:54 ` ebotcazou at gcc dot gnu dot org
2010-09-02 22:00 ` ebotcazou at gcc dot gnu dot org
` (6 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-09-02 21:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from ebotcazou at gcc dot gnu dot org 2010-09-02 21:54 -------
Recategorizing.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|ada |tree-optimization
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (3 preceding siblings ...)
2010-09-02 21:54 ` [Bug tree-optimization/45421] " ebotcazou at gcc dot gnu dot org
@ 2010-09-02 22:00 ` ebotcazou at gcc dot gnu dot org
2010-09-03 17:23 ` ro at CeBiTec dot Uni-Bielefeld dot DE
` (5 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-09-02 22:00 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from ebotcazou at gcc dot gnu dot org 2010-09-02 21:59 -------
It's IVOPTS so no way to get a reduced testcase. The analysis is for the stock
sem_aggr.adb file compiled at -O2 -gnatpg for IA-64. We have:
table.68_174 = .builtin_alloca (D.5147_173);
with pi->align = 16
D.5252_266 = &*table.68_174;
with pi->align = 16 and then
MEM[(struct sem_aggr__case_bounds[(size_type) <PLACEHOLDER_EXPR struct
sem_aggr__case_table_type___XUP>.P_BOUNDS->LB0:<PLACEHOLDER_EXPR struct
sem_aggr__case_table_type___XUP>.P_BOUNDS->UB0 >= <PLACEHOLDER_EXPR struct
sem_aggr__case_table_type___XUP>.P_BOUNDS->LB0 ? (size_type) <PLACEHOLDER_EXPR
struct sem_aggr__case_table_type___XUP>.P_BOUNDS->UB0 : (size_type)
<PLACEHOLDER_EXPR struct sem_aggr__case_table_type___XUP>.P_BOUNDS->LB0 + -1]
*)D.5252_266][D.6519_896]{lb: 1 sz: 12};
is replaced with
MEM[(struct sem_aggr__case_bounds[(size_type) <PLACEHOLDER_EXPR struct
sem_aggr__case_table_type___XUP>.P_BOUNDS->LB0:<PLACEHOLDER_EXPR struct
sem_aggr__case_table_type___XUP>.P_BOUNDS->UB0 >= <PLACEHOLDER_EXPR struct
sem_aggr__case_table_type___XUP>.P_BOUNDS->LB0 ? (size_type) <PLACEHOLDER_EXPR
struct sem_aggr__case_table_type___XUP>.P_BOUNDS->UB0 : (size_type)
<PLACEHOLDER_EXPR struct sem_aggr__case_table_type___XUP>.P_BOUNDS->LB0 + -1]
*)D.6658_890]
in IVOPTS. And copy_ref_info reads:
/* We can transfer points-to information from an old pointer
or decl base to the new one. */
But now duplicate_ssa_name_ptr_info duplicates more than the points-to info,
it also duplicates the alignment info, which is wrong for arrays since the
base decl (pointed to by D.5252_266) can be more aligned than the individual
elements (pointed to by D.6658_890).
Tentative patch (I cannot test it on IA-64 before next week):
Index: tree-ssa-loop-ivopts.c
===================================================================
--- tree-ssa-loop-ivopts.c (revision 163745)
+++ tree-ssa-loop-ivopts.c (working copy)
@@ -5891,8 +5891,8 @@ copy_ref_info (tree new_ref, tree old_re
else if (TREE_CODE (new_ref) == MEM_REF)
new_ptr_base = TREE_OPERAND (new_ref, 0);
- /* We can transfer points-to information from an old pointer
- or decl base to the new one. */
+ /* We can transfer points-to information from an old pointer or base decl
+ to the new one, as well as some amount of alignment information. */
if (new_ptr_base
&& TREE_CODE (new_ptr_base) == SSA_NAME
&& POINTER_TYPE_P (TREE_TYPE (new_ptr_base))
@@ -5901,11 +5901,18 @@ copy_ref_info (tree new_ref, tree old_re
tree base = get_base_address (old_ref);
if (!base)
;
- else if ((INDIRECT_REF_P (base)
- || TREE_CODE (base) == MEM_REF)
- && TREE_CODE (TREE_OPERAND (base, 0)) == SSA_NAME)
- duplicate_ssa_name_ptr_info
- (new_ptr_base, SSA_NAME_PTR_INFO (TREE_OPERAND (base, 0)));
+ else if ((INDIRECT_REF_P (base) || TREE_CODE (base) == MEM_REF)
+ && TREE_CODE (TREE_OPERAND (base, 0)) == SSA_NAME
+ && SSA_NAME_PTR_INFO (TREE_OPERAND (base, 0)))
+ {
+ struct ptr_info_def *pi;
+ duplicate_ssa_name_ptr_info
+ (new_ptr_base, SSA_NAME_PTR_INFO (TREE_OPERAND (base, 0)));
+ pi = SSA_NAME_PTR_INFO (new_ptr_base);
+ pi->misalign
+ = -(TYPE_ALIGN (TREE_TYPE (new_ref)) / BITS_PER_UNIT)
+ & (pi->align - 1);
+ }
else if (TREE_CODE (base) == VAR_DECL
|| TREE_CODE (base) == PARM_DECL
|| TREE_CODE (base) == RESULT_DECL)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (4 preceding siblings ...)
2010-09-02 22:00 ` ebotcazou at gcc dot gnu dot org
@ 2010-09-03 17:23 ` ro at CeBiTec dot Uni-Bielefeld dot DE
2010-09-06 16:20 ` ro at CeBiTec dot Uni-Bielefeld dot DE
` (4 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld dot DE @ 2010-09-03 17:23 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from ro at CeBiTec dot Uni-Bielefeld dot DE 2010-09-03 17:23 -------
Subject: Re: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in
sem_aggr.sort_case_table
I'm now running an mips-sgi-irix6.5 bootstrap with Ada included with
this patch.
Thanks.
Rainer
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (5 preceding siblings ...)
2010-09-03 17:23 ` ro at CeBiTec dot Uni-Bielefeld dot DE
@ 2010-09-06 16:20 ` ro at CeBiTec dot Uni-Bielefeld dot DE
2010-09-08 12:54 ` ebotcazou at gcc dot gnu dot org
` (3 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld dot DE @ 2010-09-06 16:20 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from ro at CeBiTec dot Uni-Bielefeld dot DE 2010-09-06 16:20 -------
Subject: Re: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in
sem_aggr.sort_case_table
Unfortunately, even with your patch the mips-sgi-irix6.5 Ada bootstrap
is still broken.
Rainer
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (6 preceding siblings ...)
2010-09-06 16:20 ` ro at CeBiTec dot Uni-Bielefeld dot DE
@ 2010-09-08 12:54 ` ebotcazou at gcc dot gnu dot org
2010-09-09 12:06 ` ro at gcc dot gnu dot org
` (2 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-09-08 12:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from ebotcazou at gcc dot gnu dot org 2010-09-08 12:54 -------
> Unfortunately, even with your patch the mips-sgi-irix6.5 Ada bootstrap
> is still broken.
OK, thanks for testing. Presumably fixed by Richard now, reopen if not.
*** This bug has been marked as a duplicate of 45578 ***
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |DUPLICATE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (7 preceding siblings ...)
2010-09-08 12:54 ` ebotcazou at gcc dot gnu dot org
@ 2010-09-09 12:06 ` ro at gcc dot gnu dot org
2010-09-09 12:15 ` ebotcazou at gcc dot gnu dot org
2010-09-13 10:55 ` ebotcazou at gcc dot gnu dot org
10 siblings, 0 replies; 12+ messages in thread
From: ro at gcc dot gnu dot org @ 2010-09-09 12:06 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from ro at gcc dot gnu dot org 2010-09-09 12:05 -------
Unfortunately not: bootstrap still fails as of rev. 164013.
--
ro at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|DUPLICATE |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (8 preceding siblings ...)
2010-09-09 12:06 ` ro at gcc dot gnu dot org
@ 2010-09-09 12:15 ` ebotcazou at gcc dot gnu dot org
2010-09-13 10:55 ` ebotcazou at gcc dot gnu dot org
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-09-09 12:15 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from ebotcazou at gcc dot gnu dot org 2010-09-09 12:15 -------
> Unfortunately not: bootstrap still fails as of rev. 164013.
Not very surprising given that we now have a SIGBUS on the SPARC as well...
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS in sem_aggr.sort_case_table
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
` (9 preceding siblings ...)
2010-09-09 12:15 ` ebotcazou at gcc dot gnu dot org
@ 2010-09-13 10:55 ` ebotcazou at gcc dot gnu dot org
10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2010-09-13 10:55 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from ebotcazou at gcc dot gnu dot org 2010-09-13 10:55 -------
Presumably re-fixed by Richard now. :-) Reopen if not.
*** This bug has been marked as a duplicate of 45611 ***
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|REOPENED |RESOLVED
Resolution| |DUPLICATE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45421
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2010-09-13 10:55 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-26 18:17 [Bug ada/45421] New: [4.6 regression] Ada bootstrap failure on IRIX 6.5: SEGV in sem_aggr.sort_case_table ro at gcc dot gnu dot org
2010-08-27 16:00 ` [Bug ada/45421] [4.6 regression] Ada bootstrap failure on IRIX 6.5: SIGBUS " ebotcazou at gcc dot gnu dot org
2010-08-27 16:01 ` ebotcazou at gcc dot gnu dot org
2010-08-30 16:02 ` rguenth at gcc dot gnu dot org
2010-09-02 21:54 ` [Bug tree-optimization/45421] " ebotcazou at gcc dot gnu dot org
2010-09-02 22:00 ` ebotcazou at gcc dot gnu dot org
2010-09-03 17:23 ` ro at CeBiTec dot Uni-Bielefeld dot DE
2010-09-06 16:20 ` ro at CeBiTec dot Uni-Bielefeld dot DE
2010-09-08 12:54 ` ebotcazou at gcc dot gnu dot org
2010-09-09 12:06 ` ro at gcc dot gnu dot org
2010-09-09 12:15 ` ebotcazou at gcc dot gnu dot org
2010-09-13 10:55 ` ebotcazou at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).