BasicAA doesn't need to know about memset_pattern16. Since this rule was added, we've added attributes which are sufficient to encode all relevant aliasing facts. (Well, except for the ones encoded in MemoryLocation.cpp w.r.t. access size.)
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Actually, this patch is slightly wrong. The problem is that argument 0 of memset_pattern16 should be Mod, not ModRef. We don't have the equivalent of a writeonly attribute today.
I still think the rest of the change is worthwhile, but I will have to leave the Mod return special case in BasicAA.