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

--- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> ---
Ok, I believe that even

char * const a;
int * const b;

void foo (void)
{
  a[1] = 1;
  b[2] = 1;
}

int bar (void)
{
  return a && b;
}

does not reproduces the issue.

$foo..ng:
        .prologue 1
        ldq $1,a($29)           !literal
        ldq $2,0($1)
        ldq $1,b($29)           !literal
        bis $31,$31,$31
        lda $4,1($2)
        ldq_u $3,1($2)
        ldq $5,0($1)
        lda $1,1($31)
        insbl $1,$4,$1
        mskbl $3,$4,$3
        bis $1,$3,$1
        stq_u $1,1($2)
        lda $1,1($31)
        stl $1,8($5)
        ret $31,($26),1

Reply via email to