This is an archive of the discontinued LLVM Phabricator instance.

[Attributor] Don't modify functions outside of the current SCC
AbandonedPublic

Authored by aeubanks on Apr 7 2021, 5:09 PM.

Diff Detail

Event Timeline

aeubanks created this revision.Apr 7 2021, 5:09 PM
aeubanks requested review of this revision.Apr 7 2021, 5:09 PM
Herald added a reviewer: sstefan1. · View Herald Transcript
Herald added a reviewer: baziotis. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
jdoerfert accepted this revision.Apr 7 2021, 5:13 PM

Thanks a lot for tracking this down!

LGTM, two nits though: can we include the reproducer as test please, and below.

llvm/include/llvm/Transforms/IPO/Attributor.h
1346

Can you add a doxygen comment here describing when/why we sometimes cannot change a use.

This revision is now accepted and ready to land.Apr 7 2021, 5:13 PM

I'm not actually sure that this is the right change, it was more of a "does something like this make sense"

Updating the tests, this is doing something wrong since it's replacing a bunch of values with undef. We'd probably need to look at all of the callers to see if they're doing the right thing.

I'm not actually sure that this is the right change, it was more of a "does something like this make sense"

Updating the tests, this is doing something wrong since it's replacing a bunch of values with undef. We'd probably need to look at all of the callers to see if they're doing the right thing.

I don't follow, sorry.

aeubanks planned changes to this revision.Jun 1 2021, 9:42 PM