Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
[submodule "gcc"]
path = gcc
url = https://github.com/gcc-mirror/gcc.git
branch = releases/gcc-14
branch = releases/gcc-15
shallow = true
[submodule "glibc"]
path = glibc
Expand Down
2 changes: 1 addition & 1 deletion gcc
Submodule gcc updated 38246 files
73 changes: 35 additions & 38 deletions test/allowlist/gcc/common.log
Original file line number Diff line number Diff line change
@@ -1,38 +1,35 @@
#
# XXX: Need review.
#
XPASS: gcc.dg/attr-alloc_size-11.c
FAIL: g++.dg/modules/bad-mapper-3.C
#
# We didn't define TARGET_HAVE_SPECULATION_SAFE_VALUE or
# speculation_barrier pattern
#
FAIL: c-c++-common/spec-barrier-1.c
#
# Fix upstream (77f3b3419d4) but no backport
#
UNRESOLVED: gcc.target/riscv/mcpu-6.c
UNRESOLVED: gcc.target/riscv/mcpu-7.c
FAIL: g++.dg/vect/pr95401.cc
FAIL: gcc.dg/Wstringop-overflow-47.c
#
# Still fail on upstream(2024.8.12)
#
FAIL: gcc.dg/vect/costmodel/riscv/rvv/pr113281-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/pr113281-2.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/pr113281-5.c
FAIL: gcc.dg/tree-ssa/ssa-dom-cse-2.c
FAIL: gcc.dg/tree-ssa/update-threading.c
FAIL: gcc.dg/vect/pr65310.c
FAIL: gcc.dg/vect/pr88598-1.c
FAIL: gcc.dg/vect/pr88598-2.c
FAIL: gcc.dg/vect/pr88598-3.c
FAIL: gcc.dg/vect/vect-gather-2.c
FAIL: gcc.dg/plugin/cpython-plugin-test-PyList_Append.c
FAIL: gcc.dg/plugin/cpython-plugin-test-PyList_New.c
FAIL: gcc.dg/plugin/cpython-plugin-test-PyLong_FromLong.c
#
# Fail when don't have floating point support
# see https://github.com/riscv-collab/riscv-gnu-toolchain/pull/1531#issuecomment-2373636158
#
FAIL: gcc.dg/pr110279-1.c
FAIL: gcc.dg/vect/pr65310.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-5.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-5.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-3.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-6.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/pr113112-2.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul8-4.c
FAIL: g++.target/riscv/redundant-bitmap-2.C
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-7.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-12.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-3.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-3.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-2.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-2.c
FAIL: gcc.target/riscv/rvv/autovec/bug-3.c
FAIL: gcc.dg/vect/pr88598-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-2.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul8-2.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul-mixed-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-7.c
FAIL: gcc.dg/vect/pr88598-3.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/pr113112-4.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-4.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-4.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul8-11.c
FAIL: c-c++-common/spec-barrier-1.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul1-5.c
FAIL: gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-6.c
FAIL: gcc.dg/vect/vect-gather-2.c
FAIL: gcc.dg/vect/pr88598-2.c
# Added because machine performance can affect test results.
FAIL: gcc.dg/tree-prof/time-profiler-2.c
50 changes: 50 additions & 0 deletions test/allowlist/gcc/gen.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
from tqdm import tqdm
import re

def processlog(filename: str) -> set:
with open(filename, "r", encoding='utf-8') as f:
data = f.readlines()
set1 = set()
for line in tqdm(data):
result = re.match('^.*((FAIL|UNRESOLVED): .*.c) .*$',line) #使用正则表达式筛选每一行的数据,自行查找正则表达式
if result:
t = (result.group(1)) #group(1)将正则表达式的(/d.*/d)提取出来
set1.add(t)
return set1

def writeset(filename: str, set1: set) -> None:
if len(set1)!=0:
with open(filename, "a", encoding='utf-8') as f1:
for t in tqdm(set1):
f1.write(t+'\n')

newlib64=processlog("10_build (ubuntu-24.04, newlib, rv64gc-lp64d, gcc).txt")
newlib32=processlog("25_build (ubuntu-24.04, newlib, rv32gc-ilp32d, gcc).txt")
linux64=processlog("24_build (ubuntu-24.04, linux, rv64gc-lp64d, gcc).txt")
linux32=processlog("15_build (ubuntu-24.04, linux, rv32gc-ilp32d, gcc).txt")

