Andrey Turetskiy | db6655f | 2016-02-10 11:58:46 +0000 | [diff] [blame^] | 1 | // RUN: %clang_cc1 -triple i386-pc-elfiamcu -emit-llvm -o - %s | FileCheck %s |
| 2 | |
| 3 | // CHECK: target datalayout = "e-m:e-p:32:32-i64:32-f64:32-f128:32-n8:16:32-a:0:32-S32" |
| 4 | // CHECK: target triple = "i386-pc-elfiamcu" |
| 5 | |
| 6 | |
| 7 | void food(double *d); |
| 8 | void fooll(long long *ll); |
| 9 | void fooull(unsigned long long *ull); |
| 10 | void foold(long double *ld); |
| 11 | |
| 12 | // CHECK-LABEL: define void @testdouble() |
| 13 | // CHECK: alloca double, align 4 |
| 14 | void testdouble() { |
| 15 | double d = 2.0; |
| 16 | food(&d); |
| 17 | } |
| 18 | |
| 19 | // CHECK-LABEL: define void @testlonglong() |
| 20 | // CHECK: alloca i64, align 4 |
| 21 | void testlonglong() { |
| 22 | long long ll = 2; |
| 23 | fooll(&ll); |
| 24 | } |
| 25 | |
| 26 | // CHECK-LABEL: define void @testunsignedlonglong() |
| 27 | // CHECK: alloca i64, align 4 |
| 28 | void testunsignedlonglong() { |
| 29 | unsigned long long ull = 2; |
| 30 | fooull(&ull); |
| 31 | } |
| 32 | |
| 33 | // CHECK-LABEL: define void @testlongdouble() |
| 34 | // CHECK: alloca double, align 4 |
| 35 | void testlongdouble() { |
| 36 | long double ld = 2.0; |
| 37 | foold(&ld); |
| 38 | } |