Run selftests for C++ as well as C
gcc/ChangeLog: * Makefile.in (SELFTEST_TARGETS): New. (selftest) Change from s-selftest-c to $(SELFTEST_TARGETS). (C_SELFTEST_FLAGS, C_SELFTEST_DEPS, s-selftest-c, selftest-c-gdb) (selftest-gdb, selftest-c-valgrind, selftest-valgrind): Move to c/Make-lang.in. (CPP_SELFTEST_FLAGS, CPP_SELFTEST_DEPS, s-selftest-c++) (selftest-c++-gdb, selftest-c++-valgrind): Move to cp/Make-lang.in. * configure: Regenerate. * configure.ac (selftest_languages): New. gcc/brig/ChangeLog: * Make-lang.in (selftest-brig): New. gcc/c/ChangeLog: * Make-lang.in (selftest-c): New. (C_SELFTEST_FLAGS, C_SELFTEST_DEPS, s-selftest-c, selftest-c-gdb) (selftest-gdb, selftest-c-valgrind, selftest-valgrind): Move here from gcc/Makefile.in. gcc/cp/ChangeLog: * Make-lang.in (selftest-c++): New. (CPP_SELFTEST_FLAGS, CPP_SELFTEST_DEPS, s-selftest-c++) (selftest-c++-gdb, selftest-c++-valgrind): Move here from gcc/Makefile.in. gcc/fortran/ChangeLog: * Make-lang.in (selftest-fortran): New. gcc/go/ChangeLog: * Make-lang.in (selftest-go): New. gcc/jit/ChangeLog: * Make-lang.in (selftest-jit): New. gcc/lto/ChangeLog: * Make-lang.in (selftest-lto): New. gcc/objc/ChangeLog: * Make-lang.in (selftest-objc): New. gcc/objcp/ChangeLog: * Make-lang.in (selftest-obj-c++): New. From-SVN: r265240
This commit is contained in:
parent
e8f1d5cb7c
commit
033eb56717
@ -1,3 +1,16 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Makefile.in (SELFTEST_TARGETS): New.
|
||||
(selftest) Change from s-selftest-c to $(SELFTEST_TARGETS).
|
||||
(C_SELFTEST_FLAGS, C_SELFTEST_DEPS, s-selftest-c, selftest-c-gdb)
|
||||
(selftest-gdb, selftest-c-valgrind, selftest-valgrind): Move to
|
||||
c/Make-lang.in.
|
||||
(CPP_SELFTEST_FLAGS, CPP_SELFTEST_DEPS, s-selftest-c++)
|
||||
(selftest-c++-gdb, selftest-c++-valgrind): Move to
|
||||
cp/Make-lang.in.
|
||||
* configure: Regenerate.
|
||||
* configure.ac (selftest_languages): New.
|
||||
|
||||
2018-10-17 Aldy Hernandez <aldyh@redhat.com>
|
||||
|
||||
* tree-vrp.c (extract_range_from_multiplicative_op): Remove
|
||||
|
@ -1935,62 +1935,20 @@ DEVNULL=$(if $(findstring mingw,$(build)),nul,/dev/null)
|
||||
SELFTEST_FLAGS = -nostdinc $(DEVNULL) -S -o $(DEVNULL) \
|
||||
-fself-test=$(srcdir)/testsuite/selftests
|
||||
|
||||
C_SELFTEST_FLAGS = -xc $(SELFTEST_FLAGS)
|
||||
CPP_SELFTEST_FLAGS = -xc++ $(SELFTEST_FLAGS)
|
||||
|
||||
SELFTEST_DEPS = $(GCC_PASSES) stmp-int-hdrs $(srcdir)/testsuite/selftests
|
||||
|
||||
C_SELFTEST_DEPS = cc1$(exeext) $(SELFTEST_DEPS)
|
||||
CPP_SELFTEST_DEPS = cc1plus$(exeext) $(SELFTEST_DEPS)
|
||||
|
||||
# Run the selftests during the build once we have a driver and the frontend,
|
||||
# so that self-test failures are caught as early as possible.
|
||||
# Use "s-selftest-FE" to ensure that we only run the selftests if the
|
||||
# driver, frontend, or selftest data change.
|
||||
.PHONY: selftest
|
||||
|
||||
# By default, only run the selftests within the C frontend
|
||||
selftest: s-selftest-c
|
||||
# Potentially run all selftest-<LANG>. The various <LANG>/Make-lang.in can
|
||||
# require the selftests to be run by defining their selftest-<LANG> as
|
||||
# s-selftest-<LANG>. Otherwise, they should define it as empty.
|
||||
|
||||
# C selftests
|
||||
s-selftest-c: $(C_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(C_SELFTEST_FLAGS)
|
||||
$(STAMP) $@
|
||||
|
||||
# Convenience methods for running C selftests under gdb:
|
||||
.PHONY: selftest-c-gdb
|
||||
selftest-c-gdb: $(C_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(C_SELFTEST_FLAGS) \
|
||||
-wrapper gdb,--args
|
||||
|
||||
.PHONY: selftest-gdb
|
||||
selftest-gdb: selftest-c-gdb
|
||||
|
||||
# Convenience methods for running C selftests under valgrind:
|
||||
.PHONY: selftest-c-valgrind
|
||||
selftest-c-valgrind: $(C_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(C_SELFTEST_FLAGS) \
|
||||
-wrapper valgrind,--leak-check=full
|
||||
|
||||
.PHONY: selftest-valgrind
|
||||
selftest-valgrind: selftest-c-valgrind
|
||||
|
||||
# C++ selftests
|
||||
s-selftest-c++: $(CPP_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(CPP_SELFTEST_FLAGS)
|
||||
$(STAMP) $@
|
||||
|
||||
# Convenience method for running C++ selftests under gdb:
|
||||
.PHONY: selftest-c++-gdb
|
||||
selftest-c++-gdb: $(CPP_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(CPP_SELFTEST_FLAGS) \
|
||||
-wrapper gdb,--args
|
||||
|
||||
# Convenience method for running C++ selftests under valgrind:
|
||||
.PHONY: selftest-c++-valgrind
|
||||
selftest-c++-valgrind: $(CPP_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(CPP_SELFTEST_FLAGS) \
|
||||
-wrapper valgrind,--leak-check=full
|
||||
SELFTEST_TARGETS = @selftest_languages@
|
||||
selftest: $(SELFTEST_TARGETS)
|
||||
|
||||
# Recompile all the language-independent object files.
|
||||
# This is used only if the user explicitly asks for it.
|
||||
|
@ -930,6 +930,9 @@ check_gnat_parallelize = 1000
|
||||
check-ada: check-acats check-gnat
|
||||
check-ada-subtargets: check-acats-subtargets check-gnat-subtargets
|
||||
|
||||
# No ada-specific selftests
|
||||
selftest-ada:
|
||||
|
||||
ACATSDIR = $(TESTSUITEDIR)/ada/acats
|
||||
ACATSCMD = run_acats.sh
|
||||
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-brig): New.
|
||||
|
||||
2018-07-20 Martin Sebor <msebor@redhat.com>
|
||||
|
||||
PR middle-end/82063
|
||||
|
@ -148,6 +148,9 @@ brig.srcman: doc/gccbrig.1
|
||||
|
||||
lang_checks += check-brig
|
||||
|
||||
# No brig-specific selftests
|
||||
selftest-brig:
|
||||
|
||||
# Install hooks.
|
||||
|
||||
brig.install-common: installdirs
|
||||
|
@ -1,3 +1,10 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-c): New.
|
||||
(C_SELFTEST_FLAGS, C_SELFTEST_DEPS, s-selftest-c, selftest-c-gdb)
|
||||
(selftest-gdb, selftest-c-valgrind, selftest-valgrind): Move here
|
||||
from gcc/Makefile.in.
|
||||
|
||||
2018-10-02 Richard Biener <rguenther@suse.de>
|
||||
|
||||
* c-decl.c (warn_if_shadowing): Do not test DECL_FROM_INLINE.
|
||||
|
@ -110,6 +110,38 @@ c.tags: force
|
||||
c.man:
|
||||
c.srcman:
|
||||
|
||||
# C selftests
|
||||
|
||||
# If C is enabled, require the selftests to be run for it
|
||||
# at each stage of the build:
|
||||
selftest-c: s-selftest-c
|
||||
|
||||
C_SELFTEST_FLAGS = -xc $(SELFTEST_FLAGS)
|
||||
C_SELFTEST_DEPS = cc1$(exeext) $(SELFTEST_DEPS)
|
||||
|
||||
# Run the C selftests:
|
||||
s-selftest-c: $(C_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(C_SELFTEST_FLAGS)
|
||||
$(STAMP) $@
|
||||
|
||||
# Convenience methods for running C selftests under gdb:
|
||||
.PHONY: selftest-c-gdb
|
||||
selftest-c-gdb: $(C_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(C_SELFTEST_FLAGS) \
|
||||
-wrapper gdb,--args
|
||||
|
||||
.PHONY: selftest-gdb
|
||||
selftest-gdb: selftest-c-gdb
|
||||
|
||||
# Convenience methods for running C selftests under valgrind:
|
||||
.PHONY: selftest-c-valgrind
|
||||
selftest-c-valgrind: $(C_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(C_SELFTEST_FLAGS) \
|
||||
-wrapper valgrind,--leak-check=full
|
||||
|
||||
.PHONY: selftest-valgrind
|
||||
selftest-valgrind: selftest-c-valgrind
|
||||
|
||||
# List of targets that can use the generic check- rule and its // variant.
|
||||
lang_checks += check-gcc
|
||||
lang_checks_parallelized += check-gcc
|
||||
|
12
gcc/configure
vendored
12
gcc/configure
vendored
@ -656,6 +656,7 @@ TM_ENDIAN_CONFIG
|
||||
tmake_file
|
||||
xmake_file
|
||||
cpp_install_dir
|
||||
selftest_languages
|
||||
check_languages
|
||||
build_file_translate
|
||||
build_xm_defines
|
||||
@ -18509,7 +18510,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<_LT_EOF
|
||||
#line 18512 "configure"
|
||||
#line 18513 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -18615,7 +18616,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<_LT_EOF
|
||||
#line 18618 "configure"
|
||||
#line 18619 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -29344,6 +29345,12 @@ do
|
||||
check_languages="$check_languages check-$language"
|
||||
done
|
||||
|
||||
selftest_languages=
|
||||
for language in $all_selected_languages
|
||||
do
|
||||
selftest_languages="$selftest_languages selftest-$language"
|
||||
done
|
||||
|
||||
# We link each language in with a set of hooks, reached indirectly via
|
||||
# lang.${target}. Only do so for selected languages.
|
||||
|
||||
@ -29474,6 +29481,7 @@ fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Echo link setup.
|
||||
|
@ -6194,6 +6194,12 @@ do
|
||||
check_languages="$check_languages check-$language"
|
||||
done
|
||||
|
||||
selftest_languages=
|
||||
for language in $all_selected_languages
|
||||
do
|
||||
selftest_languages="$selftest_languages selftest-$language"
|
||||
done
|
||||
|
||||
# We link each language in with a set of hooks, reached indirectly via
|
||||
# lang.${target}. Only do so for selected languages.
|
||||
|
||||
@ -6277,6 +6283,7 @@ AC_SUBST(build_xm_include_list)
|
||||
AC_SUBST(build_xm_defines)
|
||||
AC_SUBST(build_file_translate)
|
||||
AC_SUBST(check_languages)
|
||||
AC_SUBST(selftest_languages)
|
||||
AC_SUBST(cpp_install_dir)
|
||||
AC_SUBST(xmake_file)
|
||||
AC_SUBST(tmake_file)
|
||||
|
@ -1,3 +1,10 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-c++): New.
|
||||
(CPP_SELFTEST_FLAGS, CPP_SELFTEST_DEPS, s-selftest-c++)
|
||||
(selftest-c++-gdb, selftest-c++-valgrind): Move here from
|
||||
gcc/Makefile.in.
|
||||
|
||||
2018-10-17 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/84705
|
||||
|
@ -164,6 +164,32 @@ c++.man: doc/g++.1
|
||||
c++.srcman: doc/g++.1
|
||||
-cp -p $^ $(srcdir)/doc
|
||||
|
||||
# C++ selftests
|
||||
|
||||
# If C++ is enabled, require the selftests to be run for it
|
||||
# at each stage of the build:
|
||||
selftest-c++: s-selftest-c++
|
||||
|
||||
CPP_SELFTEST_DEPS = cc1plus$(exeext) $(SELFTEST_DEPS)
|
||||
CPP_SELFTEST_FLAGS = -xc++ $(SELFTEST_FLAGS)
|
||||
|
||||
# Run the C++ selftests
|
||||
s-selftest-c++: $(CPP_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(CPP_SELFTEST_FLAGS)
|
||||
$(STAMP) $@
|
||||
|
||||
# Convenience method for running C++ selftests under gdb:
|
||||
.PHONY: selftest-c++-gdb
|
||||
selftest-c++-gdb: $(CPP_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(CPP_SELFTEST_FLAGS) \
|
||||
-wrapper gdb,--args
|
||||
|
||||
# Convenience method for running C++ selftests under valgrind:
|
||||
.PHONY: selftest-c++-valgrind
|
||||
selftest-c++-valgrind: $(CPP_SELFTEST_DEPS)
|
||||
$(GCC_FOR_TARGET) $(CPP_SELFTEST_FLAGS) \
|
||||
-wrapper valgrind,--leak-check=full
|
||||
|
||||
# 'make check' in gcc/ looks for check-c++, as do all toplevel C++-related
|
||||
# check targets. However, our DejaGNU framework requires 'check-g++' as its
|
||||
# entry point. We feed the former to the latter here.
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-fortran): New.
|
||||
|
||||
2018-10-17 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
PR fortran/56386
|
||||
|
@ -170,6 +170,9 @@ lang_checks_parallelized += check-gfortran
|
||||
# For description see the check_$lang_parallelize comment in gcc/Makefile.in.
|
||||
check_gfortran_parallelize = 10000
|
||||
|
||||
# No fortran-specific selftests
|
||||
selftest-fortran:
|
||||
|
||||
# GFORTRAN documentation.
|
||||
GFORTRAN_TEXI = \
|
||||
$(srcdir)/fortran/gfortran.texi \
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-go): New.
|
||||
|
||||
2018-09-25 Martin Liska <mliska@suse.cz>
|
||||
|
||||
* gofrontend/escape.cc (Gogo::analyze_escape): Remove
|
||||
|
@ -139,6 +139,9 @@ lang_checks += check-go
|
||||
lang_checks_parallelized += check-go
|
||||
check_go_parallelize = 10
|
||||
|
||||
# No go-specific selftests
|
||||
selftest-go:
|
||||
|
||||
# Install hooks.
|
||||
|
||||
go.install-common: installdirs
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-jit): New.
|
||||
|
||||
2018-06-28 Martin Liska <mliska@suse.cz>
|
||||
|
||||
* jit-playback.c: Include opt-suggestions.h.
|
||||
|
@ -270,6 +270,9 @@ lang_checks_parallelized += check-jit
|
||||
# we want them to be placed in different "buckets".
|
||||
check_jit_parallelize = 10
|
||||
|
||||
# No jit-specific selftests
|
||||
selftest-jit:
|
||||
|
||||
#
|
||||
# Install hooks:
|
||||
jit.install-common: installdirs
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-lto): New.
|
||||
|
||||
2018-08-29 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR bootstrap/87130
|
||||
|
@ -86,3 +86,6 @@ lto1.fda: ../prev-gcc/lto1$(exeext) ../prev-gcc/$(PERF_DATA)
|
||||
|
||||
# LTO testing is done as part of C/C++/Fortran etc. testing.
|
||||
check-lto:
|
||||
|
||||
# No LTO-specific selftests
|
||||
selftest-lto:
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-objc): New.
|
||||
|
||||
2018-04-20 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR objc/85476
|
||||
|
@ -98,6 +98,9 @@ lang_checks += check-objc
|
||||
lang_checks_parallelized += check-objc
|
||||
check_objc_parallelize = 6
|
||||
|
||||
# No objc-c-specific selftests
|
||||
selftest-objc:
|
||||
|
||||
#
|
||||
# Install hooks:
|
||||
# cc1obj is installed elsewhere as part of $(COMPILERS).
|
||||
|
@ -1,3 +1,7 @@
|
||||
2018-10-17 David Malcolm <dmalcolm@redhat.com>
|
||||
|
||||
* Make-lang.in (selftest-obj-c++): New.
|
||||
|
||||
2018-05-07 Nathan Sidwell <nathan@acm.org>
|
||||
|
||||
* objcp-lang.c (objcxx_init_ts): Don't call init_shadowed_var_for_decl.
|
||||
|
@ -126,6 +126,9 @@ obj-c++.tags: force
|
||||
|
||||
lang_checks += check-obj-c++
|
||||
|
||||
# No objc-c++-specific selftests
|
||||
selftest-obj-c++:
|
||||
|
||||
#
|
||||
# Install hooks:
|
||||
# cc1objplus is installed elsewhere as part of $(COMPILERS).
|
||||
|
Loading…
x
Reference in New Issue
Block a user