[PATCH] Improve DAG combine pass on certain IR vector patterns
echristo at gmail.com
Fri Jan 16 14:10:48 PST 2015
On Fri Jan 16 2015 at 2:10:19 PM Eric Christopher <echristo at gmail.com>
> On Fri Jan 16 2015 at 1:57:34 PM Fiona Glaser <fglaser at apple.com> wrote:
>> > 1. Run your patch through clang-format please. The patch does not
>> follow the LLVM formatting guidelines.
>> Done, and changed per Mehdi’s suggestions.
>> > 2. What is the impact of this on arm64 and armv7s generated code?
>> Although the approach makes sense to me, I want to be sure we do not
>> degrade other targets. Note that I do not expect you to run tests if you
>> cannot :).
>> I don’t think it should even affect any target that doesn’t have
>> canonical vector sizes of both N and 2*N, for a data type of N/2 or
>> smaller. Otherwise the case this patch targets can’t come up.
>> 3. What are the runtime performance impact on x86_64, with and without
>> I’m not sure in general; this affects a few very specific vector
>> constructs that were being pessimized.
>> 4. Add a run line for avx too:
>>> +; RUN: llc < %s -march=x86-64 -mattr=+avx2 | FileCheck %s
>> 5. Should we use a triple instead of march?
>> Do triples let you specify particular attributes (AVX, etc?)
> Not for sorta. I
> t depends on if it's been hacked into the triple (i.e. darwin x86_64h) or
> set as the default for an operating system. But in this case I think just
> x86_64 and -mattr is the right way to go here.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-commits