forked from OSchip/llvm-project
38 lines
1.3 KiB
C
38 lines
1.3 KiB
C
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
|
// RUN: %clang_cc1 -triple msp430-unknown-unknown -O3 -emit-llvm -o- %s | FileCheck %s
|
|
// REQUIRES: msp430-registered-target
|
|
|
|
_Static_assert(sizeof(int) == 2, "Assumption failed");
|
|
_Static_assert(sizeof(long) == 4, "Assumption failed");
|
|
_Static_assert(sizeof(long long) == 8, "Assumption failed");
|
|
_Static_assert(sizeof(float) == 4, "Assumption failed");
|
|
_Static_assert(sizeof(double) == 8, "Assumption failed");
|
|
_Static_assert(sizeof(long double) == 8, "Assumption failed");
|
|
|
|
// CHECK-LABEL: @powif(
|
|
// CHECK-NEXT: entry:
|
|
// CHECK-NEXT: [[TMP0:%.*]] = tail call float @llvm.powi.f32.i16(float [[X:%.*]], i16 [[Y:%.*]])
|
|
// CHECK-NEXT: ret float [[TMP0]]
|
|
//
|
|
float powif(float x, int y) {
|
|
return __builtin_powif(x, y);
|
|
}
|
|
|
|
// CHECK-LABEL: @powi(
|
|
// CHECK-NEXT: entry:
|
|
// CHECK-NEXT: [[TMP0:%.*]] = tail call double @llvm.powi.f64.i16(double [[X:%.*]], i16 [[Y:%.*]])
|
|
// CHECK-NEXT: ret double [[TMP0]]
|
|
//
|
|
double powi(double x, int y) {
|
|
return __builtin_powi(x, y);
|
|
}
|
|
|
|
// CHECK-LABEL: @powil(
|
|
// CHECK-NEXT: entry:
|
|
// CHECK-NEXT: [[TMP0:%.*]] = tail call double @llvm.powi.f64.i16(double [[X:%.*]], i16 [[Y:%.*]])
|
|
// CHECK-NEXT: ret double [[TMP0]]
|
|
//
|
|
long double powil(long double x, int y) {
|
|
return __builtin_powil(x, y);
|
|
}
|