Home | History | Annotate | Download | only in multi_function
      1 // Copyright (C) 2011 The Android Open Source Project
      2 //
      3 // Licensed under the Apache License, Version 2.0 (the "License");
      4 // you may not use this file except in compliance with the License.
      5 // You may obtain a copy of the License at
      6 //
      7 //      http://www.apache.org/licenses/LICENSE-2.0
      8 //
      9 // Unless required by applicable law or agreed to in writing, software
     10 // distributed under the License is distributed on an "AS IS" BASIS,
     11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     12 // See the License for the specific language governing permissions and
     13 // limitations under the License.
     14 
     15 #pragma version(1)
     16 #pragma rs java_package_name(rs2spirv)
     17 #pragma rs_fp_relaxed
     18 
     19 static uchar4 twice(uchar4 in) {
     20   return in * 2;
     21 }
     22 
     23 static uchar getConstant() {
     24   return 37;
     25 }
     26 
     27 void NOP() {
     28   uchar3 x = {1, 2, 3};
     29   (void) convert_float3(x);
     30 }
     31 
     32 uchar4 __attribute__((kernel)) setImageAlpha(uchar4 in) {
     33   uchar4 out;
     34   out.rgba = twice(convert_uchar4((convert_uint4(in.rgba) * 37) >> (uint4)8));
     35   out.a = getConstant();
     36   NOP();
     37   return out;
     38 }
     39