alias analysis during code generation

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

alias analysis during code generation

Pekka Jääskeläinen-3
Hello,

Is it somehow possible to use alias analyser data during code
generation, after instruction selection? I would need to run
the AA using MachineOperands, not Values. Is this in any way
in LLVM possible at the moment?

We have a post-pass instruction scheduler which would benefit
from AA results, but the AA interface uses Values.


--
Pekka
_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: alias analysis during code generation

Florian Brandner-2
Pekka Jääskeläinen schrieb:
> Is it somehow possible to use alias analyser data during code
> generation, after instruction selection? I would need to run
> the AA using MachineOperands, not Values. Is this in any way
> in LLVM possible at the moment?

i've been working on this (also because of a post-pass scheduler).

i managed to hand the source values (values passed to the AA) over to
the machine instruction level. unfortunately the "codegen prepare" pass
rewrites GEP llvm instructions and confuses the AA. some work needs to
be done inside the AA to get reasonable results.

i did not have time to prepare and submit a patch for llvm.

florian



_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: alias analysis during code generation

Evan Cheng-2

On Jan 17, 2008, at 2:07 AM, Florian Brandner wrote:

> Pekka Jääskeläinen schrieb:
>> Is it somehow possible to use alias analyser data during code
>> generation, after instruction selection? I would need to run
>> the AA using MachineOperands, not Values. Is this in any way
>> in LLVM possible at the moment?
>
> i've been working on this (also because of a post-pass scheduler).
>
> i managed to hand the source values (values passed to the AA) over to
> the machine instruction level. unfortunately the "codegen prepare"  
> pass
> rewrites GEP llvm instructions and confuses the AA. some work needs to
> be done inside the AA to get reasonable results.
>
Right, currently AA information might get lost during translation from  
llvm to machineinstrs and during various passes that operate on them.  
This is not a hard problem, but very tedious.


> i did not have time to prepare and submit a patch for llvm.

It would be nice if you can contribute it back even if it's  
incomplete. :-)

Evan


>
>
> florian
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> [hidden email]         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev


_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev