rs6000: Remove builtin mask check from builtin_decl [PR102347]
authorKewen Lin <linkw@linux.ibm.com>
Tue, 30 Nov 2021 03:22:32 +0000 (21:22 -0600)
committerKewen Lin <linkw@linux.ibm.com>
Tue, 30 Nov 2021 03:22:32 +0000 (21:22 -0600)
commit6c7d489a1e6592bc73db03678c1231748fd7a126
treef8bc09379c1a4dcbb0de0b7ab4f2e3dfede31599
parentaca68829d723a11f73b84d59401568015959f432
rs6000: Remove builtin mask check from builtin_decl [PR102347]

As the discussion in PR102347, currently builtin_decl is invoked so
early, it's when making up the function_decl for builtin functions,
at that time the rs6000_builtin_mask could be wrong for those
builtins sitting in #pragma/attribute target functions, though it
will be updated properly later when LTO processes all nodes.

This patch is to align with the practice i386 port adopts, also
align with r10-7462 by relaxing builtin mask checking in some places.

gcc/ChangeLog:

PR target/102347
* config/rs6000/rs6000-call.c (rs6000_builtin_decl): Remove builtin mask
check.

gcc/testsuite/ChangeLog:

PR target/102347
* gcc.target/powerpc/pr102347.c: New test.
gcc/config/rs6000/rs6000-call.c
gcc/testsuite/gcc.target/powerpc/pr102347.c [new file with mode: 0644]