1e5c31af7Sopenharmony_cigroup if "If Statements" 2e5c31af7Sopenharmony_ci 3e5c31af7Sopenharmony_ci case single_statement 4e5c31af7Sopenharmony_ci version 310 es 5e5c31af7Sopenharmony_ci values 6e5c31af7Sopenharmony_ci { 7e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 8e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 1.0 ]; 9e5c31af7Sopenharmony_ci } 10e5c31af7Sopenharmony_ci 11e5c31af7Sopenharmony_ci both "" 12e5c31af7Sopenharmony_ci #version 310 es 13e5c31af7Sopenharmony_ci precision highp float; 14e5c31af7Sopenharmony_ci ${DECLARATIONS} 15e5c31af7Sopenharmony_ci void main() 16e5c31af7Sopenharmony_ci { 17e5c31af7Sopenharmony_ci out0 = 0.0; 18e5c31af7Sopenharmony_ci if (in0 >= 1.0) 19e5c31af7Sopenharmony_ci out0 = 1.0; 20e5c31af7Sopenharmony_ci ${OUTPUT} 21e5c31af7Sopenharmony_ci } 22e5c31af7Sopenharmony_ci "" 23e5c31af7Sopenharmony_ci end 24e5c31af7Sopenharmony_ci 25e5c31af7Sopenharmony_ci case compound_statement 26e5c31af7Sopenharmony_ci version 310 es 27e5c31af7Sopenharmony_ci values 28e5c31af7Sopenharmony_ci { 29e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 30e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 1.0 ]; 31e5c31af7Sopenharmony_ci output float out1 = [ 1.0 | 0.0 | 0.0 ]; 32e5c31af7Sopenharmony_ci } 33e5c31af7Sopenharmony_ci 34e5c31af7Sopenharmony_ci both "" 35e5c31af7Sopenharmony_ci #version 310 es 36e5c31af7Sopenharmony_ci precision highp float; 37e5c31af7Sopenharmony_ci ${DECLARATIONS} 38e5c31af7Sopenharmony_ci void main() 39e5c31af7Sopenharmony_ci { 40e5c31af7Sopenharmony_ci out0 = 0.0; 41e5c31af7Sopenharmony_ci out1 = 1.0; 42e5c31af7Sopenharmony_ci if (in0 >= 1.0) 43e5c31af7Sopenharmony_ci { 44e5c31af7Sopenharmony_ci out0 = 1.0; 45e5c31af7Sopenharmony_ci out1 = 0.0; 46e5c31af7Sopenharmony_ci } 47e5c31af7Sopenharmony_ci ${OUTPUT} 48e5c31af7Sopenharmony_ci } 49e5c31af7Sopenharmony_ci "" 50e5c31af7Sopenharmony_ci end 51e5c31af7Sopenharmony_ci 52e5c31af7Sopenharmony_ci case sequence_statements 53e5c31af7Sopenharmony_ci version 310 es 54e5c31af7Sopenharmony_ci values 55e5c31af7Sopenharmony_ci { 56e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 57e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 1.0 ]; 58e5c31af7Sopenharmony_ci output float out1 = [ 1.0 | 0.0 | 0.0 ]; 59e5c31af7Sopenharmony_ci } 60e5c31af7Sopenharmony_ci 61e5c31af7Sopenharmony_ci both "" 62e5c31af7Sopenharmony_ci #version 310 es 63e5c31af7Sopenharmony_ci precision highp float; 64e5c31af7Sopenharmony_ci ${DECLARATIONS} 65e5c31af7Sopenharmony_ci void main() 66e5c31af7Sopenharmony_ci { 67e5c31af7Sopenharmony_ci out0 = 0.0; 68e5c31af7Sopenharmony_ci out1 = 1.0; 69e5c31af7Sopenharmony_ci if (in0 >= 1.0) 70e5c31af7Sopenharmony_ci out0 = 1.0, out1 = 0.0; 71e5c31af7Sopenharmony_ci ${OUTPUT} 72e5c31af7Sopenharmony_ci } 73e5c31af7Sopenharmony_ci "" 74e5c31af7Sopenharmony_ci end 75e5c31af7Sopenharmony_ci 76e5c31af7Sopenharmony_ci case sequence_condition 77e5c31af7Sopenharmony_ci version 310 es 78e5c31af7Sopenharmony_ci values 79e5c31af7Sopenharmony_ci { 80e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 81e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 1.0 ]; 82e5c31af7Sopenharmony_ci output float out1 = [ 1.0 | 0.0 | 0.0 ]; 83e5c31af7Sopenharmony_ci } 84e5c31af7Sopenharmony_ci 85e5c31af7Sopenharmony_ci both "" 86e5c31af7Sopenharmony_ci #version 310 es 87e5c31af7Sopenharmony_ci precision highp float; 88e5c31af7Sopenharmony_ci ${DECLARATIONS} 89e5c31af7Sopenharmony_ci void main() 90e5c31af7Sopenharmony_ci { 91e5c31af7Sopenharmony_ci out0 = 0.0; 92e5c31af7Sopenharmony_ci out1 = 1.0; 93e5c31af7Sopenharmony_ci if (false, in0 >= 1.0) 94e5c31af7Sopenharmony_ci out0 = 1.0, out1 = 0.0; 95e5c31af7Sopenharmony_ci ${OUTPUT} 96e5c31af7Sopenharmony_ci } 97e5c31af7Sopenharmony_ci "" 98e5c31af7Sopenharmony_ci end 99e5c31af7Sopenharmony_ci 100e5c31af7Sopenharmony_ci case complex_condition 101e5c31af7Sopenharmony_ci version 310 es 102e5c31af7Sopenharmony_ci values 103e5c31af7Sopenharmony_ci { 104e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 105e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 1.0 ]; 106e5c31af7Sopenharmony_ci output float out1 = [ 1.0 | 0.0 | 0.0 ]; 107e5c31af7Sopenharmony_ci } 108e5c31af7Sopenharmony_ci 109e5c31af7Sopenharmony_ci both "" 110e5c31af7Sopenharmony_ci #version 310 es 111e5c31af7Sopenharmony_ci precision highp float; 112e5c31af7Sopenharmony_ci ${DECLARATIONS} 113e5c31af7Sopenharmony_ci void main() 114e5c31af7Sopenharmony_ci { 115e5c31af7Sopenharmony_ci out0 = 0.0; 116e5c31af7Sopenharmony_ci out1 = 1.0; 117e5c31af7Sopenharmony_ci if (false || (in0 >= 1.0) && (in0 - 2.0*in0 < 0.0)) 118e5c31af7Sopenharmony_ci out0 = 1.0, out1 = 0.0; 119e5c31af7Sopenharmony_ci ${OUTPUT} 120e5c31af7Sopenharmony_ci } 121e5c31af7Sopenharmony_ci "" 122e5c31af7Sopenharmony_ci end 123e5c31af7Sopenharmony_ci 124e5c31af7Sopenharmony_ci case if_else 125e5c31af7Sopenharmony_ci version 310 es 126e5c31af7Sopenharmony_ci values 127e5c31af7Sopenharmony_ci { 128e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 129e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 1.0 ]; 130e5c31af7Sopenharmony_ci } 131e5c31af7Sopenharmony_ci 132e5c31af7Sopenharmony_ci both "" 133e5c31af7Sopenharmony_ci #version 310 es 134e5c31af7Sopenharmony_ci precision highp float; 135e5c31af7Sopenharmony_ci ${DECLARATIONS} 136e5c31af7Sopenharmony_ci void main() 137e5c31af7Sopenharmony_ci { 138e5c31af7Sopenharmony_ci if (in0 >= 1.0) 139e5c31af7Sopenharmony_ci out0 = 1.0; 140e5c31af7Sopenharmony_ci else 141e5c31af7Sopenharmony_ci out0 = 0.0; 142e5c31af7Sopenharmony_ci ${OUTPUT} 143e5c31af7Sopenharmony_ci } 144e5c31af7Sopenharmony_ci "" 145e5c31af7Sopenharmony_ci end 146e5c31af7Sopenharmony_ci 147e5c31af7Sopenharmony_ci case if_elseif 148e5c31af7Sopenharmony_ci version 310 es 149e5c31af7Sopenharmony_ci values 150e5c31af7Sopenharmony_ci { 151e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 152e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 2.0 ]; 153e5c31af7Sopenharmony_ci } 154e5c31af7Sopenharmony_ci 155e5c31af7Sopenharmony_ci both "" 156e5c31af7Sopenharmony_ci #version 310 es 157e5c31af7Sopenharmony_ci precision highp float; 158e5c31af7Sopenharmony_ci ${DECLARATIONS} 159e5c31af7Sopenharmony_ci void main() 160e5c31af7Sopenharmony_ci { 161e5c31af7Sopenharmony_ci out0 = 0.0; 162e5c31af7Sopenharmony_ci if (in0 >= 2.0) 163e5c31af7Sopenharmony_ci out0 = 2.0; 164e5c31af7Sopenharmony_ci else if (in0 >= 1.0) 165e5c31af7Sopenharmony_ci out0 = 1.0; 166e5c31af7Sopenharmony_ci ${OUTPUT} 167e5c31af7Sopenharmony_ci } 168e5c31af7Sopenharmony_ci "" 169e5c31af7Sopenharmony_ci end 170e5c31af7Sopenharmony_ci 171e5c31af7Sopenharmony_ci case if_elseif_else 172e5c31af7Sopenharmony_ci version 310 es 173e5c31af7Sopenharmony_ci values 174e5c31af7Sopenharmony_ci { 175e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 176e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 2.0 ]; 177e5c31af7Sopenharmony_ci } 178e5c31af7Sopenharmony_ci 179e5c31af7Sopenharmony_ci both "" 180e5c31af7Sopenharmony_ci #version 310 es 181e5c31af7Sopenharmony_ci precision highp float; 182e5c31af7Sopenharmony_ci ${DECLARATIONS} 183e5c31af7Sopenharmony_ci void main() 184e5c31af7Sopenharmony_ci { 185e5c31af7Sopenharmony_ci if (in0 >= 2.0) 186e5c31af7Sopenharmony_ci out0 = 2.0; 187e5c31af7Sopenharmony_ci else if (in0 >= 1.0) 188e5c31af7Sopenharmony_ci out0 = 1.0; 189e5c31af7Sopenharmony_ci else 190e5c31af7Sopenharmony_ci out0 = 0.0; 191e5c31af7Sopenharmony_ci ${OUTPUT} 192e5c31af7Sopenharmony_ci } 193e5c31af7Sopenharmony_ci "" 194e5c31af7Sopenharmony_ci end 195e5c31af7Sopenharmony_ci 196e5c31af7Sopenharmony_ci case mixed_if_elseif_else 197e5c31af7Sopenharmony_ci version 310 es 198e5c31af7Sopenharmony_ci values 199e5c31af7Sopenharmony_ci { 200e5c31af7Sopenharmony_ci input float in0 = [ 0.0 | 1.0 | 2.0 ]; 201e5c31af7Sopenharmony_ci output float out0 = [ 0.0 | 1.0 | 2.0 ]; 202e5c31af7Sopenharmony_ci } 203e5c31af7Sopenharmony_ci 204e5c31af7Sopenharmony_ci both "" 205e5c31af7Sopenharmony_ci #version 310 es 206e5c31af7Sopenharmony_ci precision highp float; 207e5c31af7Sopenharmony_ci ${DECLARATIONS} 208e5c31af7Sopenharmony_ci void main() 209e5c31af7Sopenharmony_ci { 210e5c31af7Sopenharmony_ci if (in0 >= 2.0) 211e5c31af7Sopenharmony_ci { 212e5c31af7Sopenharmony_ci out0 = 2.0; 213e5c31af7Sopenharmony_ci } 214e5c31af7Sopenharmony_ci else if (in0 >= 1.0) 215e5c31af7Sopenharmony_ci out0 = 2.0, out0 = 1.0; 216e5c31af7Sopenharmony_ci else 217e5c31af7Sopenharmony_ci out0 = 0.0; 218e5c31af7Sopenharmony_ci ${OUTPUT} 219e5c31af7Sopenharmony_ci } 220e5c31af7Sopenharmony_ci "" 221e5c31af7Sopenharmony_ci end 222e5c31af7Sopenharmony_ci 223e5c31af7Sopenharmony_ciend # if 224