https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126438
Avinash Jayakar <avinashd at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |avinashd at gcc dot gnu.org
--- Comment #1 from Avinash Jayakar <avinashd at gcc dot gnu.org> ---
I see that the REGISTER_NAMES macro is defined separately for darwin.h as the
assembler for darwin expects the register names differently.
This should be the minimal fix to get a successful build.
diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h
index 175b6b1c3e0..8614052d8ca 100644
--- a/gcc/config/rs6000/darwin.h
+++ b/gcc/config/rs6000/darwin.h
@@ -295,7 +295,9 @@
/* cr0..cr7 */ \
"cr0", "cr1", "cr2", "cr3", "cr4", "cr5", "cr6", "cr7", \
/* vrsave vscr sfp */
\
- "vrsave", "vscr", "sfp" \
+ "vrsave", "vscr", "sfp", \
+ /* DMRs */ \
+ "dm0", "dm1", "dm2", "dm3", "dm4", "dm5", "dm6", "dm7" \
}
/* This outputs NAME to FILE. */
But as I have seen previously (in PR126123), darwin uses a different assembler.
Therefore the dense math registers or any builtins supported with -mcpu=future
will not work right now.
(https://gcc.gnu.org/onlinedocs/gcc/PowerPC-AltiVec_002fVSX-Built-in-Functions-Available-on-Future-ISA.html)