草庐IT

llvm-project

全部标签

c++ - eclipse CDT : How to manage multiple main() functions in a single C++ project?

我正在开始开发一个由多个模块组成的项目。我将使用专用的测试台验证这些模块中的每一个,每个模块都有它们的main()函数。我想避免为每个测试平台及其main()函数创建一个Eclipse项目。我读到了WorkingSets在我的项目中只显示与特定测试平台相关的文件的想法正是我所寻找的。但是,在构建阶段,Eclipse会继续构建所有项目文件,而不仅仅是当前的工作集文件。然后,由于多个main()函数,我遇到了链接器错误。如何将Eclipse配置为仅构建工作集的文件?是否有另一种方法可以在单个项目中分别构建多个程序,即应用程序及其组件测试平台? 最佳答案

c++ - Visual Studio 2017 : ambiguous symbol size_t in linux projects

在VisualStudio2017中创建Linux项目并在源代码中插入usingnamespacestd;时,如下所示:#include#includeusingnamespacestd;intmain(){size_ti=1;strings=to_string(i);coutVS下划线size_t说是有歧义的符号。如果我按F12(转到定义),它会为我提供两个定义位置:来自stddef.h(C:\ProgramFiles(x86)\MicrosoftVisualStudio14.0\VC\Linux\include\usr\include\x86_64-linux-gnu\5\incl

c++ - LLVM,全局整数数组零初始化器

我似乎无法弄清楚如何为全局整数数组设置zeroinitializer。目前我的代码输出:@a=commonglobal[1xi32],align4但是,clangfoo.c-S-emit-llvm产生:@a=commonglobal[1xi32]zeroinitializer,align4我的代码目前是这样的,我的setInitializer()代码不起作用,被注释掉了:TheModule=(argc>1)?newModule(argv[1],Context):newModule("Filename",Context);//Unrelatedcode//currentGlobal->i

c++ - apt-get 安装后未找到 LLVM header

我使用LLVMNightlypackageslink中给出的以下命令安装了llvm和clang3.9以及所有其他软件包.sudoapt-getinstallclang-3.9clang-3.9-docllvm-3.9llvm-3.9-devllvm-3.9-docllvm-3.9-examplesllvm-3.9-runtimeclang-format-3.9python-clang-3.9libclang-common-3.9-devlibclang-3.9-devlibclang1-3.9libclang1-3.9-dbglibllvm-3.9-ocaml-devlibllvm3.

c++ - Project Euler #23,在程序中找不到问题

链接:http://projecteuler.net/problem=23Aperfectnumberisanumberforwhichthesumofitsproperdivisorsisexactlyequaltothenumber.Forexample,thesumoftheproperdivisorsof28wouldbe1+2+4+7+14=28,whichmeansthat28isaperfectnumber.Anumberniscalleddeficientifthesumofitsproperdivisorsislessthannanditiscalledabundan

c++ - 使用 LLVM API 生成静态代码

从包含一些IR的LLVM模块*Mod开始:如何使用特定的后端从中生成目标特定的汇编程序?不幸的是,Kaleidoscope教程没有对此进行详细说明。它仅使用执行引擎对程序进行JIT编译(在构建、目标体系结构上),但实际上并不选择特定的后端来生成特定于目标的汇编程序。任何LLVM教程也没有,因为我认为它们没有详细说明如何构建静态编译器。因此,这个问题可以提供这条缺失的信息。由于我们要构建一个静态编译器,所以我们不想使用llc等命令行工具来完成这项工作。我们想使用LLVMAPI。为了使这个更具体,让我们从这段代码开始:LLVMContext&Context=getGlobalContext

c++ - 如何从 ifstream 加载 LLVM 位码文件?

我试图在运行时加载.bc文件中定义的LLVM模块,但遇到了障碍。感兴趣的位码已从hello.cpp生成://hello.cpp//buildwith://clang-3.4-c-emit-llvmhello.cpp-ohello.bc#includevoidhello(){std::cout当下面的程序试图在运行时加载它时,它在llvm::BitstreamCursor::Read()中崩溃://main.cpp//buildwith://g++main.cpp`llvm-config-3.4--cppflags--ldflags--libs`-ldl-lpthread-lcurses

c++ - 在 LLVM 3.9.1 中,我应该用什么替换 getGlobalContext()?

在做旧教程时,我经常看到使用了getGlobalContext()。但是,在LLVM3.9.1中,无法再找到此函数。对于等效行为,我应该用什么替换这些调用? 最佳答案 你可以使用staticLLVMContextTheContext; 关于c++-在LLVM3.9.1中,我应该用什么替换getGlobalContext()?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4176

Global SiC MOSFET Modules Market Size Is Projected to Grow from USD 1693 million in 2023

Accordingtothenewmarketresearchreport“GlobalSiCMOSFETModulesMarketReport2023-2029”,publishedbyGlobalInfoResearch,theglobalSiCMOSFETModulesmarketsizeisprojectedtogrowfromUSD1693millionin2023toUSD9218.2millionby2029,ataCAGRof32.6%duringtheforecastperiod.Figure.GlobalSiCMOSFETModulesMarketSize (US$Mill

c++ - 检查指向 LLVM 中指针类型的指针

如何在LLVM中检查一个操作数是pointertopointer类型?我们可以检查是否是操作数指针,但是如何检查它是否指向指针呢?我正在使用Clang生成中间代码并使用C++作为源文件。 最佳答案 您可以调用Type::getContainedType(int)来访问指针对象类型。所以它应该是这样的:boolisPointerToPointer(constValue*V){constType*T=V->getType();returnT->isPointerTy()&&T->getContainedType(0)->isPointe