summaryrefslogtreecommitdiff
path: root/gcc/ira.c
diff options
context:
space:
mode:
authoredlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>2016-06-06 12:31:59 +0000
committeredlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>2016-06-06 12:31:59 +0000
commit43ac2f2f6bd2bf1281103b4bef4fafaed627039f (patch)
tree4c408260aa6953423d714fd94976bb8529014f19 /gcc/ira.c
parent7e1786b2dd58add72150b4221d2cabf04e181b0a (diff)
downloadgcc-43ac2f2f6bd2bf1281103b4bef4fafaed627039f.tar.gz
gcc/
2016-06-06 Bernd Edlinger <bernd.edlinger@hotmail.de> PR c/24414 * cfgexpand.c (expand_asm_loc): Remove handling for ADDR_EXPR. Implicitly clobber memory for basic asm with non-empty assembler string. Use targetm.md_asm_adjust also here. * compare-elim.c (arithmetic_flags_clobber_p): Use asm_noperands here. * final.c (final_scan_insn): Handle basic asm in PARALLEL block. * gimple.c (gimple_asm_clobbers_memory_p): Handle basic asm with non-empty assembler string. * ira.c (compute_regs_asm_clobbered): Use asm_noperands here. * recog.c (asm_noperands): Handle basic asm in PARALLEL block. (decode_asm_operands): Handle basic asm in PARALLEL block. (extract_insn): Handle basic asm in PARALLEL block. * doc/extend.texi: Mention new behavior of basic asm. * config/ia64/ia64 (rtx_needs_barrier): Handle ASM_INPUT here. * config/pa/pa.c (branch_to_delay_slot_p, branch_needs_nop_p, branch_needs_nop_p): Use asm_noperands. gcc/testsuite/ 2016-06-06 Bernd Edlinger <bernd.edlinger@hotmail.de> PR c/24414 * gcc.target/i386/pr24414.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237133 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ira.c')
-rw-r--r--gcc/ira.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ira.c b/gcc/ira.c
index 3c4e3b6bd08..c66bb9e78fc 100644
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -2233,7 +2233,7 @@ compute_regs_asm_clobbered (void)
{
df_ref def;
- if (NONDEBUG_INSN_P (insn) && extract_asm_operands (PATTERN (insn)))
+ if (NONDEBUG_INSN_P (insn) && asm_noperands (PATTERN (insn)) >= 0)
FOR_EACH_INSN_DEF (def, insn)
{
unsigned int dregno = DF_REF_REGNO (def);