It there an equivalent to size_t in llvm

半世苍凉 提交于 2019-12-22 04:47:21

问题


Some system libraries like malloc strlen want or return size_t as parameter.

  • What is the right choice in LLVM IR to interact with these functions?
  • Is the selection the task for the compiler?
  • Does LLVM IR have a size_t type?

回答1:


At the LLVM level, size_t doesn't exist. It is a construct for the benefit of the developer that is typedef'd to a native type. The native types have a fixed size for the target architecture and that is how the compiler represents them in LLVM bit code. So on x86, size_t might by viewed by the front end as unsigned long, which it then writes to LLVM as i32 (since LLVM assembly doesn't have an unsigned type).




回答2:


You can use size_t in llvm, it is a valid type to be used as normal.



来源:https://stackoverflow.com/questions/10825186/it-there-an-equivalent-to-size-t-in-llvm

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!