From: Wilco Dijkstra Date: Wed, 22 Mar 2017 17:51:12 +0000 (+0000) Subject: Many supported cores implement fusion of AES instructions. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e0701ef04266fa742bd3c7ced44b3195e32f146e;p=gcc.git Many supported cores implement fusion of AES instructions. Many supported cores implement fusion of AES instructions. When fusion happens it can give a significant performance gain. If not, scheduling fusion candidates next to each other has almost no effect on performance. Due to the high benefit/low cost it makes sense to enable AES fusion with -mcpu=generic so that cores that support it always benefit. gcc/ * config/aarch64/aarch64.c (generic_tunings): Add AES fusion. From-SVN: r246395 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eaf76508621..a4d5a9a560e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2017-03-22 Wilco Dijkstra + + * config/aarch64/aarch64.c (generic_tunings): Add AES fusion. + 2017-03-21 Aaron Sawdey PR target/80123 diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index a069427f576..eb0095d6b6d 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -536,7 +536,7 @@ static const struct tune_params generic_tunings = &generic_approx_modes, 4, /* memmov_cost */ 2, /* issue_rate */ - AARCH64_FUSE_NOTHING, /* fusible_ops */ + (AARCH64_FUSE_AES_AESMC), /* fusible_ops */ 8, /* function_align. */ 8, /* jump_align. */ 4, /* loop_align. */