[Bug target/84627] powerpc excess padding generated for POWER9 target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84627 Nicholas Piggin changed: What|Removed |Added Resolution|INVALID |FIXED --- Comment #4 from Nicholas Piggin --- After some more discussion and testing, it was determined that for POWER9, 16 bytes of padding is sufficient for these small loops and was adjusted. https://gcc.gnu.org/viewcvs/gcc?view=revision=258260 Author: segher Date: Mon Mar 5 19:11:54 2018 UTC (3 hours, 27 minutes ago) Log Message: rs6000: Don't align tiny loops to 32 bytes for POWER9 For POWER4..POWER8 we align loops of 5..8 instructions to 32 bytes (instead of to 16 bytes) because that executes faster. This is no longer the case on POWER9, so we can just as well only align to 16 bytes. * config/rs6000/rs6000.c (rs6000_loop_align): Don't align tiny loops to 32 bytes when compiling for POWER9.
[Bug target/84627] powerpc excess padding generated for POWER9 target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84627 Segher Boessenkool changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED CC||segher at gcc dot gnu.org Resolution|--- |INVALID --- Comment #3 from Segher Boessenkool --- The nops are to align the following code (a jump target) to the correct alignment. GAS used an ori 2,2,0 for the last nop, to make sure a new dispatch group starts after it, for p8. Does your GAS support power9? Does binutils trunk behave this way too? Plain nop is ever so slightly more efficient, so it is prefered. The generated code is std 2,24(1) .p2align 5,,31 .L3: mr 12,30 mtctr 30 addi 31,31,-1 bctrl so there is nothing GCC can do about this. Please follow up to binutils bugzilla if necessary. Thanks!
[Bug target/84627] powerpc excess padding generated for POWER9 target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84627 --- Comment #2 from Nicholas Piggin --- Ah sorry, target is powerpc64le
[Bug target/84627] powerpc excess padding generated for POWER9 target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84627 Andrew Pinski changed: What|Removed |Added Keywords||missed-optimization Target||powerpc --- Comment #1 from Andrew Pinski --- Is this little endian or big-endian? 32bit or 64bit?