diff options
Diffstat (limited to 'contrib/gcc/cse.c')
-rw-r--r-- | contrib/gcc/cse.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/contrib/gcc/cse.c b/contrib/gcc/cse.c index efd05de..00c5122 100644 --- a/contrib/gcc/cse.c +++ b/contrib/gcc/cse.c @@ -7811,13 +7811,6 @@ invalidate_skipped_set (dest, set) rtx set; rtx dest; { - if (GET_CODE (set) == CLOBBER -#ifdef HAVE_cc0 - || dest == cc0_rtx -#endif - || dest == pc_rtx) - return; - if (GET_CODE (dest) == MEM) note_mem_written (dest, &skipped_writes_memory); @@ -7827,6 +7820,13 @@ invalidate_skipped_set (dest, set) if (skipped_writes_memory.nonscalar) skipped_writes_memory.all = 1; + if (GET_CODE (set) == CLOBBER +#ifdef HAVE_cc0 + || dest == cc0_rtx +#endif + || dest == pc_rtx) + return; + if (GET_CODE (dest) == REG || GET_CODE (dest) == SUBREG || (! skipped_writes_memory.all && ! cse_rtx_addr_varies_p (dest))) invalidate (dest, VOIDmode); |