Hi, The sibcall_epilogue expand in arm.md is only defined for TARGET_32BIT targets and thus is not defined for TARGET_THUMB1 targets. As a result, tail call plugin tests fail with "cannot tail-call: machine description does not have a sibcall_epilogue instruction pattern". This patch skip these tests on Thumb-1 since these are expected to fail.
ChangeLog entry is as follows: *** gcc/testsuite/ChangeLog *** 2016-05-24 Thomas Preud'homme <thomas.preudho...@arm.com> * gcc.dg/plugin/plugin.exp: skip tail call tests for Thumb-1. diff --git a/gcc/testsuite/gcc.dg/plugin/plugin.exp b/gcc/testsuite/gcc.dg/plugin/plugin.exp index 62f6797..321b4ba 100644 --- a/gcc/testsuite/gcc.dg/plugin/plugin.exp +++ b/gcc/testsuite/gcc.dg/plugin/plugin.exp @@ -90,6 +90,12 @@ foreach plugin_test $plugin_test_list { if ![runtest_file_p $runtests $plugin_src] then { continue } + # Skip tail call tests on targets that do not have sibcall_epilogue. + if {[regexp ".*must_tail_call_plugin.c" $plugin_src] + && [istarget arm*-*-*] + && [check_effective_target_arm_thumb1]} then { + continue + } set plugin_input_tests [lreplace $plugin_test 0 0] plugin-test-execute $plugin_src $plugin_input_tests } Is this ok for trunk? Best regards, Thomas