1// RUN: %clang -target powerpc-linux-gnu -emit-llvm -S -O0 %s -o - | FileCheck %s --check-prefix=CHECK-BE --check-prefix=CHECK 2// RUN: %clang -target powerpc64-linux-gnu -emit-llvm -S -O0 %s -o - | FileCheck %s --check-prefix=CHECK-BE --check-prefix=CHECK 3// RUN: %clang -target powerpc64le-linux-gnu -emit-llvm -S -O0 %s -o - | FileCheck %s --check-prefix=CHECK-LE --check-prefix=CHECK 4 5bool b; 6double d = -1.0; 7long double ld = -1.0L; 8void test_signbit() 9{ 10 b = __builtin_signbit(1.0L); 11 // CHECK: i128 12 // CHECK-LE-NOT: lshr 13 // CHECK-BE: lshr 14 // CHECK: bitcast 15 // CHECK: ppc_fp128 16 17 b = __builtin_signbit(ld); 18 // CHECK: bitcast 19 // CHECK: ppc_fp128 20 // CHECK-LE-NOT: lshr 21 // CHECK-BE: lshr 22 23 b = __builtin_signbitf(1.0); 24 // CHECK: store i8 0 25 26 b = __builtin_signbitf(d); 27 // CHECK: bitcast 28 // CHECK-LE-NOT: lshr 29 // CHECK-BE-NOT: lshr 30 31 b = __builtin_signbitl(1.0L); 32 // CHECK: i128 33 // CHECK-LE-NOT: lshr 34 // CHECK-BE: lshr 35 // CHECK: bitcast 36 // CHECK: ppc_fp128 37 38 b = __builtin_signbitl(ld); 39 // CHECK: bitcast 40 // CHECK: ppc_fp128 41 // CHECK-LE-NOT: lshr 42 // CHECK-BE: lshr 43} 44