From a524985e06f2b5bda5bea91b716ad2ad3bcc351a Mon Sep 17 00:00:00 2001
From: Bernd Schmidt <bernd.schmidt@analog.com>
Date: Thu, 4 Sep 2008 19:18:26 +0000
Subject: [PATCH] bfin.c (gen_one_bundle): Don't create new nops when
 optimizing for size.

	* config/bfin/bfin.c (gen_one_bundle): Don't create new nops when
	optimizing for size.

From-SVN: r139999
---
 gcc/ChangeLog          | 5 +++++
 gcc/config/bfin/bfin.c | 5 +++++
 2 files changed, 10 insertions(+)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9eebb079394a..9146cfb945aa 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2008-09-04  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+	* config/bfin/bfin.c (gen_one_bundle): Don't create new nops when
+	optimizing for size.
+
 2008-09-04  Richard Sandiford  <rdsandiford@googlemail.com>
 
 	* df-scan.c (df_get_entry_block_def_set): Add STACK_POINTER_REGNUM
diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c
index 90a67888b978..8e0f355d1760 100644
--- a/gcc/config/bfin/bfin.c
+++ b/gcc/config/bfin/bfin.c
@@ -4457,6 +4457,11 @@ gen_one_bundle (rtx slot[3])
 {
   gcc_assert (slot[1] != NULL_RTX);
 
+  /* Don't add extra NOPs if optimizing for size.  */
+  if (optimize_size
+      && (slot[0] == NULL_RTX || slot[2] == NULL_RTX))
+    return false;
+
   /* Verify that we really can do the multi-issue.  */
   if (slot[0])
     {
-- 
GitLab