Better bundle template selection for IA64

Bernd Schmidt bernds@redhat.co.uk
Sat Oct 28 08:20:00 GMT 2000


This patch changes template selection not to give any priority to BBB, MBB, and
MMF templates, all of which have some disadvantages (the first two force the
use of a weaker branch prediction even if the slots are filled with NOPs, and
the second one is problematic for instruction issue.


Bernd

	* tc-ia64.c (extra_goodness): Only prefer F in slot 1 and B in slot 2.

Index: tc-ia64.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-ia64.c,v
retrieving revision 1.23
diff -u -p -r1.23 tc-ia64.c
--- tc-ia64.c	2000/10/05 21:55:24	1.23
+++ tc-ia64.c	2000/10/28 15:18:11
@@ -5711,9 +5711,9 @@ match (int templ, int type, int slot)
 static inline int
 extra_goodness (int templ, int slot)
 {
-  if (match (templ, IA64_TYPE_F, slot))
+  if (slot == 1 && match (templ, IA64_TYPE_F, slot))
     return 2;
-  if (match (templ, IA64_TYPE_B, slot))
+  if (slot == 2 && match (templ, IA64_TYPE_B, slot))
     return 1;
   return 0;
 }



More information about the Binutils mailing list