# common should be 4 intersection
commonerror=set.intersection(newlib64, newlib32, linux64, linux32)
writeset("res/common.log",commonerror)
# rv32
rv32=set.intersection(newlib32, linux32)
rv32=rv32-commonerror
writeset("res/rv32.log",rv32)
# rv64
rv64=set.intersection(newlib64, linux64)
rv64=rv64-commonerror
writeset("res/rv64.log",rv64)
# glibc
glibc=set.intersection(linux32, linux64)
glibc=glibc-commonerror
writeset("res/glibc.log",glibc)
# newlib
newlib=set.intersection(newlib64, newlib32)
newlib=newlib-commonerror
writeset("res/newlib.log",newlib)

# everything out of it
writeset("res/glibc.rv32.log",linux32-rv32-glibc-commonerror)
writeset("res/glibc.rv64.log",linux64-rv64-glibc-commonerror)
writeset("res/newlib.rv32.log",newlib32-rv32-newlib-commonerror)
writeset("res/newlib.rv64.log",newlib64-rv64-newlib-commonerror)
80 changes: 6 additions & 74 deletions test/allowlist/gcc/glibc.log
Original file line number Diff line number Diff line change
@@ -1,74 +1,6 @@
#
# XXX: Need review why.
#
FAIL: gfortran.dg/matmul_15.f90
FAIL: gfortran.dg/ieee/comparisons_3.F90
FAIL: gfortran.dg/ieee/ieee_1.F90
FAIL: gfortran.dg/ieee/ieee_2.f90
FAIL: gfortran.dg/ieee/ieee_6.f90
FAIL: gfortran.dg/ieee/large_2.f90
FAIL: gfortran.dg/ieee/large_3.F90
FAIL: gfortran.dg/ieee/modes_1.f90
FAIL: gfortran.dg/ieee/rounding_1.f90
#
# Fails if there is no F extension
#
FAIL: gfortran.dg/ieee/rounding_3.f90
#
# Fixed but not backport
#
UNRESOLVED: gcc.target/riscv/rvv/autovec/vls-vlmax/full-vec-move1.c
FAIL: gcc.target/riscv/rvv/autovec/vls-vlmax/full-vec-move1.c
#
# Unknown random fail case.
#
FAIL: gcc.dg/tree-prof/time-profiler-2.c
#
# RVV fail cases(still exist on upstream)
#
FAIL: gcc.dg/vect/costmodel/riscv/rvv/pr113112-2.c
FAIL: gcc.target/riscv/rvv/autovec/bug-1.c
FAIL: gcc.target/riscv/rvv/autovec/pr113087-2.c
FAIL: gcc.target/riscv/rvv/autovec/vls/misalign-1.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-1.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-2.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-1-save-restore.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-1-zcmp.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-1.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-2-save-restore.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-2-zcmp.c
FAIL: gcc.target/riscv/rvv/base/abi-callee-saved-2.c
FAIL: gcc.target/riscv/rvv/base/pr110943.c
FAIL: gcc.target/riscv/rvv/base/pr111533-2.c
FAIL: gcc.target/riscv/rvv/base/pr112743-2.c
FAIL: gcc.target/riscv/rvv/base/pr114639-1.c
FAIL: gcc.target/riscv/rvv/base/pr115456-1.c
FAIL: gcc.target/riscv/rvv/base/pr115456-2.c
FAIL: gcc.target/riscv/rvv/base/pr115456-3.c
FAIL: gcc.target/riscv/rvv/base/vlmul_ext-1.c
FAIL: gcc.target/riscv/rvv/vsetvl/pr111234.c
FAIL: gcc.target/riscv/rvv/vsetvl/pr115214.c
FAIL: gcc.target/riscv/rvv/vsetvl/vsetvl-24.c
UNRESOLVED: gcc.dg/vect/costmodel/riscv/rvv/pr113112-2.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/bug-1.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/pr113087-2.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/vls/misalign-1.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-1.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-2.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-1-save-restore.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-1-zcmp.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-1.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-2-save-restore.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-2-zcmp.c
UNRESOLVED: gcc.target/riscv/rvv/base/abi-callee-saved-2.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr110943.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr111533-2.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr112743-2.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr114639-1.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr115456-1.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr115456-2.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr115456-3.c
UNRESOLVED: gcc.target/riscv/rvv/base/vlmul_ext-1.c
UNRESOLVED: gcc.target/riscv/rvv/vsetvl/pr111234.c
UNRESOLVED: gcc.target/riscv/rvv/vsetvl/pr115214.c
UNRESOLVED: gcc.target/riscv/rvv/vsetvl/vsetvl-24.c
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/prefix.c
FAIL: gfortran.dg/ieee/modes_1.f90
FAIL: gcc.target/riscv/rvv/vtype-call-clobbered.c
UNRESOLVED: gcc.target/riscv/rvv/vtype-call-clobbered.c
FAIL: gcc.target/riscv/rvv/xtheadvector/prefix.c
FAIL: gfortran.dg/ieee/ieee_6.f90
40 changes: 40 additions & 0 deletions test/allowlist/gcc/glibc.rv32.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
FAIL: g++.target/riscv/rvv/autovec/pr116595.C
UNRESOLVED: gcc.target/riscv/rvv/base/pr115456-2.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/pr113087-2.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_x_f_qf.c
FAIL: gcc.target/riscv/rvv/autovec/vls/misalign-1.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_2x8x2.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_4x8x4.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmacc_4x8x4.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmacc_4x8x4.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_4x8x4.c
FAIL: gcc.target/riscv/rvv/base/pr115456-1.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_2x8x2.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr115456-3.c
FAIL: gcc.target/riscv/rvv/base/pr115456-2.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_xu_f_qf.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_4x8x4.c
FAIL: gcc.target/riscv/rvv/base/pr111533-2.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_4x8x4.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmacc_2x8x2.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_xu_f_qf.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_4x8x4.c
UNRESOLVED: gcc.target/riscv/pr112398.c
FAIL: gcc.target/riscv/pr112398.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmacc_2x8x2.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/bug-1.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_4x8x4.c
UNRESOLVED: gcc.target/riscv/rvv/base/pr115456-1.c
FAIL: gcc.target/riscv/rvv/base/pr112743-2.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_2x8x2.c
FAIL: gcc.target/riscv/rvv/autovec/pr113087-2.c
FAIL: gcc.target/riscv/slt-1.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_2x8x2.c
FAIL: gcc.target/riscv/rvv/base/pr115456-3.c
FAIL: gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_x_f_qf.c
FAIL: gcc.target/riscv/rvv/autovec/bug-1.c
UNRESOLVED: gcc.dg/vect/costmodel/riscv/rvv/pr113112-2.c
UNRESOLVED: gcc.target/riscv/slt-1.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/vls/misalign-1.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_2x8x2.c
UNRESOLVED: gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_2x8x2.c
12 changes: 12 additions & 0 deletions test/allowlist/gcc/glibc.rv64.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/vlh-vsh.c
FAIL: gcc.target/riscv/rvv/xtheadvector/vlbu-vsb.c
FAIL: gcc.target/riscv/rvv/xtheadvector/vlh-vsh.c
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/vlwu-vsw.c
FAIL: gcc.target/riscv/rvv/xtheadvector/vlhu-vsh.c
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/vlw-vsw.c
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/vlb-vsb.c
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/vlhu-vsh.c
UNRESOLVED: gcc.target/riscv/rvv/xtheadvector/vlbu-vsb.c
FAIL: gcc.target/riscv/rvv/xtheadvector/vlwu-vsw.c
FAIL: gcc.target/riscv/rvv/xtheadvector/vlw-vsw.c
FAIL: gcc.target/riscv/rvv/xtheadvector/vlb-vsb.c
4 changes: 0 additions & 4 deletions test/allowlist/gcc/newlib-nano.f.log

