mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-21 17:30:54 +08:00
d: Always set ASM_VOLATILE_P on asm statements (PR94425)
gcc/d/ChangeLog: PR d/94425 * toir.cc (IRVisitor::visit (GccAsmStatement *)): Set ASM_VOLATILE_P on all asm statements.
This commit is contained in:
parent
42867b875c
commit
30d26118f9
@ -1,3 +1,9 @@
|
||||
2020-04-07 Iain Buclaw <ibuclaw@gdcproject.org>
|
||||
|
||||
PR d/94425
|
||||
* toir.cc (IRVisitor::visit (GccAsmStatement *)): Set ASM_VOLATILE_P
|
||||
on all asm statements.
|
||||
|
||||
2020-04-01 Iain Buclaw <ibuclaw@gdcproject.org>
|
||||
|
||||
PR d/90136
|
||||
|
@ -1427,8 +1427,9 @@ public:
|
||||
if (s->args == NULL && s->clobbers == NULL)
|
||||
ASM_INPUT_P (exp) = 1;
|
||||
|
||||
/* Asm statements are treated as volatile unless 'pure'. */
|
||||
ASM_VOLATILE_P (exp) = !(s->stc & STCpure);
|
||||
/* All asm statements are assumed to have a side effect. As a future
|
||||
optimization, this could be unset when building in release mode. */
|
||||
ASM_VOLATILE_P (exp) = 1;
|
||||
|
||||
add_stmt (exp);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user