Reset proper type on vector types (PR middle-end/88587).
authorMartin Liska <mliska@suse.cz>
Fri, 18 Jan 2019 07:41:05 +0000 (08:41 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Fri, 18 Jan 2019 07:41:05 +0000 (07:41 +0000)
commit5928bc2ec06dd4e7b5bd77a5915eb268f7bd5619
tree955050e3061a8b77e44e226b4d69eb3cde827502
parent9c83c58712c72024b893aac5fb0edc597fa583f2
Reset proper type on vector types (PR middle-end/88587).

2019-01-18  Martin Liska  <mliska@suse.cz>
    Richard Biener  <rguenther@suse.de>

PR middle-end/88587
* cgraph.h (create_version_clone_with_body): Add new argument
with attributes.
* cgraphclones.c (cgraph_node::create_version_clone): Add
DECL_ATTRIBUTES to a newly created decl.  And call
valid_attribute_p so that proper cl_target_optimization_node
is set for the newly created declaration.
* multiple_target.c (create_target_clone): Set DECL_ATTRIBUTES
for declaration.
(expand_target_clones): Do not call valid_attribute_p, it must
be already done.
* tree-inline.c (copy_decl_for_dup_finish): Reset mode for
vector types.
2019-01-18  Martin Liska  <mliska@suse.cz>

PR middle-end/88587
* g++.target/i386/pr88587.C: New test.
* gcc.target/i386/mvc13.c: New test.

Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r268060
gcc/ChangeLog
gcc/cgraph.h
gcc/cgraphclones.c
gcc/multiple_target.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.target/i386/pr88587.C [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/mvc13.c [new file with mode: 0644]
gcc/tree-inline.c