[committed] Enable REE for H8
Commit Message
I was looking at H8 assembly code recently and noticed we had
unnecessary extensions. As it turns out we never enabled redundant
extension elimination on the H8. This patch fixes that oversight (and
was the trigger for the failure fixed my the prior patch).
Regression tested along with a bit of other in-progress work. Committing
to the trunk.
Jeff
commit 566c5f1aaae120d2283103e68ecf1c1a83dd4459
Author: Jeff Law <jeffreyalaw@gmail.com>
Date: Mon Oct 17 19:28:00 2022 -0400
Enable REE for H8
I was looking at H8 assembly code recently and noticed we had unnecessary
extensions. As it turns out we never enabled redundant extension elimination
on the H8. This patch fixes that oversight (and was the trigger for the
failure fixed my the prior patch).
gcc/common
* common/config/h8300/h8300-common.cc (h8300_option_optimization_table):
Enable redundant extension elimination at -O2 and above.
@@ -32,6 +32,8 @@ static const struct default_options h8300_option_optimization_table[] =
and/or variable-cycle branches where (cycle count taken !=
cycle count not taken). */
{ OPT_LEVELS_ALL, OPT_freorder_blocks, NULL, 0 },
+ /* Enable redundant extension instructions removal at -O2 and higher. */
+ { OPT_LEVELS_2_PLUS, OPT_free, NULL, 1 },
{ OPT_LEVELS_NONE, 0, NULL, 0 }
};