<div dir="ltr">Constants are created via the `getXXX` routines. They are cached internally in the LLVMContext, so a particular constant won't be created twice in the same context ( -> unique). The common idiom for testing a constant is to compare the pointer itself with the one that you want. Look through the source code and you will see many examples.<div><br></div><div>To actually get the value inside the constant you will need to use the API I described before, which seems like what you are actually looking for.</div><div><br></div><div>If all you need is to compare with 1, then there is even a simpler API for this: Constant::isOneValue().<br><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 20, 2020 at 11:23 AM Abid Malik <<a href="mailto:abidmuslim@gmail.com">abidmuslim@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:"courier new",monospace;font-size:small"><div class="gmail_default">Thanks, Ehud.</div><div class="gmail_default"><br></div><div class="gmail_default">Thanks, Johannes.</div><div class="gmail_default">I am trying to compare the call instruction (openMP ) compatibility wrt scheduling, iteration, and chunk size. I think accessing these constant values makes sense to form the set of call of instructions which are compatible. What do you think?</div><div class="gmail_default"><br></div><div class="gmail_default">Can you elaborate?</div><div class="gmail_default">"<span style="font-family:Arial,Helvetica,sans-serif">These are SSA values on which pointer equality</span></div>works, especially since constants, e.g., i32 1, are unique.<span class="gmail_default">"</span><div><span class="gmail_default"><br></span></div><div><span class="gmail_default">"i32 1" is constant. But how I can use this constant for equality check? It is not a sting or datatype that can be used for binary equality check.</span></div><div><span class="gmail_default"></span></div><div><span class="gmail_default">Thanks,</span></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jan 19, 2020 at 9:02 PM Doerfert, Johannes <<a href="mailto:jdoerfert@anl.gov" target="_blank">jdoerfert@anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 01/19, Abid Malik via llvm-dev wrote:<br>
> How can I convert the arg for binary comparison(== etc.)? If I am correct,<br>
> it is not a string. If the argument is "i32 1", Is there a way to access<br>
> the content value "1" directly?<br>
<br>
You don't want to access "1" directly if you want to compare it to<br>
something other than a native C++ integer type such as<br>
`int/unsigned/long/...`. These are SSA values on which pointer equality<br>
works, especially since constants, e.g., i32 1, are unique.<br>
<br>
Cheers,<br>
  Johannes<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div>Abid M. Malik<br>******************************************************<br>"I have learned silence from the talkative, toleration from the intolerant, and kindness from the unkind"---Gibran<br>"Success is not for the chosen few, but for the few who choose" --- John Maxwell<br>"Being a good person does not depend on your religion or status in life, your race or skin color, political views or culture. IT DEPENDS ON HOW GOOD YOU TREAT OTHERS"--- Abid<br>"The Universe is talking to us, and the language of the Universe is mathematics."----Abid<br> </div></div></div>
</blockquote></div>