Michael Kuperstein via llvm-dev
2016-Nov-30 19:53 UTC
[llvm-dev] Loop Vectorize: Testing cost model driven transformations
Yeah, this makes a lot of sense, -mcpu=generic (as opposed to -mcpu=native) is the sane default. I guess I was just expecting an x86 host to get a "generic x86 TTI" (whatever that means), not a "generic TTI". On Wed, Nov 30, 2016 at 11:49 AM, Matthew Simpson <mssimpso at codeaurora.org> wrote:> That's right. In your example, if the target isn't specified anywhere, an > llc invocation would be equivalent to "llc -mtriple=x86_64-unknown-linux-gnu > -mcpu=generic". TTI queries (in e.g., CodeGenPrepare) would be based on > this. From opt, if the target triple is left unspecified, we will use the > "base" TTI implementation (not x86). > > -- Matt > > On Wed, Nov 30, 2016 at 2:07 PM, Michael Kuperstein via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> Right, let's say what we get from llc --version is: >> >> Default target: x86_64-unknown-linux-gnu >> Host CPU: haswell >> >> So, what we currently do is use the default target (which is normally the >> host target), but ignore the host cpu? >> >> Michael >> >> On Wed, Nov 30, 2016 at 10:58 AM, Matthew Simpson < >> mssimpso at codeaurora.org> wrote: >> >>> >>> On Wed, Nov 30, 2016 at 1:04 PM, Michael Kuperstein via llvm-dev < >>> llvm-dev at lists.llvm.org> wrote: >>> >>>> So, just to make sure I understand, what is getting a specific TTI in >>>> llc triggered off? -mcpu? >>> >>> >>> Right, TTI would be determined by the target specified in the IR or set >>> explicitly with the -m flags. My understanding is that if the target is >>> left unspecified in the IR and not set with the -m flags, llc will generate >>> code for the default target listed in the output of "llc --version". >>> >>> -- Matt >>> >> >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161130/746aa017/attachment.html>
Michael Kuperstein via llvm-dev
2016-Dec-02 18:30 UTC
[llvm-dev] Loop Vectorize: Testing cost model driven transformations
It isn't relevant, really, Matt just brought up "llc --version" as a way to show the default triple and native cpu. The same question ("Which TTI do/should we get with -mcpu=generic / when not providing -mcpu at all") applies to opt. On Fri, Dec 2, 2016 at 9:53 AM, Adam Nemet <anemet at apple.com> wrote:> Why is llc relevant to this thread, is this just an aside? > Target-independent tests for LV are formulated with opt. > > On Nov 30, 2016, at 11:53 AM, Michael Kuperstein via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Yeah, this makes a lot of sense, -mcpu=generic (as opposed to > -mcpu=native) is the sane default. > I guess I was just expecting an x86 host to get a "generic x86 TTI" > (whatever that means), not a "generic TTI". > > On Wed, Nov 30, 2016 at 11:49 AM, Matthew Simpson <mssimpso at codeaurora.org > > wrote: > >> That's right. In your example, if the target isn't specified anywhere, an >> llc invocation would be equivalent to "llc -mtriple=x86_64-unknown-linux-gnu >> -mcpu=generic". TTI queries (in e.g., CodeGenPrepare) would be based on >> this. From opt, if the target triple is left unspecified, we will use the >> "base" TTI implementation (not x86). >> >> -- Matt >> >> On Wed, Nov 30, 2016 at 2:07 PM, Michael Kuperstein via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >>> Right, let's say what we get from llc --version is: >>> >>> Default target: x86_64-unknown-linux-gnu >>> Host CPU: haswell >>> >>> So, what we currently do is use the default target (which is normally >>> the host target), but ignore the host cpu? >>> >>> Michael >>> >>> On Wed, Nov 30, 2016 at 10:58 AM, Matthew Simpson < >>> mssimpso at codeaurora.org> wrote: >>> >>>> >>>> On Wed, Nov 30, 2016 at 1:04 PM, Michael Kuperstein via llvm-dev < >>>> llvm-dev at lists.llvm.org> wrote: >>>> >>>>> So, just to make sure I understand, what is getting a specific TTI in >>>>> llc triggered off? -mcpu? >>>> >>>> >>>> Right, TTI would be determined by the target specified in the IR or set >>>> explicitly with the -m flags. My understanding is that if the target is >>>> left unspecified in the IR and not set with the -m flags, llc will generate >>>> code for the default target listed in the output of "llc --version". >>>> >>>> -- Matt >>>> >>> >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> llvm-dev at lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>> >>> >> > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161202/590e4ac0/attachment.html>
Reasonably Related Threads
- Loop Vectorize: Testing cost model driven transformations
- Loop Vectorize: Testing cost model driven transformations
- Loop Vectorize: Testing cost model driven transformations
- Loop Vectorize: Testing cost model driven transformations
- Loop Vectorize: Testing cost model driven transformations