32 lines · c
1// RUN: %clang_cc1 -triple i386-unknown-unknown -O1 -Wno-int-conversion -emit-llvm -o - %s | FileCheck %s2// CHECK-LABEL: define{{.*}} i32 @f03// CHECK: ret i32 14// CHECK-LABEL: define{{.*}} i32 @f15// CHECK: ret i32 16// CHECK-LABEL: define{{.*}} i32 @f27// CHECK: ret i32 18// <rdr://6115726>9 10int f0(void) {11 int x;12 unsigned short n = 1;13 int *a = &x;14 int *b = &x;15 a = a - n;16 b -= n;17 return a == b;18}19 20int f1(int *a) {21 long b = a - (int*) 1;22 a -= (int*) 1;23 return b == (long) a;24}25 26int f2(long n) {27 int *b = n + (int*) 1;28 n += (int*) 1;29 return b == (int*) n;30}31 32