Skip to content
Snippets Groups Projects
Commit 1624d351 authored by Peter Bergner's avatar Peter Bergner Committed by Jiufu Guo
Browse files

In PR70010, a function is marked with target(no-vsx) to disable VSX code generation.


In PR70010, a function is marked with target(no-vsx) to disable VSX code
generation.  To avoid VSX code generation, this function should not be
inlined into VSX function.  To fix the bug, in the current logic when
checking whether the caller's ISA flags supports the callee's ISA flags, we
just need to add a test that enforces that the caller's ISA flags match
exactly the callee's flags, for those flags that were explicitly set in the
callee.  If caller without target attribute then using options from command
line.

gcc/
2019-10-16  Peter Bergner <bergner@linux.ibm.com>
	    Jiufu Guo  <guojiufu@linux.ibm.com>

	PR target/70010
	* config/rs6000/rs6000.c (rs6000_can_inline_p): Prohibit inlining if
	the callee explicitly disables some isa_flags the caller is using.

gcc.testsuite/
2019-10-16  Peter Bergner <bergner@linux.ibm.com>
	    Jiufu Guo  <guojiufu@linux.ibm.com>

	PR target/70010
	* gcc.target/powerpc/pr70010.c: New test.
	* gcc.target/powerpc/pr70010-1.c: New test.
	* gcc.target/powerpc/pr70010-2.c: New test.
	* gcc.target/powerpc/pr70010-3.c: New test.
	* gcc.target/powerpc/pr70010-4.c: New test.

Co-Authored-By: default avatarJiufu Guo <guojiufu@linux.ibm.com>

From-SVN: r277065
parent 50425706
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment