diff options
author | Hans-Peter Nilsson <hp@bitrange.com> | 2012-11-26 03:22:15 +0000 |
---|---|---|
committer | Hans-Peter Nilsson <hp@bitrange.com> | 2012-11-26 03:22:15 +0000 |
commit | be33c2716ec08596fbd3de69522dd94f40fc9483 (patch) | |
tree | b0f93ca1b6e40dba5a22539f21ca724539f77be1 /gcc/cse.c | |
parent | 8bc9c143de10a0232938c98b990d9067b8ef32f8 (diff) |
PR middle-end/55030
* builtins.c (expand_builtin_setjmp_receiver): Update comment
regarding purpose of blockage.
* emit-rtl.c [!HAVE_blockage] (gen_blockage): Similarly for
the head comment.
* rtlanal.c (volatile_insn_p): Ditto.
* doc/md.texi (blockage): Update similarly. Change wording to
require one of two forms, rather than implying a wider choice.
* cse.c (cse_insn): Where checking for blocking insns, use
volatile_insn_p instead of manual check for volatile ASM.
* dse.c (scan_insn): Ditto.
* cselib.c (cselib_process_insn): Ditto.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@193802 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cse.c')
-rw-r--r-- | gcc/cse.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/cse.c b/gcc/cse.c index 4d1d016dcf2..ff91b9d93f5 100644 --- a/gcc/cse.c +++ b/gcc/cse.c @@ -5661,10 +5661,9 @@ cse_insn (rtx insn) invalidate (XEXP (dest, 0), GET_MODE (dest)); } - /* A volatile ASM invalidates everything. */ + /* A volatile ASM or an UNSPEC_VOLATILE invalidates everything. */ if (NONJUMP_INSN_P (insn) - && GET_CODE (PATTERN (insn)) == ASM_OPERANDS - && MEM_VOLATILE_P (PATTERN (insn))) + && volatile_insn_p (PATTERN (insn))) flush_hash_table (); /* Don't cse over a call to setjmp; on some machines (eg VAX) |