Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This commit implements a struct to replace template instantions of the functions tryAndSimplifyBinaryOp*. This change limits the number of template instantiations potential call sites have to create as well as abstracts some captured variables inside the struct to minimize the number of arguments passed to actual calls. In essence, a closure is emulated by the struct. Through escape analysis, scalar replacement and inlining, the overhead of creating this struct should be minimal on -O3 Signed-off-by: James You <[email protected]>
- Loading branch information