[LLVMdev] Little question about Stringref

Hanbing Li hanbing.li at inria.fr
Tue Apr 22 16:37:43 PDT 2014


Thank you all, 

It really works. 

Hanbing 

----- Mail original -----

> De: "Hanbing Li" <hanbing.li at inria.fr>
> À: llvmdev at cs.uiuc.edu
> Envoyé: Mardi 22 Avril 2014 18:55:04
> Objet: [LLVMdev] Little question about Stringref

> Hi,

> I tried to get the name of function+loop, so I write a small function as
> following:

> StringRef getStringofFL(const Function * F, const Loop * L){
> StringRef sr;
> std::string s1 = F->getName();
> std::string s2 = L->getHeader()->getName();
> sr = s1+s2;
> return sr;
> }

> However, two questions came:

> 1, if I output sr like: errs() << sr; it's ok (for instance: mainfor.cond ),
> but when I called this function and got the StringRef: StringRef s=
> getStringofFL(F, L); errs() << s; the result is:
> m\275[\377\177\000\0002\354\333\004\001, why?

> 2, I used the StringMap, and the StringRef got from the function
> getStringofFL as a key. Then I stored something into this StringMap, but I
> couldn't get it with the same function and loop. why?

> Thank you!

> Hanbing

> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140423/67030ffa/attachment.html>


More information about the llvm-dev mailing list