Properly redirect alias for MVC (PR ipa/84722).
2018-03-16 Martin Liska <mliska@suse.cz> PR ipa/84722 * multiple_target.c (create_dispatcher_calls): Redirect also an alias. 2018-03-16 Martin Liska <mliska@suse.cz> PR ipa/84722 * gcc.target/i386/mvc10.c: New test. From-SVN: r258595
This commit is contained in:
parent
a81495699e
commit
a9a9804984
@ -1,3 +1,9 @@
|
||||
2018-03-16 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR ipa/84722
|
||||
* multiple_target.c (create_dispatcher_calls): Redirect also
|
||||
an alias.
|
||||
|
||||
2018-03-16 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/79937
|
||||
|
@ -145,6 +145,13 @@ create_dispatcher_calls (struct cgraph_node *node)
|
||||
walk_gimple_stmt (&it, NULL, replace_function_decl, &wi);
|
||||
}
|
||||
}
|
||||
else if (ref->use == IPA_REF_ALIAS)
|
||||
{
|
||||
symtab_node *source = ref->referring;
|
||||
ref->remove_reference ();
|
||||
source->create_reference (inode, IPA_REF_ALIAS);
|
||||
source->add_to_same_comdat_group (inode);
|
||||
}
|
||||
else
|
||||
gcc_unreachable ();
|
||||
}
|
||||
|
@ -1,3 +1,8 @@
|
||||
2018-03-16 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR ipa/84722
|
||||
* gcc.target/i386/mvc10.c: New test.
|
||||
|
||||
2018-03-16 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/79937
|
||||
|
16
gcc/testsuite/gcc.target/i386/mvc10.c
Normal file
16
gcc/testsuite/gcc.target/i386/mvc10.c
Normal file
@ -0,0 +1,16 @@
|
||||
/* PR ipa/84722. */
|
||||
/* { dg-do run } */
|
||||
/* { dg-require-ifunc "" } */
|
||||
|
||||
__attribute__ ((target_clones ("avx", "arch=core-avx2", "default"))) int
|
||||
foo (int i)
|
||||
{
|
||||
return i - 1;
|
||||
}
|
||||
int weaks (int i) __attribute__ ((weak, alias ("foo")));
|
||||
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
return weaks (argc);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user