Bug 115110 - [15 regression] several failures after r15-512-g9b7cad5884f21c
Summary: [15 regression] several failures after r15-512-g9b7cad5884f21c
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: middle-end (show other bugs)
Version: 15.0
: P3 normal
Target Milestone: 15.0
Assignee: Richard Biener
URL:
Keywords: testsuite-fail
: 115141 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-05-15 18:06 UTC by seurer
Modified: 2024-05-17 17:22 UTC (History)
9 users (show)

See Also:
Host: powerpc64-linux-gnu, powerpc64le-linux-gnu
Target: powerpc64-linux-gnu, powerpc64le-linux-gnu
Build: powerpc64-linux-gnu, powerpc64le-linux-gnu
Known to work:
Known to fail:
Last reconfirmed: 2024-05-16 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description seurer 2024-05-15 18:06:44 UTC
g:9b7cad5884f21cc5783075be0043777448db3fab, r15-512-g9b7cad5884f21c: 1122 failures

I saw these on powerpc64 both BE and LE

FAIL: g++.dg/tree-ssa/pr83215.C  -std=gnu++14  scan-tree-dump-times fre1 "\\*i" 1
FAIL: g++.dg/tree-ssa/pr83215.C  -std=gnu++17  scan-tree-dump-times fre1 "\\*i" 1
FAIL: g++.dg/tree-ssa/pr83215.C  -std=gnu++20  scan-tree-dump-times fre1 "\\*i" 1
FAIL: g++.dg/tree-ssa/pr83215.C  -std=gnu++98  scan-tree-dump-times fre1 "\\*i" 1
FAIL: gcc.dg/tree-ssa/ssa-lim-15.c scan-tree-dump lim2 "Executing store motion"
FAIL: gfortran.dg/vect/vect-do-concurrent-1.f90   -O   at line 14 (test for warnings, line )
Comment 1 seurer 2024-05-15 18:07:44 UTC
commit 9b7cad5884f21cc5783075be0043777448db3fab (HEAD)
Author: Jan Hubicka <jh@suse.cz>
Date:   Wed May 15 14:14:27 2024 +0200

    Avoid pointer compares on TYPE_MAIN_VARIANT in TBAA
Comment 2 Jakub Jelinek 2024-05-15 18:13:49 UTC
I see those on x86_64-linux and i686-linux too.
Comment 3 Jeffrey A. Law 2024-05-15 20:56:28 UTC
I hate to pile on, but riscv64-linux-gnu:

FAIL: gcc.dg/tree-ssa/ssa-lim-15.c scan-tree-dump lim2 "Executing store motion"


I'm certainly willing to believe that perhaps we can't do this store motion without using TBAA to disambiguate certain objects.  I haven't actually dug into the regression to determine if that's the case or not.
Comment 4 Richard Biener 2024-05-16 07:07:59 UTC
Confirmed.
Comment 5 Rainer Orth 2024-05-16 08:49:11 UTC
There's also PR ada/115106 where this patch broke 32-bit Solaris/x86 Ada
bootstrap.
Comment 6 Andrew Carlotti 2024-05-16 10:07:01 UTC
I'm seeing a bootstrap failure on aarch64-none-linux-gnu as well, bisected to this commit. The error, in Stage 2, is:


In file included from ../../src/gcc/system.h:726,
                 from ../../src/gcc/tree-affine.cc:21:
In member function 'long int* widest_int_storage<N>::write_val(unsigned int) [with int N = 131072]',
    inlined from 'typename wi::binary_traits<T, T>::result_type wi::sext(const T&, unsigned int) [with T = generic_wide_int<widest_int_storage<131072> >]' at ../../src/gcc/wide-int.h:2582:28,
    inlined from 'poly_int<N, typename poly_result<Ca, Ca>::type> wi::sext(const poly_int<N, C>&, unsigned int) [with unsigned int N = 2; Ca = generic_wide_int<widest_int_storage<131072> >]' at ../../src/gcc/poly-int.h:746:5,
    inlined from 'poly_widest_int wide_int_ext_for_comb(const poly_widest_int&, tree)' at ../../src/gcc/tree-affine.cc:49:46:
../../src/gcc/../include/libiberty.h:370:38: error: 'void free(void*)' called on a pointer to an unallocated object '13450750900837400303' [-Werror=free-nonheap-object]
  370 | #define XDELETEVEC(P)           free ((void*) (P))
      |                                 ~~~~~^~~~~~~~~~~~~
../../src/gcc/wide-int.h:1630:5: note: in expansion of macro 'XDELETEVEC'
 1630 |     XDELETEVEC (u.valp);
      |     ^~~~~~~~~~
../../src/gcc/../include/libiberty.h:370:38: error: 'void free(void*)' called on a pointer to an unallocated object '13450750900837400303' [-Werror=free-nonheap-object]
  370 | #define XDELETEVEC(P)           free ((void*) (P))
      |                                 ~~~~~^~~~~~~~~~~~~
../../src/gcc/wide-int.h:1630:5: note: in expansion of macro 'XDELETEVEC'
 1630 |     XDELETEVEC (u.valp);
      |     ^~~~~~~~~~

Our regression testing also shows the test failures reported in the first comment for powerpc64.
Comment 7 Richard Biener 2024-05-17 09:05:13 UTC
I have a patch.
Comment 8 GCC Commits 2024-05-17 10:04:08 UTC
The master branch has been updated by Richard Biener <rguenth@gcc.gnu.org>:

https://gcc.gnu.org/g:a5b3721c06646bf5b9b50a22964e8e2bd4d03f5f

commit r15-626-ga5b3721c06646bf5b9b50a22964e8e2bd4d03f5f
Author: Richard Biener <rguenther@suse.de>
Date:   Fri May 17 11:02:29 2024 +0200

    middle-end/115110 - Fix view_converted_memref_p
    
    view_converted_memref_p was checking the reference type against the
    pointer type of the offset operand rather than its pointed-to type
    which leads to all refs being subject to view-convert treatment
    in get_alias_set causing numerous testsuite fails but with its
    new uses from r15-512-g9b7cad5884f21c is also a wrong-code issue.
    
            PR middle-end/115110
            * tree-ssa-alias.cc (view_converted_memref_p): Fix.
Comment 9 Richard Biener 2024-05-17 10:04:21 UTC
Fixed.
Comment 10 Hans-Peter Nilsson 2024-05-17 17:22:01 UTC
*** Bug 115141 has been marked as a duplicate of this bug. ***