| // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --filter "^define |^entry:" --version 6 |
| // RUN: %clang_cc1 -triple sparc-unknown-unknown -emit-llvm %s -o - | FileCheck %s |
| |
| float __complex__ |
| // CHECK-LABEL: define dso_local { float, float } @p( |
| // CHECK-SAME: ptr noundef byval({ float, float }) align 4 [[A:%.*]], ptr noundef byval({ float, float }) align 4 [[B:%.*]]) #[[ATTR0:[0-9]+]] { |
| // CHECK: [[ENTRY:.*:]] |
| // |
| p (float __complex__ a, float __complex__ b) |
| { |
| return 0; |
| } |
| |
| double __complex__ |
| // CHECK-LABEL: define dso_local { double, double } @q( |
| // CHECK-SAME: ptr noundef byval({ double, double }) align 8 [[A:%.*]], ptr noundef byval({ double, double }) align 8 [[B:%.*]]) #[[ATTR0]] { |
| // CHECK: [[ENTRY:.*:]] |
| // |
| q (double __complex__ a, double __complex__ b) |
| { |
| return 0; |
| } |
| |
| long long __complex__ |
| // CHECK-LABEL: define dso_local { i64, i64 } @r( |
| // CHECK-SAME: ptr noundef byval({ i64, i64 }) align 8 [[A:%.*]], ptr noundef byval({ i64, i64 }) align 8 [[B:%.*]]) #[[ATTR0]] { |
| // CHECK: [[ENTRY:.*:]] |
| // |
| r (long long __complex__ a, long long __complex__ b) |
| { |
| return 0; |
| } |
| |
| long double |
| // CHECK-LABEL: define dso_local void @s( |
| // CHECK-SAME: ptr dead_on_unwind noalias writable sret(fp128) align 8 [[AGG_RESULT:%.*]], ptr noundef byval(fp128) align 8 [[TMP0:%.*]]) #[[ATTR0]] { |
| // CHECK: [[ENTRY:.*:]] |
| // |
| s(long double a) |
| { |
| return 0; |
| } |
| |
| long double _Complex |
| // CHECK-LABEL: define dso_local inreg { fp128, fp128 } @t( |
| // CHECK-SAME: ptr noundef byval({ fp128, fp128 }) align 8 [[A:%.*]]) #[[ATTR0]] { |
| // CHECK: [[ENTRY:.*:]] |
| // |
| t(long double _Complex a) |
| { |
| return 0; |
| } |