Clang Project

clang_source_code/test/CodeGen/PR2001-bitfield-reload.c
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. */
6static int foo(int i) {
7  struct {
8    int f0 : 2;
9  } x;
10  return (x.f0 = i);
11}
12
13int bar() {
14  // CHECK: ret i32 1
15  return foo(-5) == -1;
16}
17