1 // RUN: %Slang %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 8 // This test case should behave identically to locals_opt_3.rs. 9 10 struct float_struct { 11 float f; 12 float f2[2]; 13 } compound_float; 14 15 16 static 17 int main(int argc, char* argv[]) 18 { 19 float f = 0.f; 20 float *pf = &f; 21 22 double d[2][2] = {{0, 1}, {2, 3.0}}; 23 struct float_struct s; 24 25 unsigned short us = -1; 26 const unsigned long l = (unsigned long) -1.0e8f; 27 28 { 29 int** ppn = 0; 30 if (ppn) { 31 return -1; 32 } 33 } 34 35 s.f = 10e-4f; 36 s.f2[0] = 1e4f; 37 s.f2[1] = 100.5f; 38 39 double result = pf[0] * d[1][1] * s.f * us * l; 40 return (result == 0 ? 0 : -1); 41 } 42 43 void the_main() { 44 main(0, 0); 45 } 46 47 #pragma version(1) 48 #pragma rs java_package_name(foo) 49