Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] [LLVM] LoopUnswitch + SwitchInst"
2012 May 24
3
[LLVMdev] make check-lit + grep escape characters
I just want to update test/Transforms/LowerSwitch/feature.ll that
already uses grep.
It uses grep + count, probably due to shorter construction.
-Stepan.
Eric Christopher wrote:
>
> On May 24, 2012, at 12:12 AM, Stepan Dyatkovskiy wrote:
>
>> Hi all. I found that if you want to use grep with escape characters in
>> lit, you should pass it within the double slash (\\). Since
2012 Jan 21
4
[LLVMdev] How to force the creation of arrays with zeroes?
Hi Chris. There is no zero arrays created. Probably this patch is not optimal and I'll reworked it today. But the main idea is keep a single zero-item when ConstantAggregateZero was wrapped and return this zero item as result of getOperand call.
Note that wrapper has no parent classes, it has very local and short lifetime (method body), it exists outside the LLVMContext and needed for
2015 Jul 16
3
[LLVMdev] why LoopUnswitch pass does not constant fold conditional branch and merge blocks
Hi,
I have a general question on LoopUnswtich pass.
Consider the following IR snippet:
define i32 @test(i1 %cond) {
br label %loop_begin
loop_begin:
br i1 %cond, label %loop_body, label %loop_exit
loop_body:
br label %do_something
do_something:
call void @some_func() noreturn nounwind
br label %loop_begin
loop_exit:
ret i32 0
}
declare void @some_func() noreturn
After running
2012 May 24
0
[LLVMdev] make check-lit + grep escape characters
On Thu, May 24, 2012 at 12:44 AM, Stepan Dyatkovskiy <stpworld at narod.ru>wrote:
> I just want to update test/Transforms/LowerSwitch/feature.ll that
> already uses grep.
> It uses grep + count, probably due to shorter construction.
>
If you are touching such a test, please convert it to FileCheck. Use of
'grep' in tests is an endless source of problems, and we are
2011 Nov 09
3
[LLVMdev] [LLVM, loop-unswitch tests] preserve-analyses.ll, strange PHI instruction.
Hi all.
Looking at test/Transforms/LoopUnswitch/preserve-analyses.ll, I found
improper phi instruction at string #122:
%call.i25.lcssa48 = phi i8* [ %call.i25, %if.then31.i.i ], [ %call.i25,
%if.then31.i.i ] ; <i8*> [#uses=0]
Is it trick or mistake?
-Stepan.
2014 Oct 12
2
[LLVMdev] Debug Info and MergeFunctions Transform
Hi David,
After merging we always remove body of "G" (function we want to merge with "existing" one).
In case with "writeThunk" we could add such info for "G", but it would be just a single string: reference to first string of "G".
Ideal way here, is to merge debug information itself, and provide "F" with information for "G"
2012 Jan 22
2
[LLVMdev] Fwd: How to force the creation of arrays with zeroes?
Yep check out PR1324. Doing something like this would be a great improvement.
-Chris
On Jan 21, 2012, at 9:42 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Anton, in a solution without CAZ, isNullValue can just return true when it
> sees the special "this ConstantArray is all zero" flag. So all the places that
> now look for CAZ can just use isNullValue instead
2011 Sep 08
2
[LLVMdev] [LLVM, llvm-mc, AsmParser] Symbol locations.
Hi everybody. I found that there are some problems with symbol location in AsmParser.
1. We need to know where symbol was declared.
2. We need to know where symbol was defined first time.
There are two ways:
1. Add helper table to the parser with additional symbol info. But it takes additional memory consumption.
2. Add user tag (void*) for MCSymbol object. As I understood MCSymbol can live
2011 Sep 08
0
[LLVMdev] [LLVM, llvm-mc, AsmParser] Symbol locations.
Now I see, that its to so trivial as I thought before. There are a lots of parser extensions that creates the symbols. And in each place we need insert add its location info. I also found that MCContext has several create symbols methods, but all these methods uses CreateSymbol private method.
So I see two possible ways here:
1. To aggregate all GetOrCreate-like symbol methods inside the
2011 Sep 16
3
[LLVMdev] [LLVM] make check-lit never finished...
Hi. I just want to know does anyone has the same problem or not.
After running "make check-lit" tests are stopped at 61th percent (Linker tests). Each time it stops on different tests.
Thanks.
--
Regards,
Stepan
2012 Jan 22
0
[LLVMdev] Fwd: How to force the creation of arrays with zeroes?
Hi Chris. The main question is how to implement ConstantAggregateXXXXX::getOperand? Should it be empty collection, or it must return the item aggregated?
-Stepan.
22.01.2012, 04:43, "Chris Lattner" <clattner at apple.com>:
> Yep check out PR1324. Doing something like this would be a great improvement.
>
> -Chris
>
> On Jan 21, 2012, at 9:42 AM, Duncan Sands
2013 Oct 27
2
[LLVMdev] Two questions about MergeFunctions pass
Hi Nick.
Can you help me sort some things out in MergeFucntions pass. While I was
working on MergeFunctions pass I got several questions. I hardly tried
to find all the answers by myself, but there are still two questions
without answer.
It is about merging functions itself (not comparing).
First question is:
Why sometimes we use RAUW and sometimes replaceDirectCallers. Would you
help me
2014 Jan 17
6
[LLVMdev] MergeFunctions: reduce complexity to O(log(N))
Hi all,
I propose simple improvement for MergeFunctions pass, that reduced its
complexity from O(N^2) to O(log(N)), where N is number of functions in
module.
The idea, is to replace the result of comparison from "bool" to
"-1,0,1". In another words: define order relation on functions set.
To be sure, that functions could be comparable that way, we have to
prove that order
2014 Jan 21
3
[LLVMdev] MergeFunctions: reduce complexity to O(log(N))
Hi Stepan,
This looks interesting! Some high-level comments:
- Please post the patch untarred next time. Also, I'm not sure if it's typical
to provide supporting documents in .doc format; while many of us probably
have access to Word, a more portable and email-friendly format (like text,
markdown or rst) is probably better.
- Have you profiled this? What's the speedup? I
2011 Nov 09
1
[LLVMdev] [LLVM, loop-unswitch tests] preserve-analyses.ll, strange PHI instruction.
OK. Thanks. And if I removed "case 4:" for example. Need I scan all phi
nodes and fix it, by removing one predecessor (if it exists) to switch's
parent block?
-Stepan.
Nick Lewycky wrote:
> Stepan Dyatkovskiy wrote:
>> Hi all.
>>
>> Looking at test/Transforms/LoopUnswitch/preserve-analyses.ll, I found
>> improper phi instruction at string #122:
>>
2014 Feb 03
4
[LLVMdev] MergeFunctions: reduce complexity to O(log(N))
Hi all,
Previous patch has been split onto series of small changes.
On each stage (after each patch) MergeFunctions pass is compilable and
stable.
Please find patches in attachment for review.
To apply all patches at once, use "apply-patches.sh" script as follows:
0. Place "apply-patches.sh" in same directory with patches.
1. cd <llvm-sources-dir>
2. "bash
2011 Nov 09
0
[LLVMdev] [LLVM, loop-unswitch tests] preserve-analyses.ll, strange PHI instruction.
Stepan Dyatkovskiy wrote:
> Hi all.
>
> Looking at test/Transforms/LoopUnswitch/preserve-analyses.ll, I found
> improper phi instruction at string #122:
> %call.i25.lcssa48 = phi i8* [ %call.i25, %if.then31.i.i ], [ %call.i25,
> %if.then31.i.i ] ;<i8*> [#uses=0]
> Is it trick or mistake?
What's improper about it?
The block may have two predecessors, both of which
2012 Aug 22
1
[LLVMdev] buildbot failure in LLVM on clang-native-mingw64-win7
Guys, you can exclude me (dyatkovskiy) from this list, since I reverted
my changes in r162354.
-Stepan.
llvm.buildmaster at lab.llvm.org wrote:
> The Buildbot has detected a new failure on builder clang-native-mingw64-win7 while building cfe.
> Full details are available at:
> http://lab.llvm.org:8011/builders/clang-native-mingw64-win7/builds/876
>
> Buildbot URL:
2012 Jan 22
1
[LLVMdev] Fwd: How to force the creation of arrays with zeroes?
Hi Stephan,
I've been thinking about this a bit and have some more specific ideas, I'll write up a design and maybe implement it over the next few days.
-Chris
On Jan 21, 2012, at 11:50 PM, Stepan Dyatkovskiy <STPWORLD at narod.ru> wrote:
> Hi Chris. The main question is how to implement ConstantAggregateXXXXX::getOperand? Should it be empty collection, or it must return the
2013 Oct 29
0
[LLVMdev] Two questions about MergeFunctions pass
On 27 October 2013 11:30, Stepan Dyatkovskiy <stpworld at narod.ru> wrote:
> Hi Nick.
>
> Can you help me sort some things out in MergeFucntions pass. While I was
> working on MergeFunctions pass I got several questions. I hardly tried to
> find all the answers by myself, but there are still two questions without
> answer.
>
> It is about merging functions itself