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

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Martin Sebor from comment #4)
> Confirmed on powerpc64le:
> 
> $ /build/gcc-trunk/gcc/xgcc -B /build/gcc-trunk/gcc -O3 -S -Wall -Wextra
> -Wpedantic -mcpu=power8 -o/dev/stdout
> /src/gcc/trunk/gcc/testsuite/gcc.target/powerpc/pr60203.c
>       .file   "pr60203.c"
>       .machine power8
>       .abiversion 2
>       .section        ".toc","aw"
>       .section        ".text"
>       .align 2
>       .p2align 4,,15
>       .globl pack
>       .type   pack, @function
> pack:
>       xxpermdi 0,2,1,0
>       addi 9,1,-16
>       xxpermdi 0,0,0,2
>       stxvd2x 0,0,9
>       lfd 1,-16(1)
>       lfd 2,-8(1)
>       blr
>       .long 0
>       .byte 0,0,0,0,0,0,0,0
>       .size   pack,.-pack
>       .align 2
>       .p2align 4,,15
>       .globl unpack_0
>       .type   unpack_0, @function
> unpack_0:
>       blr
>       .long 0
>       .byte 0,0,0,0,0,0,0,0
>       .size   unpack_0,.-unpack_0
>       .align 2
>       .p2align 4,,15
>       .globl unpack_1
>       .type   unpack_1, @function
> unpack_1:
>       fmr 1,2
>       blr
>       .long 0
>       .byte 0,0,0,0,0,0,0,0
>       .size   unpack_1,.-unpack_1
>       .ident  "GCC: (GNU) 6.0.0 20160113 (experimental)"
>       .section        .note.GNU-stack,"",@progbits

Can you properly bisect it then?  Still can't reproduce with a cross from
x86_64.

Does on native .0341.fre properly contain just

pack (double a, double aa)
{
  double u$d$0;
  union u_ld u;

  <bb 2>:
  u.d[1] = aa_4(D);
  u ={v} {CLOBBER};
  return a_2(D);

}

or do we have some odd host dependency in early opts until here?

Reply via email to