diff options
author | Eric Botcazou <ebotcazou@libertysurf.fr> | 2003-01-09 12:13:07 +0100 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2003-01-09 11:13:07 +0000 |
commit | 4c46ea235323cd0283d998d9860d8596811a704c (patch) | |
tree | 111c11b5a4cc31685a7092d95fa33e235dc2f666 /gcc/c-semantics.c | |
parent | f56e86bd9c96aed9d101e8f3893719fb29866c58 (diff) | |
download | gcc-4c46ea235323cd0283d998d9860d8596811a704c.zip gcc-4c46ea235323cd0283d998d9860d8596811a704c.tar.gz gcc-4c46ea235323cd0283d998d9860d8596811a704c.tar.bz2 |
re PR inline-asm/8832 (traditional "asm volatile" code is illegally optimized)
PR inline-asm/8832
* tree.h (expand_asm): New prototype.
* stmt.c (expand_asm): Set the MEM_VOLATILE_P flag if instructed
to do so.
* c-semantics (genrtl_asm_stmt): Pass the RID_VOLATILE qualifier
down to expand_asm.
* c-typeck.c (simple_asm_stmt): Set the RID_VOLATILE qualifier.
* rtlanal.c (volatile_insn_p) [ASM_INPUT]: Test the MEM_VOLATILE_P flag.
(volatile_refs_p) [ASM_INPUT]: Likewise.
(side_effects_p) [ASM_INPUT]: Likewise.
From-SVN: r61099
Diffstat (limited to 'gcc/c-semantics.c')
-rw-r--r-- | gcc/c-semantics.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/c-semantics.c b/gcc/c-semantics.c index 77d7384..769c116 100644 --- a/gcc/c-semantics.c +++ b/gcc/c-semantics.c @@ -749,7 +749,7 @@ genrtl_asm_stmt (cv_qualifier, string, output_operands, emit_line_note (input_filename, lineno); if (asm_input_p) - expand_asm (string); + expand_asm (string, cv_qualifier != NULL_TREE); else c_expand_asm_operands (string, output_operands, input_operands, clobbers, cv_qualifier != NULL_TREE, |