xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGen/PR2001-bitfield-reload.c (revision 0b98e8aad89f2bd4ba80b523d73cf29e9dd82ce1)
1 // RUN: %clang_cc1 -triple i386-unknown-unknown -O3 -emit-llvm -o - %s | FileCheck %s
2 // PR2001
3 
4 /* Test that the result of the assignment properly uses the value *in
5    the bitfield* as opposed to the RHS. */
6 static int foo(int i) {
7   struct {
8     int f0 : 2;
9   } x;
10   return (x.f0 = i);
11 }
12 
13 int bar() {
14   // CHECK: ret i32 1
15   return foo(-5) == -1;
16 }
17