From 1544db9a61b6a441be68c5a6ba2504a6ccc2b956 Mon Sep 17 00:00:00 2001 From: Bernd Edlinger Date: Mon, 23 Jul 2018 13:23:51 +0000 Subject: re PR c/86617 (Volatile qualifier is ignored sometimes for unsigned char) gcc: 2018-07-23 Bernd Edlinger PR c/86617 * genmatch.c (dt_operand::gen_match_op): Avoid folding volatile values. testsuite: 2018-07-23 Bernd Edlinger PR c/86617 * gcc.dg/pr86617.c: New test. From-SVN: r262933 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/pr86617.c | 11 +++++++++++ 2 files changed, 16 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/pr86617.c (limited to 'gcc/testsuite') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b5e2a54..5e6b8eb 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2018-07-23 Bernd Edlinger + + PR c/86617 + * gcc.dg/pr86617.c: New test. + 2018-07-23 Jakub Jelinek PR c++/86569 diff --git a/gcc/testsuite/gcc.dg/pr86617.c b/gcc/testsuite/gcc.dg/pr86617.c new file mode 100644 index 0000000..72135e2 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr86617.c @@ -0,0 +1,11 @@ +/* { dg-options "-Os -fdump-rtl-final" } */ + +volatile unsigned char u8; + +void test (void) +{ + u8 = u8 + u8; + u8 = u8 - u8; +} + +/* { dg-final { scan-rtl-dump-times "mem/v" 6 "final" } } */ -- cgit v1.1