This is an archive of the discontinued LLVM Phabricator instance.

[NFCI][X86] Drop "atom"/"slm" target tuning "features", derive them from CPU string
AbandonedPublic

Authored by lebedev.ri on Jun 11 2021, 4:10 AM.

Details

Summary

It isn't obvious to me why these have to be features?
We know the cpu name, and as the not-failing tests show,
that is enough for X86Subtarget::isSLM()/X86Subtarget::isAtom().

Diff Detail

Event Timeline

lebedev.ri created this revision.Jun 11 2021, 4:10 AM
lebedev.ri requested review of this revision.Jun 11 2021, 4:10 AM

I've no objections, but really I'd like to see the isAtom() and isSLM() methods removed entirely - both appear to have been added as perf regression hacks over the years, and then reused where proper feature flags should have been added instead.

I've no objections, but really I'd like to see the isAtom() and isSLM() methods removed entirely - both appear to have been added as perf regression hacks over the years, and then reused where proper feature flags should have been added instead.

At least some of their uses are to pick CPU-specific cost model over the generic worst-case one.
I'm not sure if this is something that can be just dropped.

craig.topper added inline comments.Jun 11 2021, 9:08 AM
llvm/lib/Target/X86/X86Subtarget.h
810

Don’t we also accept “bonnell”?

811

Don’t we also accept “silvermont”?

lebedev.ri abandoned this revision.Jun 11 2021, 9:29 AM

Oh i see. Thanks.