我正在尝试对某些C代码运行LLVM传递,需要从Constant
中删除ConstantArray
。我有GlobalVariable
表示ConstantArray
作为初始化程序。
使用F->replaceAllUsesWith(llvm::UndefValue::get(F->getType()))
和F->dropAllReferences()
删除条目是有效的,但这是不可接受的 - 我无法使用数组更改代码,并在遇到第一个NULL
值后停止处理数组。
有没有简单的方法可以简单地从Constant
删除ConstantArray
,或者我是否必须创建一个没有我要删除的相应条目的新数组?