annotate clang/test/CodeGen/PR2001-bitfield-reload.c @ 207:2e18cbf3894f

LLVM12
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 08 Jun 2021 06:07:14 +0900
parents 1d019706d866
children c4bab56944e8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 // RUN: %clang_cc1 -triple i386-unknown-unknown -O3 -emit-llvm -o - %s | FileCheck %s
anatofuz
parents:
diff changeset
2 // PR2001
anatofuz
parents:
diff changeset
3
anatofuz
parents:
diff changeset
4 /* Test that the result of the assignment properly uses the value *in
anatofuz
parents:
diff changeset
5 the bitfield* as opposed to the RHS. */
anatofuz
parents:
diff changeset
6 static int foo(int i) {
anatofuz
parents:
diff changeset
7 struct {
anatofuz
parents:
diff changeset
8 int f0 : 2;
anatofuz
parents:
diff changeset
9 } x;
anatofuz
parents:
diff changeset
10 return (x.f0 = i);
anatofuz
parents:
diff changeset
11 }
anatofuz
parents:
diff changeset
12
anatofuz
parents:
diff changeset
13 int bar() {
anatofuz
parents:
diff changeset
14 // CHECK: ret i32 1
anatofuz
parents:
diff changeset
15 return foo(-5) == -1;
anatofuz
parents:
diff changeset
16 }