1 // RUN: %Slang -O 0 %s 2 // RUN: %rs-filecheck-wrapper %s 3 // CHECK: define internal i32 @main( 4 // CHECK: %f = alloca float, 5 // CHECK: %pf = alloca float*, 6 // CHECK: %ppn = alloca i32**, 7 8 struct float_struct { 9 float f; 10 float f2[2]; 11 } compound_float; 12 13 static 14 int main(int argc, char* argv[]) 15 { 16 float f = 0.f; 17 float *pf = &f; 18 19 double d[2][2] = {{0, 1}, {2, 3.0}}; 20 struct float_struct s; 21 22 unsigned short us = -1; 23 const unsigned long l = (unsigned long) -1.0e8f; 24 25 { 26 int** ppn = 0; 27 if (ppn) { 28 return -1; 29 } 30 } 31 32 s.f = 10e-4f; 33 s.f2[0] = 1e4f; 34 s.f2[1] = 100.5f; 35 36 double result = pf[0] * d[1][1] * s.f * us * l; 37 return (result == 0 ? 0 : -1); 38 } 39 40 void the_main() { 41 main(0, 0); 42 } 43 44 #pragma version(1) 45 #pragma rs java_package_name(foo) 46