Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] AliasSetTracker"
2012 Jul 31
0
[LLVMdev] rotate
Oh, no. I should have been more clear. The patch was not rejected, just
lost in the daily shuffle.
I already have my employer's approval to send this upstream, so I will
prepare a patch against trunk this morning.
> I proposed a similar patch to LLVM (left circular shift) around 10/2011.
> > Parts of my patch did make it into trunk about a year after, but others
> > did not.
2012 Jul 31
4
[LLVMdev] rotate
On Monday, July 30, 2012 12:16 AM, Cameron McInally wrote:
> Hey Andy,
>
> I proposed a similar patch to LLVM (left circular shift) around 10/2011.
> Parts of my patch did make it into trunk about a year after, but others
> did not.
>
> At that time, my solution was to add a binary operator to the IRBuilder,
> since LCS fits in nicely with the other shift operators. But,
2014 Mar 07
3
[LLVMdev] [RFC] Add second "failure" AtomicOrdering to cmpxchg instruction
Hi all,
The C++11 (& C11) compare_exchange functions with explicit memory
order allow you to specify two sets of semantics, one for when the
exchange actually happens and one for when it fails. Unfortunately, at
the moment the LLVM IR "cmpxchg" instruction only has one ordering,
which means we get sub-optimal codegen.
This probably affects all architectures which use
2012 Jul 31
3
[LLVMdev] rotate
Andy,
Here is the left circular shift operator patch. I apologize to the reviewer
in advance. The patch has a good bit of fine detail. Any
comments/criticisms?
Some caveats...
1) This is just the bare minimum needed to make the left circular shift
operator work (e.g. no instruction combining).
2) I tried my best to select operator names in the existing style; please
feel free to change them as
2015 Jul 28
1
[LLVMdev] AliasSetTracker and UnknownInst's (callsites mostly) problem
Hi all,
There is a problem about how AliasSetTracker merging AliasSet's when meet
UnknownInst.
When adding new pointer it looks for existing AliasSet's aliased with new
pointer. And merging them together. It is ok for pointers: if %A mayalias
%B and %B mayalias %C then %A mayalias %C.
But the same logic when adding callsite is wrong (
findAliasSetForUnknownInst).
Callsite may be known
2009 Aug 17
2
[LLVMdev] AliasSetTracker
I started using the AliasSetTracker, but I have a problem.
I am using -basicaa -anders-aa and optimizations are enabled for llvm-gcc
and llvm-ld.
I use an instruction visitor to populate the alias set tracker, but two
pointers end up in different alias sets.
While investigating this I notice at one point that if I call:
bool New = false;
AliasSet &X = AST->getAliasSetForPointer(Pointer,
2009 May 08
1
[LLVMdev] Some questions on the output formats of AliasSetTracker
Quoting Eli Friedman <eli.friedman at gmail.com>:
Dear Eli,
Thanks very much for your reply. I have modified the XX and YY to
be global variables, but the output of AliasSetTracker are still MUST
alias:
Alias Set Tracker: 5 alias sets for 4 pointer values.
AliasSet[0xea55d0,0] may alias, Mod/Ref
8 Call Sites: void ({ }*)* @llvm.dbg.func.start, void (i32, i32,
{ }*)*
2013 Feb 11
0
[LLVMdev] Possible issue with DenseMap when using AliasSetTracker
Oliver Horst wrote:
> Dear All,
>
> while willing to assist developers to adhere strictly to coding guidelines, I
> wrote the attached program called "alias-detector". The program's intent is to
> utilize the BasicAliasAnalysis to get a list of aliases for each pointer in a
> certain program code. First it initializes clang as frontend, executes the
>
2009 Aug 18
0
[LLVMdev] AliasSetTracker
On Aug 17, 2009, at 4:16 PM, Marcus Hicks wrote:
> I started using the AliasSetTracker, but I have a problem.
Hi Marcus,
At best, anders-aa is beta-quality. It probably has several bugs and
is not really ready to be widely used.
-Chris
>
> I am using -basicaa -anders-aa and optimizations are enabled for
> llvm-gcc and llvm-ld.
> I use an instruction visitor to populate the
2009 May 08
2
[LLVMdev] Some questions on the output formats of AliasSetTracker
Dear Staff,
Here are some questions on the output formats of AliasSetTracker.
The code is as below:
int G1 = 9;
int G2 = 5;
int main() {
int * XX;
int * YY;
XX = &G1;
YY = XX;
YY = &G2;
XX = &G2;
}
The output for -anders-aa is:
Alias Set Tracker: 5 alias sets for 4 pointer values.
AliasSet[0xea6fb0,0] may alias, Mod/Ref
10 Call Sites: void ({ }*)*
2013 Feb 08
2
[LLVMdev] Possible issue with DenseMap when using AliasSetTracker
Dear All,
while willing to assist developers to adhere strictly to coding guidelines, I
wrote the attached program called "alias-detector". The program's intent is to
utilize the BasicAliasAnalysis to get a list of aliases for each pointer in a
certain program code. First it initializes clang as frontend, executes the
EmitLLVMOnlyAction, and then processes the produced Module with
2016 Jan 27
2
Skip redundant checks in AliasSet::aliasesUnknownInst
Thank you for the idea! Could you please explain it? If I’m not
mistaken, you advise to insert the unknown insts of an every AS from
AliasSetTracker::add(const AliasSetTracker &AST) into a smallptrset
and consequently append it to merged alias sets from
AliasSetTracker::findAliasSetForUnknownInst. I think that Philip
proposed something similar to your approach in
2015 Dec 06
2
Objects of MemoryLocation class are created for ‘llvm.memset.*‘ intrinsics
Dear llvm contributors,
Could you please advise me where objects of MemoryLocation class are
created for ‘llvm.memset.*‘ intrinsics?
In the Bug 23077 (https://llvm.org/bugs/show_bug.cgi?id=23077) the
AliasSetTracker constructs 128 alias sets for 0 pointer values, which
contain only unknown instructions. In this case, all unknown
instructions, which are added to new alias sets in the
2016 Jan 27
2
Skip redundant checks in AliasSet::aliasesUnknownInst
On 01/27/2016 07:53 AM, Daniel Berlin wrote:
>
>
> On Wed, Jan 27, 2016 at 1:27 AM, Roman Gareev <gareevroman at gmail.com
> <mailto:gareevroman at gmail.com>> wrote:
>
> Thank you for the idea! Could you please explain it?
>
>
> Which part are you having trouble with, so i know where to concetrate?
>
> If I’m not
> mistaken, you advise
2009 Mar 15
1
[LLVMdev] using alias-analysis
Hi together,
i want to create a map containing a set of aliases for each value.
For example, for a code like:
int main() {
int i;
int *p1 = &i;
int *p2 = &i;
return 0;
}
the map should contain something like:
{i --> (p1, p2),
.....
}
For that, i do followings in my pass:
AliasAnalysis &AA = getAnalysis<AliasAnalysis>();
AliasSetTracker *tracker =
2008 Sep 24
2
[LLVMdev] Memory Altering/Accessing Instructions
Hi all,
Would it be correct to say that the only instructions in LLVM IR that
modify/access memory potentially are the following:
(1) LoadInst : Ref
(2) StoreInst : Mod
(3) VAArgInst : Ref (?)
(4) AllocaInst : Mod
(5) MallocInst : Mod
(6) FreeInst : Mod
(7) CallInst : Mod/Ref ?
Also, my earlier impression was that the GEP instruction only computes
the effective address and does not
2009 May 08
0
[LLVMdev] Some questions on the output formats of AliasSetTracker
Dear Staff,
Here are some questions on the output formats of AliasSetTracker.
The code is as below:
int G1 = 9;
int G2 = 5;
int main() {
int * XX;
int * YY;
XX = &G1;
YY = XX;
YY = &G2;
XX = &G2;
}
The output for -anders-aa is (the command is: opt -anders-aa test.bc
-disable-output -print-alias-sets &>
2016 Jan 24
4
Skip redundant checks in AliasSet::aliasesUnknownInst
Dear llvm contributors,
Could you please advise me how to skip
checks, which are performed in AliasSet::aliasesUnknownInst, of
unknown instructions from different alias sets of an alias set tracker
that is a parameter of ‘AliasSetTracker::add(const AliasSetTracker
&AST)’?
If this wasn’t available at the moment and someone could review me, I
would try to implement it. A temporary patch can be
2009 May 08
0
[LLVMdev] Some questions on the output formats of AliasSetTracker
On Thu, May 7, 2009 at 5:07 PM, <hc2428 at columbia.edu> wrote:
> However, I am a little confused with these output. In Both anders-aa
> and steens-aa, XX and YY should stay in the same AliasSet, and their
> alias relationship should be May Alias, right?
%XX and %YY are the results of alloca instructions (i.e. equivalent to
the C expressions "&XX" and
2004 Sep 02
0
[LLVMdev] Problem with CVS LLVM build in obj != src dir case
I resend email with updated (after mass header move) log examples.
> LLVM build without big problems in obj dir == src dir case (for example,
> last night tester build)
> But I have problem with building CVS version LLVM in obj dir != src dir
> case.
>
gmake[1]: Entering directory
`/usr/home/wanderer/pkg/build/llvm/obj/projects'
gmake[2]: Entering directory