diff options
author | Dimitar Dimitrov <dimitar@dinux.eu> | 2025-01-11 18:03:15 +0200 |
---|---|---|
committer | Dimitar Dimitrov <dimitar@dinux.eu> | 2025-04-25 23:07:11 +0300 |
commit | b1cb7a5e273eb3442259981216295d286a7892c7 (patch) | |
tree | db806d9107e4dee9995347ff1be05469047c311f /gcc/fortran | |
parent | 07b29ef00b7bbe985da62159306361faec2c3a20 (diff) | |
download | gcc-b1cb7a5e273eb3442259981216295d286a7892c7.zip gcc-b1cb7a5e273eb3442259981216295d286a7892c7.tar.gz gcc-b1cb7a5e273eb3442259981216295d286a7892c7.tar.bz2 |
testsuite: Skip tests incompatible with generic thunk support
Some backends do not define TARGET_ASM_OUTPUT_MI_THUNK. But the generic
thunk support cannot emit code for calling variadic methods of
multiple-inheritance classes. Example error for pru-unknown-elf:
.../gcc/gcc/testsuite/g++.dg/ipa/pr83549.C:7:24: error: generic thunk code fails for method 'virtual void C::_ZThn4_N1C3fooEz(...)' which uses '...'
Disable the affected tests for all targets which do not define
TARGET_ASM_OUTPUT_MI_THUNK.
Ensured that test results with and without this patch for
x86_64-pc-linux-gnu are the same.
gcc/ChangeLog:
* doc/sourcebuild.texi: Document variadic_mi_thunk effective
target check.
gcc/testsuite/ChangeLog:
* g++.dg/ipa/pr83549.C: Require effective target
variadic_mi_thunk.
* g++.dg/ipa/pr83667.C: Ditto.
* g++.dg/torture/pr81812.C: Ditto.
* g++.old-deja/g++.jason/thunk3.C: Ditto.
* lib/target-supports.exp
(check_effective_target_variadic_mi_thunk): New function.
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
Diffstat (limited to 'gcc/fortran')
0 files changed, 0 insertions, 0 deletions