[InstCombine] Don't canonicalize (gep i8* X, -(ptrtoint Y)) as (inttoptr...
[InstCombine] Don't canonicalize (gep i8* X, -(ptrtoint Y)) as (inttoptr (sub (ptrtoint X), (ptrtoint Y))) It's just a wrong thing to do. We introduce inttoptr where there were none, which results in loosing all provenance information because we no longer have a GEP{i,}, and pessimize all future optimizations, because we are basically not allowed to look past `inttoptr`. (gep i8* X, -(ptrtoint Y)) *is* the canonical form. So just drop this fold. Noticed while reviewing D98120.
Loading
Please sign in to comment