Home | History | Annotate | Download | only in CodeGen
      1 // RUN: %clang -O3 -emit-llvm -S -o - %s | FileCheck %s
      2 
      3 long long f0(void) {
      4  struct { unsigned f0 : 32; } x = { 18 };
      5  return (long long) (x.f0 - (int) 22);
      6 }
      7 // CHECK: @f0()
      8 // CHECK: ret i64 4294967292
      9 
     10 long long f1(void) {
     11  struct { unsigned f0 : 31; } x = { 18 };
     12  return (long long) (x.f0 - (int) 22);
     13 }
     14 // CHECK: @f1()
     15 // CHECK: ret i64 -4
     16 
     17 long long f2(void) {
     18  struct { unsigned f0     ; } x = { 18 };
     19  return (long long) (x.f0 - (int) 22);
     20 }
     21 // CHECK: @f2()
     22 // CHECK: ret i64 4294967292
     23