CallGraph: Fix IgnoreAssumeLikeCalls option to Function::hasAddressTaken
This was added in 29e2d946 and likely never worked in a useful way. The test added for it fails when converted to opaque pointers, since the lifetime intrinsic now directly uses the address. The code was only trying to handle a user indirectly through a bitcast instruction. That would never have been useful; a bitcast of a global value would be folded to a ConstantExpr cast. I also don't understand why it was special casing use_empty on the cast. Relax the check to be either BitCastOperator or AddrSpaceCastOperator. In practice, BitCastOperator won't appear today. I believe the change in parallel_deletion_cg_update is a correct improvement but I didn't fully follow it. .omp_outlined..0 is used in a constant expression cast to a call which ends up getting deleted.
parent
6392cf33
Please register or sign in to comment