https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87509
--- Comment #2 from Segher Boessenkool <segher at gcc dot gnu.org> --- Author: segher Date: Fri Oct 5 10:52:33 2018 New Revision: 264863 URL: https://gcc.gnu.org/viewcvs?rev=264863&root=gcc&view=rev Log: rs6000: Various fixes for the new fpscr builtins (PR87509) With these fixes all testcases test clean for me, both on powerpc64-linux {-m32,-m64} and on powerpc64le-linux, with all relevant -mcpu= settings. PR target/87509 * config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_SET_FPSCR_DRN): Use RS6000_BTM_DFP. * config/rs6000/rs6000.md (rs6000_set_fpscr_rn): Require the operand to be DImode. When using mffscrn, force the operand to a register. gcc/testsuite/ PR target/87509 * gcc.target/powerpc/test_fpscr_drn_builtin.c: Use hard_dfp instead of dfp_hw. Don't include <altivec.h>. * gcc.target/powerpc/test_fpscr_drn_builtin_error.c: Ditto. Require lp64. * gcc.target/powerpc/test_fpscr_rn_builtin.c: Don't include <altivec.h>. * gcc.target/powerpc/test_fpscr_rn_builtin_error.c: Ditto. * gcc.target/powerpc/test_mffsl.c: Ditto. Modified: trunk/gcc/ChangeLog trunk/gcc/config/rs6000/rs6000-builtin.def trunk/gcc/config/rs6000/rs6000.md trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.target/powerpc/test_fpscr_drn_builtin.c trunk/gcc/testsuite/gcc.target/powerpc/test_fpscr_drn_builtin_error.c trunk/gcc/testsuite/gcc.target/powerpc/test_fpscr_rn_builtin.c trunk/gcc/testsuite/gcc.target/powerpc/test_fpscr_rn_builtin_error.c trunk/gcc/testsuite/gcc.target/powerpc/test_mffsl.c