diff mbox

Remove now unnecessary bailout from split_live_ranges_for_shrink_wrap

Message ID 20140523183947.GA22402@virgil.suse
State New
Headers show

Commit Message

Martin Jambor May 23, 2014, 6:39 p.m. UTC
Hi,

since Jakub has fixed my code and replaced wrong 

            validate_change (uin, DF_REF_LOC (use), newreg, true);

     with correct

           validate_change (uin, DF_REF_REAL_LOC (use), newreg, true);

in split_live_ranges_for_shrink_wrap, we can remove the punting
condition slightly above.  So this patch does that.

Bootstrapped and tested on x86_64-linux.  OK for trunk?

Thanks,

Martin


2014-05-23  Martin Jambor  <mjambor@suse.cz>

	* ira.c (split_live_ranges_for_shrink_wrap): Remove bailout on
	subreg uses.

Comments

Jeff Law May 23, 2014, 6:43 p.m. UTC | #1
On 05/23/14 12:39, Martin Jambor wrote:
> Hi,
>
> since Jakub has fixed my code and replaced wrong
>
>              validate_change (uin, DF_REF_LOC (use), newreg, true);
>
>       with correct
>
>             validate_change (uin, DF_REF_REAL_LOC (use), newreg, true);
>
> in split_live_ranges_for_shrink_wrap, we can remove the punting
> condition slightly above.  So this patch does that.
>
> Bootstrapped and tested on x86_64-linux.  OK for trunk?
>
> Thanks,
>
> Martin
>
>
> 2014-05-23  Martin Jambor  <mjambor@suse.cz>
>
> 	* ira.c (split_live_ranges_for_shrink_wrap): Remove bailout on
> 	subreg uses.
OK.
Jeff
diff mbox

Patch

diff --git a/gcc/ira.c b/gcc/ira.c
index b9caad7..00d95fb 100644
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -4979,17 +4979,6 @@  split_live_ranges_for_shrink_wrap (void)
 	   use;
 	   use = DF_REF_NEXT_REG (use))
 	{
-	  if (NONDEBUG_INSN_P (DF_REF_INSN (use))
-	      && GET_CODE (DF_REF_REG (use)) == SUBREG)
-	    {
-	      /* This is necessary to avoid hitting an assert at
-		 postreload.c:2294 in libstc++ testcases on x86_64-linux.  I'm
-		 not really sure what the probblem actually is there.  */
-	      bitmap_clear (&need_new);
-	      bitmap_clear (&reachable);
-	      return false;
-	    }
-
 	  int ubbi = DF_REF_BB (use)->index;
 	  if (bitmap_bit_p (&reachable, ubbi))
 	    bitmap_set_bit (&need_new, ubbi);