diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-02-02 14:23:43 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2009-02-02 14:23:43 +0100 |
commit | eca72963aad838236301cfed220a41f8b4fa6b60 (patch) | |
tree | a1aa96b3278b1c873c7432d2ad53d27e983ec85a /gcc/stmt.c | |
parent | 43014633b0b9f0e3d2646b6c4ecd75d3830a18b2 (diff) | |
download | gcc-eca72963aad838236301cfed220a41f8b4fa6b60.zip gcc-eca72963aad838236301cfed220a41f8b4fa6b60.tar.gz gcc-eca72963aad838236301cfed220a41f8b4fa6b60.tar.bz2 |
re PR inline-asm/39058 (ICE with double in inline-asm)
PR inline-asm/39058
* recog.h (asm_operand_ok): Add constraints argument.
* recog.c (asm_operand_ok): Likewise. If it is set, for digits
recurse on matching constraint.
(check_asm_operands): Pass constraints as 3rd argument to
asm_operand_ok. Don't look up matching constraint here.
* stmt.c (expand_asm_operands): Pass NULL as 3rd argument
to asm_operand_ok.
* gcc.target/i386/pr39058.c: New test.
From-SVN: r143867
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r-- | gcc/stmt.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -1,6 +1,6 @@ /* Expands front end tree to back end RTL for GCC Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, - 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of GCC. @@ -886,7 +886,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs, else if (MEM_P (op)) op = validize_mem (op); - if (asm_operand_ok (op, constraint) <= 0) + if (asm_operand_ok (op, constraint, NULL) <= 0) { if (allows_reg && TYPE_MODE (type) != BLKmode) op = force_reg (TYPE_MODE (type), op); |