diff options
| author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-04-10 21:54:33 +0000 |
|---|---|---|
| committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-04-10 21:54:33 +0000 |
| commit | 2ff313d1dc13970c0448e55fbcf53185e9795fb1 (patch) | |
| tree | 6e1349bcedc76f09d99e7301723c8a2d323cbecd | |
| parent | 19316b5e98e9edac989e9103e108ce4aaebf3f52 (diff) | |
| download | ppe42-gcc-2ff313d1dc13970c0448e55fbcf53185e9795fb1.tar.gz ppe42-gcc-2ff313d1dc13970c0448e55fbcf53185e9795fb1.zip | |
PR inline-asm/8803
* function.c (instantate_virtual_regs): Verify that all ASM statements
match after the virutal regs instantiation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@65438 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/function.c | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d56304733d1..263bdc9bf49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Thu Apr 10 23:52:30 CEST 2003 Jan Hubicka <jh@suse.cz> + + PR inline-asm/8803 + * function.c (instantate_virtual_regs): Verify that all ASM statements + match after the virutal regs instantiation. + 2003-04-10 Steve Ellcey <sje@cup.hp.com> * ia64-protos.h (addp4_optimize_ok): New. diff --git a/gcc/function.c b/gcc/function.c index b87da2ad25f..306e7523654 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -3592,6 +3592,12 @@ instantiate_virtual_regs (fndecl, insns) if (GET_CODE (insn) == CALL_INSN) instantiate_virtual_regs_1 (&CALL_INSN_FUNCTION_USAGE (insn), NULL_RTX, 0); + + /* Past this point all ASM statements should match. Verify that + to avoid failures later in the compilation process. */ + if (asm_noperands (PATTERN (insn)) >= 0 + && ! check_asm_operands (PATTERN (insn))) + instantiate_virtual_regs_lossage (insn); } /* Instantiate the stack slots for the parm registers, for later use in |

