• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

LLVM 获取Value Type

开发技术 开发技术 2周前 (06-08) 14次浏览
void llvtype(std::string_view k, Value* v)
{
  std::cout << std::format("{}:{}:{}", 
    k, 
    (int)v->getType()->getTypeID(),
    v->getName().str()
  ) << "n";
}

...

  Function* Add1F = Function::Create(funcType, Function::ExternalLinkage, "add1", m.get());

  BasicBlock* BB = BasicBlock::Create(*ctx, "entry", Add1F);
  b.SetInsertPoint(BB);

  llvtype("ii",  b.getInt1(1));
  llvtype("i32", b.getInt32(1));
  llvtype("i64", b.getInt64(1));
  llvtype("f32", ConstantFP::get(*ctx, APFloat((float)1.2)));
  llvtype("f64", ConstantFP::get(*ctx, APFloat(1.2)));
  llvtype("fun", Add1F);
  llvtype("label", BB);

程序员灯塔
转载请注明原文链接:LLVM 获取Value Type
喜欢 (0)