[clang] [llvm] [mlir] [polly] [IR][NFC] Update IRBuilder to use InsertPosition (PR #96497)

Stephen Tozer via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 25 09:58:06 PDT 2024


SLTozer wrote:

> My guess here would have been that the issue is the cases where an Instruction* or BasicBlock* is passed rather than BB+Iterator, because those two cases go through an out-of-line constructor.

Seems like you're right - removing the extra dereference does little-to-nothing, but allowing the constructors to be inlined mitigates most of the cost. It still ends up being [a net negative for performance](http://llvm-compile-time-tracker.com/compare.php?from=d75f9dd1d29b332bdc51346de63cbc04646354d7&to=3acef100b23fb6fa616523dd0d1b85945adb7900&stat=instructions%3Au) though, even after allowing the constructors to become inlined.

https://github.com/llvm/llvm-project/pull/96497


More information about the llvm-commits mailing list