Displaying 20 results from an estimated 4000 matches similar to: "struct size"
2017 Aug 11
2
PHI nodes and connected ICMp
Thank you for your answer! I tested your example, yes, perhaps I should
preserve some kind of tree to parse this start and end expressions for
induction variable... I was surprised, that SCEV cannot compute the
tripcount here. I thought, that all linear and maybe expressions with
multiplication are suitable for analysis.
2017-08-10 19:30 GMT+02:00 Sanjoy Das <sanjoy at google.com>:
> Hi
2017 Aug 13
2
PHI nodes and connected ICMp
To continue this topic:
sometimes SCEV's behavior is rather controversial : for loops with i
changing as i \=2 for example, he can't figure what the type of expressions
is, but surprisingly can determine max trip count. Shouldn't it be able to
detect or not detect these parameters at the same time?
2017-08-11 15:56 GMT+02:00 Anastasiya Ruzhanskaya <
anastasiya.ruzhanskaya at
2017 Aug 09
4
ind variable
This support was removed years ago from indvars. We don't need canonical
induction variables any more as all analysis are done on SCEVs. The SCEV
generator can transform them even without the need for explicit
canonical induction variables.
Best,
Tobias
On Wed, Aug 9, 2017, at 14:23, Anastasiya Ruzhanskaya via llvm-dev
wrote:
> The files of this strange pass are described here
>
2017 Sep 02
3
getelementptr
Ok, thank you. I have also one question about getelementptr. In different
versions of clang I see that sometimes array[i][i] is preceded by two
getelementptr instructions and sometimes only by one - with an already
complex index.
2017-09-01 12:50 GMT+02:00 David Chisnall <David.Chisnall at cl.cam.ac.uk>:
> On 1 Sep 2017, at 11:44, Anastasiya Ruzhanskaya via llvm-dev <
> llvm-dev
2017 Aug 07
2
vrp
I am primarily interested in phi nodes and their induction variables, in
ValueTracking file there is an analysis of them, but if the upper bound is
inf, it is not working?
2017-08-07 11:41 GMT+02:00 Anastasiya Ruzhanskaya <
anastasiya.ruzhanskaya at frtk.ru>:
> So, it is not supported to determine by this instruction : %cmp = icmp slt
> i32 %i.03, 99,
> that %i.03 = phi i32 [ 0,
2017 Sep 02
2
getelementptr
No.
It would be helpful to understand what you are trying to accomplish
overall, which may help people give you details about the best way to
accomplish it.
For example, if you are trying to understand or recover array indexes from
GEP's, that is non-trivial.
On Sat, Sep 2, 2017 at 3:53 AM, Anastasiya Ruzhanskaya via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Is there a way
2017 Jul 17
2
value range propagation
Hello,
I wonder if llvm has pure range propagation pass. Is correlated value
propagation that one? It seems that it is not directly deals with ranges.
Maybe there any passes that simply contain some information about value
ranges?
Will symbolic value range propagation be done in some time?
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2017 Aug 10
4
PHI nodes and connected ICMp
Hi!
By only two cases I mean , that in exiting block when computing the
condition related to PHI node I can expect only icmp on one of incoming
values or on phi node itself... I tried to come up with some more complex
examples but I always receive only these two cases, that is why I am asking.
This problem still relates to the problem of all induction, cumulative and
so on variables in loop. SCEV
2017 Jul 25
2
loop canonical variables
Hi Anastasiya,
If it fits you use case, you can consider walking the loop header and
calling getSCEV() on all of the PHI nodes in the header. This will
give you a SCEV* which should be easier to analyze than manually
inspecting PHI cycles.
Thanks!
-- Sanjoy
On Tue, Jul 25, 2017 at 11:42 AM, Michael Kruse via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> 2017-07-25 19:32 GMT+02:00
2017 Aug 21
2
Combining passes
Hello,
this is a question, concerning cmake lists configuration. I am trying to
link together two llvm passes, but they still should be as two modules. So:
passA - A.so
passB - B.so
passB should use passA , so I sould use target_link_libraries ( and of
course, I have included useAnalysis in passB) . But I can't link libraries
that are build as Modules, so I tried to create two libraries at
2018 Dec 08
4
certificate pinning
Hello!
Does libvirt uses certificate pinning in tls? I want to setup a transparent
proxy (mitmproxy) and can't do this even after I added mitmproxy ca
certificate to the trusted certificates in ubuntu.
2017 Aug 08
2
dump
Hello,
is there a possibility to redirect the output of dump() function in llvm?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170808/9c3b234a/attachment.html>
2017 Jul 10
2
disable optimizarions
Hello,
I have already asked how to receive unoptimized IR. This way:
clang -S -emit-llvm -O3 -mllvm -disable-llvm-optzns memset.c -o memset.s
I have noticed, that in any case, when I use O1, O2, O3 and disable
optimizations, I still get llvm intrinsics functions inserted.
when I put O0, I have no intrinsics, but have noopt attribute. Is there a
way to receive purely unoptimizaed IR without any
2017 Jul 25
2
loop canonical variables
I call this function and it returns only "i" in my example. Are there any
ways to return "j" also?
2017-07-25 19:11 GMT+02:00 Michael Kruse <llvmdev at meinersbur.de>:
> There is Loop::getCanonicalInductionVariable()
>
> You may need to run the "-indvars" (IndVarSimplify) pass before it
> returns a value. I am not sure it normalizes the step size
2016 Oct 31
2
RFC: PointerType should derive from Type rather than SequentialType
Thanks David. I ended up trying this over the weekend (see
https://github.com/llvm-project/llvm-project/compare/
master...pcc:pointertype). It ended up being a net reduction in code size
so seems like a useful cleanup even independent of the typeless pointer
work, I'll see if I can send a patch to the list.
FWIW I think this directly helps towards the migration because we would
have a clearer
2017 Aug 09
2
ind variable
Hello,
I have this piece of code:
int main() {
int m = 0;
// int i, j, k;
// int N = f()%10;
for (int l = 0; l < 1000; l+=4)
printf("%d", l);
I am sure, that llvm is capable to convert this into canonical induction
variable, but even with O3
define i32 @main() #0 {
br label %2
; <label>:1 ; preds
2017 Jul 20
3
Value
Thank you! I wanted to use the right part of the instruction ,
%a = alloca i32, align 4 - %a here , but I don't quite understand the
difference between Instruction object and Value object of a, which is used
further , and in this case :
%1 = alloca i32, align 4 - I also wanted to use %1 and in this case the
only possibility is Instruction object.
2017-07-20 15:32 GMT+02:00 Evgeny Astigeevich
2017 Aug 14
2
PHI nodes and connected ICMp
Hi,
On Sun, Aug 13, 2017 at 5:58 AM, Anastasiya Ruzhanskaya via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> And still, aren't there any possibilities to find that phi node, that led
> SCEV to compute max trip count?
So there is no good answer to your question since in most cases SCEV
does not directly look at PHI nodes (or expressions based off of the
PHI node). It converts
2017 Jul 21
2
type information about instruction
Thank you for the answer. So, as I understood, to get the type of the "or"
instruction (which I cannot access further as Value , because it is
actually a dead instruction), I should get the type of one of its'
operands, yes? because the example with ret is quite understandable, but it
seems really strange that such instructions as add, and , which define the
actual values can have
2011 Jul 27
2
[LLVMdev] Linking opaque types
On Jul 26, 2011, at 8:11 AM, Talin wrote:
>>
>> If that's true, then it means that we're back to the case where every type has to be fully defined down to the leaf level.
>
> I'm not sure what you mean. LLVM is perfectly fine with opaque structs so long as you don't "deference" them, GEP into them, need their size, etc.
>
> Let me try with