From 0cfb3aae63a541710b665812c776fe2d271a0864 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Fri, 9 Feb 2007 13:55:20 +0000 Subject: [PATCH] test constant folding with bitset values --- ir/be/test/bf_constfold.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 ir/be/test/bf_constfold.c diff --git a/ir/be/test/bf_constfold.c b/ir/be/test/bf_constfold.c new file mode 100644 index 000000000..28036c12f --- /dev/null +++ b/ir/be/test/bf_constfold.c @@ -0,0 +1,23 @@ +#include + +/* Demonstrates a bug where constant folding ignores width of bitfields */ + +struct __attribute__((packed)) A +{ + unsigned int i:1, l:1, j:3, k:11; +}; +struct A sA; + +int main() +{ + unsigned int mask; + struct A x; + + sA.k = -1; + mask = sA.k; + x = sA; + + printf("Val1: %x (expected 7ff) val2: %x (expected 7ff)\n", mask, x.k); + + return 0; +} -- 2.20.1