Gabor Greif | bacfa02 | 2007-07-13 22:15:44 +0000 | [diff] [blame] | 1 | // RUN: clang -emit-llvm %s |
Gabor Greif | bacfa02 | 2007-07-13 22:15:44 +0000 | [diff] [blame] | 2 | |
Gabor Greif | b02d4b4 | 2007-07-13 23:40:27 +0000 | [diff] [blame] | 3 | int main(void) |
Gabor Greif | bacfa02 | 2007-07-13 22:15:44 +0000 | [diff] [blame] | 4 | { |
5 | double _Complex a = 5; | ||||
6 | double _Complex b = 42; | ||||
7 | |||||
Gabor Greif | b02d4b4 | 2007-07-13 23:40:27 +0000 | [diff] [blame] | 8 | return a * b != b * a; |
Gabor Greif | bacfa02 | 2007-07-13 22:15:44 +0000 | [diff] [blame] | 9 | } |
Chris Lattner | 12b2be2 | 2007-08-10 17:02:59 +0000 | [diff] [blame] | 10 | |
11 | _Complex double bar(int); | ||||
12 | void test(_Complex double*); | ||||
Chris Lattner | fd90ac0 | 2007-08-23 23:49:47 +0000 | [diff] [blame] | 13 | void takecomplex(_Complex double); |
Chris Lattner | 12b2be2 | 2007-08-10 17:02:59 +0000 | [diff] [blame] | 14 | |
15 | void test2(int c) { | ||||
16 | _Complex double X; | ||||
17 | X = bar(1); | ||||
18 | test(&X); | ||||
Chris Lattner | fd90ac0 | 2007-08-23 23:49:47 +0000 | [diff] [blame] | 19 | takecomplex(X); |
Chris Lattner | 12b2be2 | 2007-08-10 17:02:59 +0000 | [diff] [blame] | 20 | } |
21 | |||||
Chris Lattner | fd90ac0 | 2007-08-23 23:49:47 +0000 | [diff] [blame] | 22 | _Complex double g1, g2; |
Chris Lattner | 8ae3a9f | 2007-08-26 22:41:57 +0000 | [diff] [blame^] | 23 | _Complex float cf; |
24 | double D; | ||||
Chris Lattner | fd90ac0 | 2007-08-23 23:49:47 +0000 | [diff] [blame] | 25 | |
26 | void test3() { | ||||
27 | g1 = g1 + g2; | ||||
28 | g1 = g1 - g2; | ||||
29 | g1 = g1 * g2; | ||||
30 | g1 = +-~g1; | ||||
Chris Lattner | 46f93d0 | 2007-08-24 21:20:17 +0000 | [diff] [blame] | 31 | |
32 | double Gr = __real g1; | ||||
Chris Lattner | 8ae3a9f | 2007-08-26 22:41:57 +0000 | [diff] [blame^] | 33 | |
34 | //cf += D; // fixme: sema bug | ||||
35 | D += cf; | ||||
36 | cf /= g1; | ||||
Chris Lattner | fd90ac0 | 2007-08-23 23:49:47 +0000 | [diff] [blame] | 37 | } |