Displaying 20 results from an estimated 40 matches for "patternmatcher".
2012 Feb 09
2
[LLVMdev] Your commit 149912 "Remove some dead code and tidy things up"...
Hi Chris, this was a very tempting commit to make, unfortunately it broke
pattern matching of vectors of booleans. The problem is that a
ConstantDataVector is only formed if the element type is one of i8, i16, etc.
So vectors of funky types, or not so funky types like i1, are no longer
matched. I noticed this while working on PR11948. The good thing is that
the testcase there no longer crashes
2018 Apr 20
0
llvm PatternMatch Geps?
Hi llvm-dev,
Does LLVM's PatternMatch library support matching on GetElementPointer
Instructions? I can't find anything in the API that looks promising.
Thank you!
Eli
2012 Feb 10
0
[LLVMdev] Your commit 149912 "Remove some dead code and tidy things up"...
On Feb 9, 2012, at 1:22 PM, Duncan Sands wrote:
> Hi Chris, this was a very tempting commit to make, unfortunately it broke
> pattern matching of vectors of booleans. The problem is that a
> ConstantDataVector is only formed if the element type is one of i8, i16, etc.
> So vectors of funky types, or not so funky types like i1, are no longer
> matched. I noticed this while working
2012 Feb 10
1
[LLVMdev] Your commit 149912 "Remove some dead code and tidy things up"...
Hi Chris,
>> Hi Chris, this was a very tempting commit to make, unfortunately it broke
>> pattern matching of vectors of booleans. The problem is that a
>> ConstantDataVector is only formed if the element type is one of i8, i16, etc.
>> So vectors of funky types, or not so funky types like i1, are no longer
>> matched. I noticed this while working on PR11948. The
2017 Nov 10
5
RFC: [GlobalISel] Towards a generic MI combiner framework
Hi everyone,
This RFC concerns the design and architecture of a generic machine instruction combiner/optimizer framework to be developed as part of the GISel pipeline. As we transition from correctness and reducing the fallback rate to SelectionDAG at -O0, we’re now starting to think about using GlobalISel with optimizations enabled. There are obviously many parts to this story as optimizations
2019 Jan 31
6
[RFC] Vector Predication
Hi,
There is now an RFC for a roadmap to native vector predication support
in LLVM and a prototype implementation:
https://reviews.llvm.org/D57504
The prototype demonstrates:
- Predicated vector intrinsics with an explicit mask and vector length
parameter on IR level.
- First-class predicated SDNodes on ISel level. Mask and vector length
are value operands.
- An incremental strategy
2019 May 03
2
git llvm push?
Hey,
First time using LLVM's git repo. Does 'git llvm push' take a really long
time to work? I've tried to push a couple of times now and receive a
message like:
<scrubbed> llvm-project/llvm> git llvm push
Pushing 1 commit:
2159c44 Update PatternMatcher for FNeg
Committed 2159c44 to svn.
<scrubbed> llvm-project/llvm>
The svn repo never seems to update though. Any ideas?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190503/7e75f131/attachment.htm...
2012 Oct 07
0
[LLVMdev] Undefined behavior in Operator class?
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Sean Silva
> Subject: Re: [LLVMdev] Undefined behavior in Operator class?
> > > In this function, the `this` pointer is not pointing at an Operator
> > > object. That's undefined behavior, right?
> > Yes.
> Well then I guess the next step is how to fix it.
I tried
2012 Oct 07
2
[LLVMdev] Undefined behavior in Operator class?
>> In this function, the `this` pointer is not pointing at an Operator
>> object. That's undefined behavior, right?
>
> Yes.
Well then I guess the next step is how to fix it.
Maybe someone with a bit more experience with the Operator code and
how it is used could make a suggestion? (I just stumbled upon this
code yesterday while doing some refactoring, so I'm not
2019 May 03
3
git llvm push?
...g LLVM's git repo. Does 'git llvm push' take a really long
>> time to work? I've tried to push a couple of times now and receive a
>> message like:
>>
>> <scrubbed> llvm-project/llvm> git llvm push
>> Pushing 1 commit:
>> 2159c44 Update PatternMatcher for FNeg
>>
>> Committed 2159c44 to svn.
>> <scrubbed> llvm-project/llvm>
>>
>> The svn repo never seems to update though. Any ideas?
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm...
2013 Jul 22
0
[LLVMdev] Inverse of ConstantFP::get and similar functions?
On Mon, Jul 22, 2013 at 10:19 AM, Stephen Lin <swlin at post.harvard.edu> wrote:
> Hi,
>
> I noticed that ConstantFP::get automatically returns the appropriately
> types Constant depending on the LLVM type passed in (i.e. if called
> with a vector, it returns a splat vector with the given constant).
>
> Is there any simple way to do the inverse of this function? i.e.,
2017 Nov 18
2
RFC: [GlobalISel] Towards a generic MI combiner framework
> On Nov 13, 2017, at 11:53 AM, Vedant Kumar via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hi Amara,
>
>> On Nov 10, 2017, at 9:12 AM, Amara Emerson via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>>
>> Hi everyone,
>>
>> This RFC concerns the design and architecture of a generic machine
2014 Dec 23
4
[LLVMdev] [RFC] Stripping unusable intrinsics
On Dec 23, 2014, at 10:28 AM, Chris Bieneman <beanz at apple.com> wrote:
>>> It should be straight-forward to have something like LLVMInitializeX86Target/RegisterTargetMachine install the intrinsics into a registry.
>>
>> I tried doing that a few years ago. It’s not nearly as easy as it sounds because we’ve got hardcoded references to various target intrinsics scattered
2008 Nov 09
2
[LLVMdev] m_Not Pattern Question
I have a question about the pattern matching stuff that's used in the
Instruction Combiner. If I have code like this:
if (match(B, m_Select(m_Value(), m_ConstantInt(0),
m_ConstantInt(-1)))) {
if (match(C, m_Not(m_Value(B))))
return SelectInst::Create(cast<User>(B)->getOperand(0), D, A);
and we match, the program fails during the
2012 Oct 07
1
[LLVMdev] Undefined behavior in Operator class?
> I tried removing the method and rebuilding. The resulting compilation errors were easily fixed by changing the few occurrences in:
> include/llvm/Support/PatternMatch.h
> lib/Analysis/BasicAliasAnalysis.cpp
> lib/Analysis/ScalarEvolution.cpp
> lib/Analysis/ValueTracking.cpp
> lib/CodeGen/ScheduleDAGInstrs.cpp
>
2014 Dec 23
5
[LLVMdev] [RFC] Stripping unusable intrinsics
> On Dec 23, 2014, at 10:54 AM, Bob Wilson <bob.wilson at apple.com> wrote:
>
>
>> On Dec 23, 2014, at 10:41 AM, Chris Lattner <clattner at apple.com <mailto:clattner at apple.com>> wrote:
>>
>> On Dec 23, 2014, at 10:28 AM, Chris Bieneman <beanz at apple.com <mailto:beanz at apple.com>> wrote:
>>>>> It should be
2017 Nov 28
2
RFC: [GlobalISel] Towards a generic MI combiner framework
Thanks for the suggestions Vedant. Synthetic debug info is an interesting idea that sounds worthwhile. Could this be implemented as a “wrapper” pass that automatically decorates debug info before and after a specific pass run in opt (or pipeline of passes)? It might be useful to be able to easily enable this for a wide range of tests without having to manually modify each run line, perhaps as an
2013 Jul 22
6
[LLVMdev] Inverse of ConstantFP::get and similar functions?
Hi,
I noticed that ConstantFP::get automatically returns the appropriately
types Constant depending on the LLVM type passed in (i.e. if called
with a vector, it returns a splat vector with the given constant).
Is there any simple way to do the inverse of this function? i.e.,
given a llvm::Value, check whether it is either a scalar of the given
constant value or a splat vector with the given
2019 Feb 01
3
[RFC] Vector Predication
Hi,
On 1/31/19 11:20 PM, Jacob Lifshay wrote:
> We're in-progress designing a RISC-V extension
> (http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2019-January/000433.html)
> that would have variable-length vectors of short vectors (1 to 4):
> <VL x <4 x float>>
> where each predicate bit masks out a whole short vector. We're using
> this extension
2008 Nov 09
0
[LLVMdev] m_Not Pattern Question
Bill Wendling wrote:
> I have a question about the pattern matching stuff that's used in the
> Instruction Combiner. If I have code like this:
>
> if (match(B, m_Select(m_Value(), m_ConstantInt(0),
> m_ConstantInt(-1)))) {
> if (match(C, m_Not(m_Value(B))))
> return SelectInst::Create(cast<User>(B)->getOperand(0), D, A);
>
> and we