Displaying 20 results from an estimated 147 matches for "omnipot".
Did you mean:
omnios
2017 Oct 18
2
Possible bug of Alias Analysis?
...ted tbaa metadata for the arguments of a
> memcpy call. Besides using a union, memcpy is a supported way to copy
> bits between unrelated types (since its arguments are void* and can
> point to anything). When converting to load/store, these should point
> to void*'s metadata ("omnipotent char").
>
> That is, I'd conclude that either the load/store do not originate from
> a memcpy, or there is a serious bug.
May be I need to tell you how we handle @llvm.memcpy in details for you to clearly understand the reason behind the issue.
We provide a pre-built library...
2017 Oct 30
2
An ambiguity in TBAA info format
...!9}
!7 = !{!"B", !9}
The tag !1 describes an access to an object of type "A" and !3 describes
an access to object of type "B".
Both the type descriptors, !5 and !7, refer to node !9 as their type
group. A definition of that node could look like this:
!9 = !{"omnipotent char", ...}
We know that these two accesses should be considered no-alias as neither
of them encloses the other; the least common type group for them is !9.
TypeBasedAAResult::Aliases() and MDNode::getMostGenericTBAA() respond
accordingly and all is good.
Then, let's change the def...
2017 Oct 31
3
An ambiguity in TBAA info format
...s an access to an object of type "A" and !3
>> describes an access to object of type "B".
>>
>> Both the type descriptors, !5 and !7, refer to node !9 as their type
>> group. A definition of that node could look like this:
>>
>> !9 = !{"omnipotent char", ...}
>>
>> We know that these two accesses should be considered no-alias as
>> neither of them encloses the other; the least common type group for
>> them is !9. TypeBasedAAResult::Aliases() and
>> MDNode::getMostGenericTBAA() respond accordingly and...
2012 Jan 24
2
[LLVMdev] Pointer aliasing
...{
store double 1.000000e+00, double* %x, align 8, !tbaa !0
store double 3.000000e+00, double* %y, align 8, !tbaa !0
store double 4.000000e+00, double* %z, align 8, !tbaa !0
ret double 8.000000e+00
}
!0 = metadata !{metadata !"double", metadata !1}
!1 = metadata !{metadata !"omnipotent char", metadata !2}
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
So I can't figure out what the mechanism is for telling llvm that two
pointers that are local variables (and not input arguments) to a
function do not alias each other. I hope one of the developers can...
2019 Jan 14
2
Aliasing rules difference between GCC and Clang
...ptr inbounds %struct.B, %struct.B* %b, i32 0, i32 0
store i32 0, i32* %i1, align 4, !tbaa !7
store i32 0, i32* %prim_i, align 4, !tbaa !9
with this type DAG:
!2 = !{!3, !4, i64 0}
!3 = !{!"A", !4, i64 0}
!4 = !{!"int", !5, i64 0}
!5 = !{!"omnipotent char", !6, i64 0}
!6 = !{!"Simple C/C++ TBAA"}
!7 = !{!8, !4, i64 0}
!8 = !{!"B", !4, i64 0}
!9 = !{!4, !4, i64 0}
Just as one would hope for, TBAA produces a NoAlias result between the
stores to %A and %B:
NoAlias: store i32 0, i32...
2012 Jan 23
2
[LLVMdev] Pointer aliasing
...ore double %7, double* %5, align 8, !tbaa !3
%8 = load double* %1, align 8, !tbaa !3
%9 = load double* %3, align 8, !tbaa !3
%10 = fadd double %8, %9
%11 = fadd double %10, %7
ret double %11
}
!0 = metadata !{metadata !"any pointer", metadata !1}
!1 = metadata !{metadata !"omnipotent char", metadata !2}
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
!3 = metadata !{metadata !"double", metadata !1}
Thank you for any help.
Brent
2012 Jan 24
0
[LLVMdev] Pointer aliasing
...double 1.000000e+00, double* %1, align 8, !tbaa !3
store double 3.000000e+00, double* %3, align 8, !tbaa !3
store double 4.000000e+00, double* %5, align 8, !tbaa !3
ret double 8.000000e+00
}
!0 = metadata !{metadata !"any pointer", metadata !1}
!1 = metadata !{metadata !"omnipotent char", metadata !2}
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
!3 = metadata !{metadata !"double", metadata !1}
I am afraid I can't really help you in telling what went wrong here and
caused the missing optimizations, but I agree with you that the result...
2012 Jan 24
0
[LLVMdev] Pointer aliasing
...e* %x, align 8, !tbaa !0
> store double 3.000000e+00, double* %y, align 8, !tbaa !0
> store double 4.000000e+00, double* %z, align 8, !tbaa !0
> ret double 8.000000e+00
> }
>
> !0 = metadata !{metadata !"double", metadata !1}
> !1 = metadata !{metadata !"omnipotent char", metadata !2}
> !2 = metadata !{metadata !"Simple C/C++ TBAA", null}
>
> So I can't figure out what the mechanism is for telling llvm that two
> pointers that are local variables (and not input arguments) to a
> function do not alias each other. I hope on...
2012 Jan 24
4
[LLVMdev] Pointer aliasing
...>> store double 3.000000e+00, double* %y, align 8, !tbaa !0
>> store double 4.000000e+00, double* %z, align 8, !tbaa !0
>> ret double 8.000000e+00
>> }
>>
>> !0 = metadata !{metadata !"double", metadata !1}
>> !1 = metadata !{metadata !"omnipotent char", metadata !2}
>> !2 = metadata !{metadata !"Simple C/C++ TBAA", null}
>>
>> So I can't figure out what the mechanism is for telling llvm that two
>> pointers that are local variables (and not input arguments) to a
>> function do not alias ea...
2012 Jan 24
2
[LLVMdev] Pointer aliasing
...align 8, !tbaa !0
>>>> store double 4.000000e+00, double* %z, align 8, !tbaa !0
>>>> ret double 8.000000e+00
>>>> }
>>>>
>>>> !0 = metadata !{metadata !"double", metadata !1}
>>>> !1 = metadata !{metadata !"omnipotent char", metadata !2}
>>>> !2 = metadata !{metadata !"Simple C/C++ TBAA", null}
>>>>
>>>> So I can't figure out what the mechanism is for telling llvm that two
>>>> pointers that are local variables (and not input arguments) to a...
2012 Jan 24
0
[LLVMdev] Pointer aliasing
...000000e+00, double* %y, align 8, !tbaa !0
>>> store double 4.000000e+00, double* %z, align 8, !tbaa !0
>>> ret double 8.000000e+00
>>> }
>>>
>>> !0 = metadata !{metadata !"double", metadata !1}
>>> !1 = metadata !{metadata !"omnipotent char", metadata !2}
>>> !2 = metadata !{metadata !"Simple C/C++ TBAA", null}
>>>
>>> So I can't figure out what the mechanism is for telling llvm that two
>>> pointers that are local variables (and not input arguments) to a
>>> func...
2019 Nov 13
2
TBAA question
...he following LLVM IR.
----Snip---
%1 = getelementptr inbounds %struct._X, %struct._X* %0, i64 0, i32 3
%2 = load %struct._X*, %struct._X** %1, align 8, !tbaa !10
....
.....
.......
%3 = bitcast %struct._Y** %1 to i8**
store i8* null, i8** %3, align 8, !tbaa !9
!9 = !{!7, !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
----Snip----
Load inst above is trying to access a field of _X which is a self recursive
pointer to same struct _X.
Store puts a null value for a pointer to struct _Y. It has been bitcasted
to i8** and store happens via char pointer...
Disabling password expiry for a AD service account for accessing LDAPS, and security best practices.
2019 Apr 10
2
Disabling password expiry for a AD service account for accessing LDAPS, and security best practices.
...a universal weakness shared by all password-based authentication
methods. I guess you would have to go with SSH-style encryption keys and
certificates to circumvent that problem entirely which might bamboozle
ordinary website users.
Dynamic bind does remove the need to create an extra special omnipotent
account with a never-expiring password though. So on that basis I am
saying it is more secure (but not absolutely secure since there are no
absolutes in life heh ;) )
Cheers
Stephen Ellwood
2017 Feb 13
2
RFC: Representing unions in TBAA
...ptr inbounds (%struct.S, %struct.S* @s, i32
0, %i32 2), align 4, !tbaa !2
%1 = load i32, i32* getelementptr inbounds (%struct.S, %struct.S* @s, i32
0, %i32 3), align 4, !tbaa !7
...
!2 = !{!3, !6, i64 800}
!3 = !{!"S", !4, i64 0, !4, i64 400, !6, i64 800, !6, i64 804}
!4 = !{!"omnipotent char", !5, i64 0}
!5 = !{!"Simple C/C++ TBAA"}
!6 = !{!"int", !4, i64 0}
!7 = !{!3, !6, i64 804}
The two loads are loads of different int members of the same struct. The
type
based aliasing gives them different meta data tags (!2 and !7). This
allows the
analysis...
2012 Jan 24
0
[LLVMdev] Pointer aliasing
...t;>>> store double 4.000000e+00, double* %z, align 8, !tbaa !0
>>>>> ret double 8.000000e+00
>>>>> }
>>>>>
>>>>> !0 = metadata !{metadata !"double", metadata !1}
>>>>> !1 = metadata !{metadata !"omnipotent char", metadata !2}
>>>>> !2 = metadata !{metadata !"Simple C/C++ TBAA", null}
>>>>>
>>>>> So I can't figure out what the mechanism is for telling llvm that two
>>>>> pointers that are local variables (and not input a...
2015 Dec 09
2
Field sensitive alias analysis?
....S, %struct.S* %ps, i64 0, i32 1
store i32 2, i32* %b, align 4, !tbaa !5
%arrayidx2 = getelementptr inbounds %struct.S, %struct.S* %ps, i64 0, i32
0, i64 0
%0 = load i32, i32* %arrayidx2, align 4, !tbaa !1
ret i32 %0
}
!1 = !{!2, !2, i64 0}
!2 = !{!"int", !3, i64 0}
!3 = !{!"omnipotent char", !4, i64 0}
!4 = !{!"Simple C/C++ TBAA"}
!5 = !{!6, !2, i64 40}
!6 = !{!"S", !3, i64 0, !2, i64 40}
Missing information here is the range inside struct S that could be
accessed. Also as you can see array member of struct in TBAA is presented
as omnipotent char not...
2012 Jul 04
1
[LLVMdev] About thread_local in 3.0
...%1 = tail call i32 @foo()
%2 = tail call i32 (i8*, ...)* @printf(i8* getelementptr inbounds
([9 x i8]* @.str, i32 0, i32 0), i32 %1) nounwind
ret i32 0
}
declare i32 @printf(i8* nocapture, ...) nounwind
!0 = metadata !{metadata !"int", metadata !1}
!1 = metadata !{metadata !"omnipotent char", metadata !2}
!2 = metadata !{metadata !"Simple C/C++ TBAA", null}
If I jit the code, say "lli 2010-12-08-tls.O1.bc", I got
0 lli 0x091ac1a8
1 lli 0x091ac7e7
2 0xffffe400 + 0
3 lli 0x08f7a103
llvm::ExecutionEngine::runFunctionAsMa...
2019 Jan 18
2
Aliasing rules difference between GCC and Clang
...32* %i1, align 4, !tbaa !7
>> store i32 0, i32* %prim_i, align 4, !tbaa !9
>>
>> with this type DAG:
>>
>> !2 = !{!3, !4, i64 0}
>> !3 = !{!"A", !4, i64 0}
>> !4 = !{!"int", !5, i64 0}
>> !5 = !{!"omnipotent char", !6, i64 0}
>> !6 = !{!"Simple C/C++ TBAA"}
>> !7 = !{!8, !4, i64 0}
>> !8 = !{!"B", !4, i64 0}
>> !9 = !{!4, !4, i64 0}
>>
>> Just as one would hope for, TBAA produces a NoAlias result between the
&...
2013 Feb 07
1
[LLVMdev] alloca scalarization with dynamic indexing into vectors
..., !tbaa !11
%4 = insertelement <2 x i32> undef, i32 %3, i32 0
%splat = shufflevector <2 x i32> %4, <2 x i32> undef, <2 x i32>
zeroinitializer
store <2 x i32> %splat, <2 x i32>* %results, align 8, !tbaa !9
ret void
}
!9 = metadata !{metadata !"omnipotent char", metadata !10}
!10 = metadata !{metadata !"Simple C/C++ TBAA", null}
!11 = metadata !{metadata !"int", metadata !9}
In this example, the sequence of stores is copying the data from %src into
%sPrivateStorage with the GEP of interest being:
%add.ptr = ge...
2017 Oct 18
2
Possible bug of Alias Analysis?
> -----Original Message-----
> From: meinersbur at googlemail.com [mailto:meinersbur at googlemail.com] On
> Behalf Of Michael Kruse
> Sent: Tuesday, October 17, 2017 3:26 PM
> To: Song, Ruiling <ruiling.song at intel.com>
> Cc: llvm at meinersbur.de; llvm-dev at lists.llvm.org
> Subject: Re: Possible bug of Alias Analysis?
>
> 2017-10-17 8:45 GMT+02:00 Song,