This is an archive of the discontinued LLVM Phabricator instance.

Rename --icf-data and add a corresponding flag for functions
AbandonedPublic

Authored by espindola on Dec 13 2017, 4:15 PM.

Details

Summary

When we have --icf=safe we should be able to define --icf=all as a shorthand for --icf=safe --ignore-function-address-equality.

For now --ignore-function-address-equality is used only to control access to non preemptable symbols in shared libraries.

Diff Detail

Event Timeline

rafael created this revision.Dec 13 2017, 4:15 PM
ruiu added a comment.Dec 13 2017, 4:26 PM

There exists -icf=all, -icf=safe and -icf=none to choose ICF levels, and this patch adds other flags (-ignore-{data,function}-address-equality) to control ICF levels. It doesn't seems like the new flags are in line with the existing options. I'd keep the existing notation which is -icf=<something>.

If we use clang as a precedence, one candidate would be -icf=everything (just like -Weverything as opposed to -Wall) which would do more than -icf=all.

emaste added a reviewer: dim.Dec 18 2017, 7:46 AM
espindola commandeered this revision.Mar 15 2018, 8:46 AM
espindola added a reviewer: rafael.
espindola abandoned this revision.Mar 19 2018, 3:31 PM

This became D41644