diff options
author | Kaz Kojima <kkojima@gcc.gnu.org> | 2007-03-10 05:04:10 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2007-03-10 05:04:10 +0000 |
commit | 07288ab03780bf84d7c0771b6bd76a78160d75d5 (patch) | |
tree | cdc343994eacf3399fee991dcb55b715d9654571 /gcc/mode-switching.c | |
parent | 9eeea7612d055f00ce21fd1442411c838d82b452 (diff) | |
download | gcc-07288ab03780bf84d7c0771b6bd76a78160d75d5.zip gcc-07288ab03780bf84d7c0771b6bd76a78160d75d5.tar.gz gcc-07288ab03780bf84d7c0771b6bd76a78160d75d5.tar.bz2 |
mode-switching.c (create_pre_exit): Skip blockage insn.
* mode-switching.c (create_pre_exit): Skip blockage insn.
From-SVN: r122791
Diffstat (limited to 'gcc/mode-switching.c')
-rw-r--r-- | gcc/mode-switching.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/mode-switching.c b/gcc/mode-switching.c index 407ae76..8e9bde3 100644 --- a/gcc/mode-switching.c +++ b/gcc/mode-switching.c @@ -259,6 +259,12 @@ create_pre_exit (int n_entities, int *entity_map, const int *num_modes) last_insn = return_copy; continue; } + if (GET_CODE (PATTERN (return_copy)) == ASM_INPUT + && strcmp (XSTR (PATTERN (return_copy), 0), "") == 0) + { + last_insn = return_copy; + continue; + } /* If the return register is not (in its entirety) likely spilled, the return copy might be partially or completely optimized away. */ |