[PATCH] D131447: [Clang][BinaryOperator] memoize ICEKind for BinaryOperator Exprs

Justin Stitt via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 8 14:54:14 PDT 2022


justinstitt created this revision.
Herald added a subscriber: pengfei.
Herald added a project: All.
justinstitt requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

When building the Linux Kernel (x86_64) CheckICE is a particularly slow
method which results in 0.815% of all cpu cycles (~63 million cycles).
Much of this is due to repeat checks regarding the ICEKind of binary
expressions.

Storing ICEKind information within BinaryOperator and stopping future
CheckICE calls before they do repeat work shows a net speed increase of
~80% for CheckICE (~14 million cycles).


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D131447

Files:
  clang/include/clang/AST/Expr.h
  clang/lib/AST/ExprConstant.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D131447.450963.patch
Type: text/x-patch
Size: 5251 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220808/49d6d03d/attachment.bin>


More information about the cfe-commits mailing list