[LLVMdev] Some questions on the output formats of AliasSetTracker

hc2428 at columbia.edu hc2428 at columbia.edu
Thu May 7 17:29:25 PDT 2009


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,  
{ }*)* @llvm.dbg.stoppoint, void (i32, i32, { }*)*  
@llvm.dbg.stoppoint, void (i32, i32, { }*)* @llvm.dbg.stoppoint, void  
(i32, i32, { }*)* @llvm.dbg.stoppoint, void (i32, i32, { }*)*  
@llvm.dbg.stoppoint, void (i32, i32, { }*)* @llvm.dbg.stoppoint, void  
({ }*)* @llvm.dbg.region.end
   AliasSet[0xeb81e0,1] must alias, Mod/Ref   Pointers: (i32** @XX, 8)
   AliasSet[0xea5fc0,1] must alias, Mod       Pointers: (i32** @YY, 8)
   AliasSet[0xeab830,1] must alias, Mod/Ref   Pointers: (i32* %0, 4)
   AliasSet[0xea5e70,1] must alias, Mod/Ref   Pointers: (i32* %retval, 4)


I am sure that the XX and YY are global:
@XX = common global i32* null		; <i32**> [#uses=4]
@YY = common global i32* null		; <i32**> [#uses=3]

would you please tell me more details?

Thanks,
Heming


> 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 "&YY"), so they do not in fact alias.
>
> -Eli
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>






More information about the llvm-dev mailing list