[LLVMdev] Text or Data symbol

Damien Vincent damien.llvm at gmail.com
Fri Mar 18 15:16:00 PDT 2011


I am again calling for help from LLVM developers ;)

For my DSP backend, at the lowering stage and also at the AsmPrinter stage,
I need to know if a GlobalAddress is a code or a data address.

So I tried at the lowering stage to use:
GlobalAddressSDNode *GSDN = cast<GlobalAddressSDNode>(Op);
const GlobalValue *GV = GSDN->getGlobal();
GV->hasSection()  and  GV->getSection()
But the section is not set at this stage (hasSection = false)

And at the AsmPrinter stage:
const GlobalValue *GV = MO.getGlobal();
SectionKind sectionKind = Mang->getSymbol(GV)->getSection().getKind();
But again the section does not seem to be set (sectionKind.isInSection() =
false)

Do you know a way to tell if a global address corresponds to data or code ?
I have to process differently text and data address...

  Thank you !

  Damien
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110318/ac2258e0/attachment.html>


More information about the llvm-dev mailing list