https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71347
Bug ID: 71347 Summary: [7 regression] Performance drop after r235513 on x86-64 in 32-bit mode. Product: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: ysrumyan at gmail dot com Target Milestone: --- We noticed significant regression (more then 10%) after this revision whicn can be illustrated on the following simple test-case )attached) - one additional instruction in innermost loop (scalar replacement is not recognized): before r235513 r235513 .L6: movsd X.1861+8, %xmm2 movsd -8(%eax), %xmm2 addl $8, %eax movsd X.1861+8, %xmm1 .L3: mulsd %xmm2, %xmm0 mulsd %xmm1, %xmm2 cmpl $X.1861+64, %eax addl $8, %eax movsd %xmm0, (%eax) movsd %xmm2, -8(%eax) jne .L6 cmpl $X.1861+72, %eax jne .L6