On 2024-09-08 18:01, Andrew Pinski wrote:
When I was implementing improvements into phiopt I ran into case where
objsz would fail now because we get:
tmp = PHI <CST0, CST1>
ptr = ptr + tmp

where before the pointer plus was inside each branch instead. So my
question is there any progress on implementing objsz with ranger or
has that work been put off?
I filed https://gcc.gnu.org/PR116556 for this. Do you have any start

Sorry I noticed it but couldn't get time to work on it. __bos should trivially handle this I think, I'm surprised that it doesn't.

As far as using ranger in __bos is concerned, I believe there was strong opposition to the idea and instead to continue evaluating sizes from first principles like we currently do in the tree-object-size pass. I think the concern was that ranger can be more aggressive in evaluation and assume no undefined behaviour whereas __bos tries to detect undefined behaviour whenever it can and is more conservative about computations.

of patches for this so it maybe it could be taken to finish? If not
then I am going to try to implement it since it blocks my work on
phiopt.

I'll be happy to review any changes you make to tree-object-size to fix this.

Thanks,
Sid

Reply via email to