1

基本的に、次のCコードのデータIRを作成します。

extern int myarr1[];
int myarr2 = {(int)&myarr1, 0, 0};

そこで、のllvm::GlobalVariableオブジェクトを作成しましたmyarr1。しかし、llvm主張し、初期化子として使用することはできないと述べました。

配列要素初期化子のタイプが間違っています

これを行うことは可能ですか?

4

1 に答える 1

0

答えを得ました:

llvm::Constant *cons = ConstantExpr::getCast(Instruction::PtrToInt, gvar_array_myarr1, IntegerType::get(mod->getContext(), 32));

ありがとう!

于 2012-11-06T01:14:51.890 に答える