rjmccall added a comment.

I agree with Eli that this isn't obviously a legal transformation.  
`llvm.ptrmask` appears to make semantic guarantees about e.g. the pointer after 
the mask referring to the same underlying object, which means we can only 
safely emit it when something about the source program makes that guarantee.  
It's not at all clear that C does so for an expression like `(T*) ((intptr_t) x 
& N)`.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D64128/new/

https://reviews.llvm.org/D64128



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to