1 // RUN: %build_test_apk --driver driver-simple-exit --out %t --testcase %s %build_test_apk_opts
2 // RUN: %Test_jit_debuginfo %s %t
3 // DEBUGGER: source android-commands.py
4 // DEBUGGER: load-android-app %t
5 // DEBUGGER: set breakpoint pending on
6 // DEBUGGER: break locals.rs:48
7 // DEBUGGER: run-android-app
8 // DEBUGGER: info locals
9 // CHECK: pf = 0x
10 // CHECK: s = {f = 0.00100000005, f2 = {10000, 100.5}}
11 // CHECK: us = 65535
12 // CHECK: f = 0
13 // CHECK: d = {{[{][{]}}0, 1}, {2, 3{{[}][}]}}
14 // CHECK: l = 0
15 // CHECK: result = 0
16 // DEBUGGER: continue
17 
18 struct float_struct {
19   float f;
20   float f2[2];
21 } compound_float;
22 
23 
24 static
25 int main(int argc, char* argv[])
26 {
27   float f = 0.f;
28   float *pf = &f;
29 
30   double d[2][2] = {{0, 1}, {2, 3.0}};
31   struct float_struct s;
32 
33   unsigned short us = -1;
34   const unsigned long l = (unsigned long) -1.0e8f;
35 
36   {
37     int** ppn = 0;
38     if (ppn) {
39       return -1;
40     }
41   }
42 
43   s.f = 10e-4f;
44   s.f2[0] = 1e4f;
45   s.f2[1] = 100.5f;
46 
47   double result = pf[0] * d[1][1] * s.f * us * l;
48   return (result == 0 ? 0 : -1);
49 }
50 
51 void entry() {
52   main(0, 0);
53 }
54 
55 #pragma version(1)
56 #pragma rs java_package_name(%PACKAGE%)
57 
58