我试图理解llvm如何内联工作(Inliner类)。我不理解的操作如下:
SmallVector<std::pair<CallSite, int>, 16> CallSites;
当SmallVector是llvm类时。特别是我不明白这段代码中“16”的功能是什么。
答案 0 :(得分:2)
您声明了SmallVector
个16个元素,每个元素都是std::pair<CallSite, int>
。
编辑:正如Eli正确指出的那样,可以动态调整SmallVector的大小。 16只是内置大小(这意味着在任何堆分配中不会产生最多16个元素)。