Commit 351dd80
authored
[Codegen] Update LLVM version requirement for
This PR fixes the codegen llvm version requirement. Prior to this PR,
we use `dbg_info_->di_builder_->insertDeclare` when LLVM version is
at least 19.0, while the new `insertDeclare` interface starts with
LLVM 20:
* 19.1.0: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.0/llvm/include/llvm/IR/DIBuilder.h#L95-L98
* 20.1.0: https://github.com/llvm/llvm-project/blob/llvmorg-20.1.0/llvm/include/llvm/IR/DIBuilder.h#L950-L952
As a result, we may run into the following compilation error if
the LLVM version happens to be 19:
```
/home/ruihangl/Workspace/tvm/src/target/llvm/codegen_llvm.cc:2251:42: error: no matching function for call to 'llvm::DIBuilder::insertDeclare(llvm::AllocaInst*&, llvm::DILocalVariable*&, llvm::DIExpression*, llvm::DebugLoc, llvm::BasicBlock::iterator)'
2251 | dbg_info_->di_builder_->insertDeclare(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
2252 | paramAlloca, param, dbg_info_->di_builder_->createExpression(), llvm::DebugLoc(di_loc),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2253 | llvm::BasicBlock::iterator(store));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ruihangl/Workspace/tvm/src/target/llvm/codegen_llvm.cc:2293:42: error: no matching function for call to 'llvm::DIBuilder::insertDeclare(llvm::Value*&, llvm::DILocalVariable*&, llvm::DIExpression*, llvm::DebugLoc, llvm::BasicBlock::iterator)'
2293 | dbg_info_->di_builder_->insertDeclare(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
2294 | llvm_value, local_var, dbg_info_->di_builder_->createExpression(), llvm::DebugLoc(di_loc),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2295 | llvm::BasicBlock::iterator(insert_before));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
To fixed this, we update the version requirement to LLVM 20.insertDeclare (apache#18123)1 parent 045eb5b commit 351dd80
1 file changed
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2247 | 2247 | | |
2248 | 2248 | | |
2249 | 2249 | | |
2250 | | - | |
| 2250 | + | |
2251 | 2251 | | |
2252 | 2252 | | |
2253 | 2253 | | |
| |||
2289 | 2289 | | |
2290 | 2290 | | |
2291 | 2291 | | |
2292 | | - | |
| 2292 | + | |
2293 | 2293 | | |
2294 | 2294 | | |
2295 | 2295 | | |
| |||
0 commit comments