https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104327
--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
So target specific option mismatch is caused by:
static const struct default_options s390_option_optimization_table[] =
{
...
/* Use MVCLE instructions to decrease code size if requested. */
{ OPT_LEVELS_SIZE, OPT_mmvcle, NULL, 1 },
...
which can be very likely handled in:
static bool
s390_can_inline_p (tree caller, tree callee)
{
...
if ((caller_opts->x_target_flags & ~(MASK_SOFT_FLOAT | MASK_HARD_DFP))
!= (callee_opts->x_target_flags & ~(MASK_SOFT_FLOAT | MASK_HARD_DFP)))
ret = false;
@Andreas: What do you think?