1// RUN: %Slang -O 3 %s 2// RUN: %rs-filecheck-wrapper %s 3// CHECK-NOT: define internal i32 @main( 4// CHECK-NOT: %f = alloca float, 5// CHECK-NOT: %pf = alloca float*, 6// CHECK-NOT: %ppn = alloca i32**, 7 8struct float_struct { 9 float f; 10 float f2[2]; 11} compound_float; 12 13static 14int 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 40void the_main() { 41 main(0, 0); 42} 43 44#pragma version(1) 45#pragma rs java_package_name(foo) 46