On 10/14/2015 08:22 PM, Richard Biener wrote:
I think you could trigger bogus CSE of dereferences of literal addresses
from different address-spaces.

Good catch.  You're spot on with that.


r~


int test(void)
{
  int __seg_fs *f = (int __seg_fs *)16;
  int __seg_gs *g = (int __seg_gs *)16;
  return *f + *g;
}

test:
        movl    %fs:16, %eax
        addl    %eax, %eax
        ret


Reply via email to