This file was deleted.

34 changes: 0 additions & 34 deletions test/allowlist/gcc/newlib-nano.log

This file was deleted.

18 changes: 4 additions & 14 deletions test/allowlist/gcc/newlib.log
Original file line number Diff line number Diff line change
@@ -1,14 +1,4 @@
#
# We didn't init thread pointer in qemu nor newlib.
#
FAIL: g++.dg/cpp2a/decomp2.C
#
# freopen with stdout not work correctly for newlib
#
FAIL: gcc.c-torture/execute/user-printf.c
FAIL: gcc.c-torture/execute/fprintf-2.c
FAIL: gcc.c-torture/execute/printf-2.c
#
# Spike execution fail
#
FAIL: g++.dg/vect/pr84556.cc
FAIL: gcc.c-torture/execute/printf-2.c
FAIL: gcc.c-torture/execute/fprintf-2.c
FAIL: gcc.c-torture/execute/user-printf.c
FAIL: g++.dg/cpp2a/decomp2.C
8 changes: 0 additions & 8 deletions test/allowlist/gcc/newlib.rv32.log

This file was deleted.

13 changes: 8 additions & 5 deletions test/allowlist/gcc/rv32.log
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
#
# RV32 only
#
FAIL: gcc.target/riscv/rvv/base/vwaddsub-1.c
FAIL: gcc.dg/torture/pr113026-1.c
UNRESOLVED: gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.c
FAIL: gcc.dg/tree-ssa/pr83403-1.c
FAIL: gcc.dg/tree-ssa/pr83403-2.c
FAIL: gcc.target/riscv/pr116715.c
FAIL: gcc.dg/torture/pr113026-1.c
FAIL: gcc.dg/pr90838-2.c
UNRESOLVED: gcc.target/riscv/pr116715.c
FAIL: gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.c