[LLVMdev] reg_iterator Caveats

David Greene dag at cray.com
Mon Mar 31 14:53:58 PDT 2008

On Monday 31 March 2008 00:57, Chris Lattner wrote:
> On Mar 30, 2008, at 10:42 PM, David A. Greene wrote:
> >> SSA form, it is reasonable to say "give me the first def" and expect
> >> it to be the only def.  For multiply defined values like physregs,
> >> this is not true, because the reg can have multiple defs.
> >
> > Gotcha.  This is exactly what I want.  Thanks for the explanation.
> >
> > For non-SSA values, is there some indication of which defs reach which
> > uses?  I don't need this right now but I can imagine using it in the
> > future.
> The reg def/kill/dead flags are all that there is.

I just discovered that def_itterator (and presumably, reg_iterator) doesn't 
include implicit defs, for example at function calls for caller-save physical 
registers.  Guh.  I'm not sure if it should or not, but it's certainly 
necessary information in some cases.  Is this expected behavior, or an


More information about the llvm-dev mailing list