https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83203
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |needs-bisection Status|UNCONFIRMED |NEW Last reconfirmed| |2017-11-29 CC| |jakub at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Target Milestone|--- |8.0 Summary|Inefficient int to avx2 |[8 Regression] Inefficient |vector conversion |int to avx2 vector | |conversion Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. On trunk we even genrate foo: .LFB5186: .cfi_startproc pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_cfa_register 6 andq $-32, %rsp movq %rdi, -8(%rsp) vmovq -8(%rsp), %xmm1 vmovq %xmm1, %xmm0 vmovdqa %xmm0, %xmm0 leave huh... We expand from foo (long int x) { __m256i _2; <bb 2> [100.00%]: _2 = {x_1(D)}; return _2; that's a regression on trunk (gcc7 code confirmed). Probably caused by the vec_init expansion reorg?