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/recog.h | |
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/recog.h')
-rw-r--r-- | gcc/recog.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/recog.h b/gcc/recog.h index 9b73211..f2b1f6e 100644 --- a/gcc/recog.h +++ b/gcc/recog.h @@ -1,6 +1,6 @@ /* Declarations for interface to insn recognizer and insn-output.c. Copyright (C) 1987, 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. + 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. This file is part of GCC. @@ -72,7 +72,7 @@ struct operand_alternative extern void init_recog (void); extern void init_recog_no_volatile (void); extern int check_asm_operands (rtx); -extern int asm_operand_ok (rtx, const char *); +extern int asm_operand_ok (rtx, const char *, const char **); extern bool validate_change (rtx, rtx *, rtx, bool); extern bool validate_unshare_change (rtx, rtx *, rtx, bool); extern bool canonicalize_change_group (rtx insn, rtx x); |