https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109116

--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by kishan parmar <kis...@gcc.gnu.org>:

https://gcc.gnu.org/g:69a2c243dd2cf9f77150c0eb86dfbc0931876bc1

commit r16-1782-g69a2c243dd2cf9f77150c0eb86dfbc0931876bc1
Author: Peter Bergner <berg...@linux.ibm.com>
Date:   Mon Jun 30 19:01:25 2025 +0530

    rs6000: Disassemble opaque modes using subregs to allow optimizations

    PR109116  reveals  missed optimizations  when using  unspecs to  extract
    vector  components  from opaque-mode  variables. Since RTL optimizers do
    not understand unspecs, this leads to redundant register copies. Replace
    unspecs with subregs, which  are well understood by RTL passes, allowing
    optimizations to take place.

    2025-06-30  Peter Bergner  <berg...@linux.ibm.com>

    gcc/
            PR target/109116
            * config/rs6000/mma.md (unspec): Delete UNSPEC_MMA_EXTRACT.
            (vsx_disassemble_pair): Expand into a vector register sized subreg.
            (mma_disassemble_acc): Likewise.
            (*vsx_disassemble_pair): Delete.
            (*mma_disassemble_acc): Likewise.
  • [Bug target/109116] vector_pair... cvs-commit at gcc dot gnu.org via Gcc-bugs

Reply via email to