https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101322
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Peter Bergner <berg...@gcc.gnu.org>: https://gcc.gnu.org/g:2985049049f12b0aa3366ca244d387820385b9e8 commit r13-2331-g2985049049f12b0aa3366ca244d387820385b9e8 Author: Peter Bergner <berg...@linux.ibm.com> Date: Wed Aug 31 21:14:36 2022 -0500 rs6000: Don't ICE when we disassemble an MMA variable [PR101322] When we expand an MMA disassemble built-in with C++ using a pointer that is cast to a valid MMA type, the type isn't passed down to the expand machinery and we end up using the base type of the pointer which leads to an ICE. This patch enforces we always use the correct MMA type regardless of the pointer type being used. 2022-08-31 Peter Bergner <berg...@linux.ibm.com> gcc/ PR target/101322 * config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_mma_builtin): Enforce the use of a valid MMA pointer type. gcc/testsuite/ PR target/101322 * g++.target/powerpc/pr101322.C: New test.