rs6000: Warn for "GCC vector passed by reference" only with -Wpsabi

* config/rs6000/rs6000.c (rs6000_return_in_memory): Warn for
	vector return by reference only if -Wpsabi.
	(rs6000_pass_by_reference): Similarly, for argument passing.

From-SVN: r241058
This commit is contained in:
Segher Boessenkool 2016-10-12 17:09:26 +02:00 committed by Segher Boessenkool
parent 4b77ac40f0
commit 56b31d3e82
2 changed files with 8 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2016-10-12 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000.c (rs6000_return_in_memory): Warn for
vector return by reference only if -Wpsabi.
(rs6000_pass_by_reference): Similarly, for argument passing.
2016-10-12 David Malcolm <dmalcolm@redhat.com>
* function-tests.c: Include "print-rtl.h".

View File

@ -10952,7 +10952,7 @@ rs6000_return_in_memory (const_tree type, const_tree fntype ATTRIBUTE_UNUSED)
static bool warned_for_return_big_vectors = false;
if (!warned_for_return_big_vectors)
{
warning (0, "GCC vector returned by reference: "
warning (OPT_Wpsabi, "GCC vector returned by reference: "
"non-standard ABI extension with no compatibility guarantee");
warned_for_return_big_vectors = true;
}
@ -12610,7 +12610,7 @@ rs6000_pass_by_reference (cumulative_args_t cum ATTRIBUTE_UNUSED,
fprintf (stderr, "function_arg_pass_by_reference: synthetic vector\n");
if (!warned_for_pass_big_vectors)
{
warning (0, "GCC vector passed by reference: "
warning (OPT_Wpsabi, "GCC vector passed by reference: "
"non-standard ABI extension with no compatibility guarantee");
warned_for_pass_big_vectors = true;
}