/ go Public
cmd/compile: manually CSE |-combined rules? #36443
Issues related to the Go compiler and/or runtime.
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
We know that rewrite rules containing
|have a lot of shared subexpressions. Instead of expanding and generating one rewrite rule per expanded rule, we could instead loop over all op tuples, much as CL 213703 proposes we do for commutative ops. Note that this only works for |-expansions that aren't for the top level op, because the top level op is matched using a switch statement. Perhaps surprisingly, about 15% of |-expanded rules (both before and after expansion) use | only in non-top-level rules.
The text was updated successfully, but these errors were encountered: