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).