15bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# Copyright (C) 2016 The Android Open Source Project 25bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# 35bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# Licensed under the Apache License, Version 2.0 (the "License"); 45bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# you may not use this file except in compliance with the License. 55bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# You may obtain a copy of the License at 65bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# 75bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# http://www.apache.org/licenses/LICENSE-2.0 85bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# 95bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# Unless required by applicable law or agreed to in writing, software 105bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# distributed under the License is distributed on an "AS IS" BASIS, 115bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 125bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# See the License for the specific language governing permissions and 135bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond# limitations under the License. 145bbcc3861c44435f89481f80946ef5c9c49968f2Luke Drummond 15dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo'''A list of signatures for RS builtin functions and util functions for them. 16dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 17a3c6f62775506c95afd556e617f14d7a28839f01Luke Drummondfrom __future__ import absolute_import 18a3c6f62775506c95afd556e617f14d7a28839f01Luke Drummond 19dcecc0c8d22e894525e25a122ce25129b51338f2Dean De LeoFunction signature syntax is usually C-like, however, fixed values can also be 20dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leospecified for those functions where the input range is restricted. 21dcecc0c8d22e894525e25a122ce25129b51338f2Dean De LeoLines in the function table beginning with - are comments. 22dcecc0c8d22e894525e25a122ce25129b51338f2Dean De LeoAlso contains utility functions to build an LLDB expression from a single 23dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofunction line. 24dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo''' 25dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 26dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoimport re 27dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 28dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo# Remove blank and comment lines using a lambda. 29dcecc0c8d22e894525e25a122ce25129b51338f2Dean De LeoFUNC_LIST = filter(lambda line: line.strip() 30dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo and not line.strip().startswith('-'), ''' 31dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo- math functions 32dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 33dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar abs(char v); 34dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 abs(char2 v); 35dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 abs(char3 v); 36dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 abs(char4 v); 37dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint abs(int v); 38dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 abs(int2 v); 39dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 abs(int3 v); 40dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 abs(int4 v); 41dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort abs(short v); 42dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 abs(short2 v); 43dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 abs(short3 v); 44dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 abs(short4 v); 45dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 46dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat acos(float v); 47dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 acos(float2 v); 48dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 acos(float3 v); 49dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 acos(float4 v); 50dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 51dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat acosh(float v); 52dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 acosh(float2 v); 53dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 acosh(float3 v); 54dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 acosh(float4 v); 55dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 56dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat acospi(float v); 57dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 acospi(float2 v); 58dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 acospi(float3 v); 59dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 acospi(float4 v); 60dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 61dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat asin(float v); 62dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 asin(float2 v); 63dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 asin(float3 v); 64dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 asin(float4 v); 65dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 66dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat asinh(float v); 67dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 asinh(float2 v); 68dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 asinh(float3 v); 69dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 asinh(float4 v); 70dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 71dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat asinpi(float v); 72dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 asinpi(float2 v); 73dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 asinpi(float3 v); 74dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 asinpi(float4 v); 75dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 76dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat atan(float v); 77dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 atan(float2 v); 78dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 atan(float3 v); 79dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 atan(float4 v); 80dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 81dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat atan2(float numerator, float denominator); 82dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 atan2(float2 numerator, float2 denominator); 83dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 atan2(float3 numerator, float3 denominator); 84dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 atan2(float4 numerator, float4 denominator); 85dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 86dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat atan2pi(float numerator, float denominator); 87dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 atan2pi(float2 numerator, float2 denominator); 88dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 atan2pi(float3 numerator, float3 denominator); 89dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 atan2pi(float4 numerator, float4 denominator); 90dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 91dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat atanh(float v); 92dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 atanh(float2 v); 93dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 atanh(float3 v); 94dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 atanh(float4 v); 95dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 96dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat atanpi(float v); 97dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 atanpi(float2 v); 98dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 atanpi(float3 v); 99dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 atanpi(float4 v); 100dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 101dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat cbrt(float v); 102dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 cbrt(float2 v); 103dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 cbrt(float3 v); 104dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 cbrt(float4 v); 105dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 106dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat ceil(float v); 107dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 ceil(float2 v); 108dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 ceil(float3 v); 109dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 ceil(float4 v); 110dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 111dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar clamp(char value, char min_value, char max_value); 112dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 clamp(char2 value, char min_value, char max_value); 113dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 clamp(char2 value, char2 min_value, char2 max_value); 114dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 clamp(char3 value, char min_value, char max_value); 115dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 clamp(char3 value, char3 min_value, char3 max_value); 116dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 clamp(char4 value, char min_value, char max_value); 117dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 clamp(char4 value, char4 min_value, char4 max_value); 118dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat clamp(float value, float min_value, float max_value); 119dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 clamp(float2 value, float min_value, float max_value); 120dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 clamp(float2 value, float2 min_value, float2 max_value); 121dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 clamp(float3 value, float min_value, float max_value); 122dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 clamp(float3 value, float3 min_value, float3 max_value); 123dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 clamp(float4 value, float min_value, float max_value); 124dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 clamp(float4 value, float4 min_value, float4 max_value); 125dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint clamp(int value, int min_value, int max_value); 126dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 clamp(int2 value, int min_value, int max_value); 127dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 clamp(int2 value, int2 min_value, int2 max_value); 128dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 clamp(int3 value, int min_value, int max_value); 129dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 clamp(int3 value, int3 min_value, int3 max_value); 130dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 clamp(int4 value, int min_value, int max_value); 131dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 clamp(int4 value, int4 min_value, int4 max_value); 132dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong clamp(long value, long min_value, long max_value); 133dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 clamp(long2 value, long min_value, long max_value); 134dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 clamp(long2 value, long2 min_value, long2 max_value); 135dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 clamp(long3 value, long min_value, long max_value); 136dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 clamp(long3 value, long3 min_value, long3 max_value); 137dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 clamp(long4 value, long min_value, long max_value); 138dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 clamp(long4 value, long4 min_value, long4 max_value); 139dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort clamp(short value, short min_value, short max_value); 140dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 clamp(short2 value, short min_value, short max_value); 141dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 clamp(short2 value, short2 min_value, short2 max_value); 142dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 clamp(short3 value, short min_value, short max_value); 143dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 clamp(short3 value, short3 min_value, short3 max_value); 144dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 clamp(short4 value, short min_value, short max_value); 145dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 clamp(short4 value, short4 min_value, short4 max_value); 146dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar clamp(uchar value, uchar min_value, uchar max_value); 147dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 clamp(uchar2 value, uchar min_value, uchar max_value); 148dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 clamp(uchar2 value, uchar2 min_value, uchar2 max_value); 149dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 clamp(uchar3 value, uchar min_value, uchar max_value); 150dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 clamp(uchar3 value, uchar3 min_value, uchar3 max_value); 151dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 clamp(uchar4 value, uchar min_value, uchar max_value); 152dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 clamp(uchar4 value, uchar4 min_value, uchar4 max_value); 153dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint clamp(uint value, uint min_value, uint max_value); 154dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 clamp(uint2 value, uint min_value, uint max_value); 155dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 clamp(uint2 value, uint2 min_value, uint2 max_value); 156dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 clamp(uint3 value, uint min_value, uint max_value); 157dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 clamp(uint3 value, uint3 min_value, uint3 max_value); 158dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 clamp(uint4 value, uint min_value, uint max_value); 159dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 clamp(uint4 value, uint4 min_value, uint4 max_value); 160dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong clamp(ulong value, ulong min_value, ulong max_value); 161dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 clamp(ulong2 value, ulong min_value, ulong max_value); 162dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 clamp(ulong2 value, ulong2 min_value, ulong2 max_value); 163dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 clamp(ulong3 value, ulong min_value, ulong max_value); 164dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 clamp(ulong3 value, ulong3 min_value, ulong3 max_value); 165dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 clamp(ulong4 value, ulong min_value, ulong max_value); 166dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 clamp(ulong4 value, ulong4 min_value, ulong4 max_value); 167dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort clamp(ushort value, ushort min_value, ushort max_value); 168dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 clamp(ushort2 value, ushort min_value, ushort max_value); 169dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 clamp(ushort2 value, ushort2 min_value, ushort2 max_value); 170dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 clamp(ushort3 value, ushort min_value, ushort max_value); 171dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 clamp(ushort3 value, ushort3 min_value, ushort3 max_value); 172dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 clamp(ushort4 value, ushort min_value, ushort max_value); 173dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 clamp(ushort4 value, ushort4 min_value, ushort4 max_value); 174dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 175dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar clz(char value); 176dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 clz(char2 value); 177dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 clz(char3 value); 178dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 clz(char4 value); 179dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint clz(int value); 180dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 clz(int2 value); 181dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 clz(int3 value); 182dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 clz(int4 value); 183dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort clz(short value); 184dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 clz(short2 value); 185dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 clz(short3 value); 186dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 clz(short4 value); 187dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar clz(uchar value); 188dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 clz(uchar2 value); 189dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 clz(uchar3 value); 190dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 clz(uchar4 value); 191dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint clz(uint value); 192dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 clz(uint2 value); 193dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 clz(uint3 value); 194dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 clz(uint4 value); 195dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort clz(ushort value); 196dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 clz(ushort2 value); 197dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 clz(ushort3 value); 198dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 clz(ushort4 value); 199dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 200dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat copysign(float magnitude_value, float sign_value); 201dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 copysign(float2 magnitude_value, float2 sign_value); 202dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 copysign(float3 magnitude_value, float3 sign_value); 203dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 copysign(float4 magnitude_value, float4 sign_value); 204dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 205dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat cos(float v); 206dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 cos(float2 v); 207dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 cos(float3 v); 208dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 cos(float4 v); 209dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 210dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat cosh(float v); 211dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 cosh(float2 v); 212dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 cosh(float3 v); 213dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 cosh(float4 v); 214dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 215dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat cospi(float v); 216dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 cospi(float2 v); 217dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 cospi(float3 v); 218dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 cospi(float4 v); 219dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 220dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat erf(float v); 221dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 erf(float2 v); 222dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 erf(float3 v); 223dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 erf(float4 v); 224dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 225dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat erfc(float v); 226dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 erfc(float2 v); 227dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 erfc(float3 v); 228dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 erfc(float4 v); 229dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 230dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat exp(float v); 231dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 exp(float2 v); 232dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 exp(float3 v); 233dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 exp(float4 v); 234dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 235dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat exp10(float v); 236dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 exp10(float2 v); 237dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 exp10(float3 v); 238dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 exp10(float4 v); 239dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 240dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat exp2(float v); 241dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 exp2(float2 v); 242dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 exp2(float3 v); 243dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 exp2(float4 v); 244dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 245dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat expm1(float v); 246dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 expm1(float2 v); 247dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 expm1(float3 v); 248dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 expm1(float4 v); 249dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 250dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fabs(float v); 251dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fabs(float2 v); 252dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fabs(float3 v); 253dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fabs(float4 v); 254dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 255dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fdim(float a, float b); 256dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fdim(float2 a, float2 b); 257dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fdim(float3 a, float3 b); 258dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fdim(float4 a, float4 b); 259dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 260dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat floor(float v); 261dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 floor(float2 v); 262dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 floor(float3 v); 263dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 floor(float4 v); 264dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 265dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fma(float multiplicand1, float multiplicand2, float offset); 266dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fma(float2 multiplicand1, float2 multiplicand2, float2 offset); 267dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fma(float3 multiplicand1, float3 multiplicand2, float3 offset); 268dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fma(float4 multiplicand1, float4 multiplicand2, float4 offset); 269dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 270dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fmax(float a, float b); 271dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fmax(float2 a, float b); 272dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fmax(float2 a, float2 b); 273dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fmax(float3 a, float b); 274dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fmax(float3 a, float3 b); 275dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fmax(float4 a, float b); 276dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fmax(float4 a, float4 b); 277dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 278dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fmin(float a, float b); 279dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fmin(float2 a, float b); 280dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fmin(float2 a, float2 b); 281dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fmin(float3 a, float b); 282dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fmin(float3 a, float3 b); 283dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fmin(float4 a, float b); 284dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fmin(float4 a, float4 b); 285dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 286dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fmod(float numerator, float denominator); 287dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fmod(float2 numerator, float2 denominator); 288dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fmod(float3 numerator, float3 denominator); 289dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fmod(float4 numerator, float4 denominator); 290dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 291dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fract(float v, float* floor); 292dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fract(float2 v, float2* floor); 293dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fract(float3 v, float3* floor); 294dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fract(float4 v, float4* floor); 295dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 296dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat frexp(float v, int* exponent); 297dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 frexp(float2 v, int2* exponent); 298dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 frexp(float3 v, int3* exponent); 299dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 frexp(float4 v, int4* exponent); 300dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 301dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat half_recip(float v); 302dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 half_recip(float2 v); 303dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 half_recip(float3 v); 304dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 half_recip(float4 v); 305dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 306dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat half_rsqrt(float v); 307dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 half_rsqrt(float2 v); 308dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 half_rsqrt(float3 v); 309dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 half_rsqrt(float4 v); 310dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 311dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat half_sqrt(float v); 312dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 half_sqrt(float2 v); 313dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 half_sqrt(float3 v); 314dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 half_sqrt(float4 v); 315dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 316dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat hypot(float a, float b); 317dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 hypot(float2 a, float2 b); 318dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 hypot(float3 a, float3 b); 319dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 hypot(float4 a, float4 b); 320dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 321dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint ilogb(float v); 322dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 ilogb(float2 v); 323dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 ilogb(float3 v); 324dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 ilogb(float4 v); 325dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 326dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat ldexp(float mantissa, int exponent); 327dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 ldexp(float2 mantissa, int exponent); 328dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 ldexp(float2 mantissa, int2 exponent); 329dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 ldexp(float3 mantissa, int exponent); 330dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 ldexp(float3 mantissa, int3 exponent); 331dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 ldexp(float4 mantissa, int exponent); 332dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 ldexp(float4 mantissa, int4 exponent); 333dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 334dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat lgamma(float v); 335dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat lgamma(float v, int* sign_of_gamma); 336dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 lgamma(float2 v); 337dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 lgamma(float2 v, int2* sign_of_gamma); 338dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 lgamma(float3 v); 339dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 lgamma(float3 v, int3* sign_of_gamma); 340dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 lgamma(float4 v); 341dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 lgamma(float4 v, int4* sign_of_gamma); 342dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 343dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat log(float v); 344dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 log(float2 v); 345dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 log(float3 v); 346dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 log(float4 v); 347dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 348dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat log10(float v); 349dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 log10(float2 v); 350dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 log10(float3 v); 351dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 log10(float4 v); 352dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 353dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat log1p(float v); 354dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 log1p(float2 v); 355dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 log1p(float3 v); 356dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 log1p(float4 v); 357dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 358dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat log2(float v); 359dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 log2(float2 v); 360dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 log2(float3 v); 361dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 log2(float4 v); 362dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 363dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat logb(float v); 364dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 logb(float2 v); 365dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 logb(float3 v); 366dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 logb(float4 v); 367dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 368dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat mad(float multiplicand1, float multiplicand2, float offset); 369dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 mad(float2 multiplicand1, float2 multiplicand2, float2 offset); 370dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 mad(float3 multiplicand1, float3 multiplicand2, float3 offset); 371dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 mad(float4 multiplicand1, float4 multiplicand2, float4 offset); 372dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 373dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar max(char a, char b); 374dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 max(char2 a, char2 b); 375dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 max(char3 a, char3 b); 376dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 max(char4 a, char4 b); 377dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat max(float a, float b); 378dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 max(float2 a, float2 b); 379dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 max(float3 a, float3 b); 380dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 max(float4 a, float4 b); 381dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint max(int a, int b); 382dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 max(int2 a, int2 b); 383dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 max(int3 a, int3 b); 384dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 max(int4 a, int4 b); 385dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong max(long a, long b); 386dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 max(long2 a, long2 b); 387dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 max(long3 a, long3 b); 388dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 max(long4 a, long4 b); 389dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort max(short a, short b); 390dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 max(short2 a, short2 b); 391dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 max(short3 a, short3 b); 392dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 max(short4 a, short4 b); 393dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar max(uchar a, uchar b); 394dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 max(uchar2 a, uchar2 b); 395dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 max(uchar3 a, uchar3 b); 396dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 max(uchar4 a, uchar4 b); 397dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint max(uint a, uint b); 398dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 max(uint2 a, uint2 b); 399dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 max(uint3 a, uint3 b); 400dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 max(uint4 a, uint4 b); 401dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong max(ulong a, ulong b); 402dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 max(ulong2 a, ulong2 b); 403dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 max(ulong3 a, ulong3 b); 404dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 max(ulong4 a, ulong4 b); 405dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort max(ushort a, ushort b); 406dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 max(ushort2 a, ushort2 b); 407dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 max(ushort3 a, ushort3 b); 408dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 max(ushort4 a, ushort4 b); 409dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 410dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar min(char a, char b); 411dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 min(char2 a, char2 b); 412dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 min(char3 a, char3 b); 413dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 min(char4 a, char4 b); 414dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat min(float a, float b); 415dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 min(float2 a, float2 b); 416dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 min(float3 a, float3 b); 417dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 min(float4 a, float4 b); 418dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint min(int a, int b); 419dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 min(int2 a, int2 b); 420dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 min(int3 a, int3 b); 421dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 min(int4 a, int4 b); 422dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong min(long a, long b); 423dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 min(long2 a, long2 b); 424dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 min(long3 a, long3 b); 425dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 min(long4 a, long4 b); 426dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort min(short a, short b); 427dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 min(short2 a, short2 b); 428dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 min(short3 a, short3 b); 429dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 min(short4 a, short4 b); 430dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar min(uchar a, uchar b); 431dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 min(uchar2 a, uchar2 b); 432dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 min(uchar3 a, uchar3 b); 433dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 min(uchar4 a, uchar4 b); 434dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint min(uint a, uint b); 435dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 min(uint2 a, uint2 b); 436dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 min(uint3 a, uint3 b); 437dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 min(uint4 a, uint4 b); 438dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong min(ulong a, ulong b); 439dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 min(ulong2 a, ulong2 b); 440dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 min(ulong3 a, ulong3 b); 441dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 min(ulong4 a, ulong4 b); 442dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort min(ushort a, ushort b); 443dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 min(ushort2 a, ushort2 b); 444dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 min(ushort3 a, ushort3 b); 445dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 min(ushort4 a, ushort4 b); 446dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 447dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat mix(float start, float stop, float fraction); 448dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 mix(float2 start, float2 stop, float fraction); 449dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 mix(float2 start, float2 stop, float2 fraction); 450dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 mix(float3 start, float3 stop, float fraction); 451dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 mix(float3 start, float3 stop, float3 fraction); 452dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 mix(float4 start, float4 stop, float fraction); 453dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 mix(float4 start, float4 stop, float4 fraction); 454dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 455dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat modf(float v, float* integral_part); 456dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 modf(float2 v, float2* integral_part); 457dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 modf(float3 v, float3* integral_part); 458dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 modf(float4 v, float4* integral_part); 459dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 460dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat nan(uint v); 461dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 462dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_acos(float v); 463dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_acos(float2 v); 464dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_acos(float3 v); 465dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_acos(float4 v); 466dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 467dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_acosh(float v); 468dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_acosh(float2 v); 469dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_acosh(float3 v); 470dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_acosh(float4 v); 471dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 472dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_acospi(float v); 473dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_acospi(float2 v); 474dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_acospi(float3 v); 475dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_acospi(float4 v); 476dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 477dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_asin(float v); 478dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_asin(float2 v); 479dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_asin(float3 v); 480dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_asin(float4 v); 481dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 482dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_asinh(float v); 483dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_asinh(float2 v); 484dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_asinh(float3 v); 485dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_asinh(float4 v); 486dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 487dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_asinpi(float v); 488dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_asinpi(float2 v); 489dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_asinpi(float3 v); 490dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_asinpi(float4 v); 491dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 492dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_atan(float v); 493dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_atan(float2 v); 494dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_atan(float3 v); 495dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_atan(float4 v); 496dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 497dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_atan2(float numerator, float denominator); 498dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_atan2(float2 numerator, float2 denominator); 499dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_atan2(float3 numerator, float3 denominator); 500dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_atan2(float4 numerator, float4 denominator); 501dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 502dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_atan2pi(float numerator, float denominator); 503dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_atan2pi(float2 numerator, float2 denominator); 504dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_atan2pi(float3 numerator, float3 denominator); 505dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_atan2pi(float4 numerator, float4 denominator); 506dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 507dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_atanh(float v); 508dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_atanh(float2 v); 509dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_atanh(float3 v); 510dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_atanh(float4 v); 511dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 512dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_atanpi(float v); 513dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_atanpi(float2 v); 514dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_atanpi(float3 v); 515dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_atanpi(float4 v); 516dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 517dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_cbrt(float v); 518dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_cbrt(float2 v); 519dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_cbrt(float3 v); 520dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_cbrt(float4 v); 521dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 522dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_cos(float v); 523dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_cos(float2 v); 524dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_cos(float3 v); 525dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_cos(float4 v); 526dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 527dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_cosh(float v); 528dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_cosh(float2 v); 529dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_cosh(float3 v); 530dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_cosh(float4 v); 531dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 532dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_cospi(float v); 533dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_cospi(float2 v); 534dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_cospi(float3 v); 535dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_cospi(float4 v); 536dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 537dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_divide(float left_vector, float right_vector); 538dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_divide(float2 left_vector, float2 right_vector); 539dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_divide(float3 left_vector, float3 right_vector); 540dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_divide(float4 left_vector, float4 right_vector); 541dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 542dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_exp(float v); 543dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_exp(float2 v); 544dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_exp(float3 v); 545dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_exp(float4 v); 546dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 547dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_exp10(float v); 548dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_exp10(float2 v); 549dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_exp10(float3 v); 550dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_exp10(float4 v); 551dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 552dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_exp2(float v); 553dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_exp2(float2 v); 554dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_exp2(float3 v); 555dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_exp2(float4 v); 556dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 557dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_expm1(float v); 558dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_expm1(float2 v); 559dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_expm1(float3 v); 560dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_expm1(float4 v); 561dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 562dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_hypot(float a, float b); 563dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_hypot(float2 a, float2 b); 564dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_hypot(float3 a, float3 b); 565dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_hypot(float4 a, float4 b); 566dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 567dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_log(float v); 568dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_log(float2 v); 569dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_log(float3 v); 570dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_log(float4 v); 571dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 572dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_log10(float v); 573dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_log10(float2 v); 574dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_log10(float3 v); 575dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_log10(float4 v); 576dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 577dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_log1p(float v); 578dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_log1p(float2 v); 579dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_log1p(float3 v); 580dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_log1p(float4 v); 581dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 582dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_log2(float v); 583dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_log2(float2 v); 584dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_log2(float3 v); 585dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_log2(float4 v); 586dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 587dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_powr(float base, float exponent); 588dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_powr(float2 base, float2 exponent); 589dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_powr(float3 base, float3 exponent); 590dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_powr(float4 base, float4 exponent); 591dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 592dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_recip(float v); 593dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_recip(float2 v); 594dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_recip(float3 v); 595dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_recip(float4 v); 596dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 597dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_rootn(float v, int n); 598dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_rootn(float2 v, int2 n); 599dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_rootn(float3 v, int3 n); 600dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_rootn(float4 v, int4 n); 601dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 602dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_rsqrt(float v); 603dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_rsqrt(float2 v); 604dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_rsqrt(float3 v); 605dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_rsqrt(float4 v); 606dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 607dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_sin(float v); 608dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_sin(float2 v); 609dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_sin(float3 v); 610dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_sin(float4 v); 611dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 612dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_sincos(float v, float* cos); 613dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_sincos(float2 v, float2* cos); 614dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_sincos(float3 v, float3* cos); 615dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_sincos(float4 v, float4* cos); 616dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 617dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_sinh(float v); 618dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_sinh(float2 v); 619dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_sinh(float3 v); 620dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_sinh(float4 v); 621dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 622dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_sinpi(float v); 623dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_sinpi(float2 v); 624dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_sinpi(float3 v); 625dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_sinpi(float4 v); 626dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 627dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_sqrt(float v); 628dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_sqrt(float2 v); 629dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_sqrt(float3 v); 630dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_sqrt(float4 v); 631dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 632dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_tan(float v); 633dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_tan(float2 v); 634dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_tan(float3 v); 635dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_tan(float4 v); 636dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 637dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_tanh(float v); 638dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_tanh(float2 v); 639dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_tanh(float3 v); 640dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_tanh(float4 v); 641dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 642dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_tanpi(float v); 643dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_tanpi(float2 v); 644dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_tanpi(float3 v); 645dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_tanpi(float4 v); 646dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 647dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat nextafter(float v, float target); 648dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 nextafter(float2 v, float2 target); 649dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 nextafter(float3 v, float3 target); 650dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 nextafter(float4 v, float4 target); 651dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 652dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat pow(float base, float exponent); 653dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 pow(float2 base, float2 exponent); 654dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 pow(float3 base, float3 exponent); 655dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 pow(float4 base, float4 exponent); 656dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 657dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat pown(float base, int exponent); 658dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 pown(float2 base, int2 exponent); 659dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 pown(float3 base, int3 exponent); 660dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 pown(float4 base, int4 exponent); 661dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 662dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat powr(float base, float exponent); 663dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 powr(float2 base, float2 exponent); 664dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 powr(float3 base, float3 exponent); 665dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 powr(float4 base, float4 exponent); 666dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 667dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat radians(float v); 668dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 radians(float2 v); 669dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 radians(float3 v); 670dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 radians(float4 v); 671dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 672dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat remainder(float numerator, float denominator); 673dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 remainder(float2 numerator, float2 denominator); 674dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 remainder(float3 numerator, float3 denominator); 675dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 remainder(float4 numerator, float4 denominator); 676dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 677dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat remquo(float numerator, float denominator, int* quotient); 678dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 remquo(float2 numerator, float2 denominator, int2* quotient); 679dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 remquo(float3 numerator, float3 denominator, int3* quotient); 680dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 remquo(float4 numerator, float4 denominator, int4* quotient); 681dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 682dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rint(float v); 683dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 rint(float2 v); 684dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 rint(float3 v); 685dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rint(float4 v); 686dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 687dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rootn(float v, int n); 688dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 rootn(float2 v, int2 n); 689dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 rootn(float3 v, int3 n); 690dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rootn(float4 v, int4 n); 691dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 692dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat round(float v); 693dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 round(float2 v); 694dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 round(float3 v); 695dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 round(float4 v); 696dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 697dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar rsClamp(char amount, char low, char high); 698dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint rsClamp(int amount, int low, int high); 699dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort rsClamp(short amount, short low, short high); 700dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar rsClamp(uchar amount, uchar low, uchar high); 701dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint rsClamp(uint amount, uint low, uint high); 702dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort rsClamp(ushort amount, ushort low, ushort high); 703dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 704dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rsFrac(float v); 705dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 706dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rsRand(float max_value); 707dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rsRand(float min_value, float max_value); 708dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint rsRand(int max_value); 709dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint rsRand(int min_value, int max_value); 710dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 711dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rsqrt(float v); 712dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 rsqrt(float2 v); 713dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 rsqrt(float3 v); 714dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsqrt(float4 v); 715dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 716dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat sign(float v); 717dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 sign(float2 v); 718dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 sign(float3 v); 719dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 sign(float4 v); 720dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 721dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat sin(float v); 722dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 sin(float2 v); 723dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 sin(float3 v); 724dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 sin(float4 v); 725dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 726dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat sincos(float v, float* cos); 727dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 sincos(float2 v, float2* cos); 728dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 sincos(float3 v, float3* cos); 729dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 sincos(float4 v, float4* cos); 730dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 731dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat sinh(float v); 732dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 sinh(float2 v); 733dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 sinh(float3 v); 734dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 sinh(float4 v); 735dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 736dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat sinpi(float v); 737dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 sinpi(float2 v); 738dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 sinpi(float3 v); 739dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 sinpi(float4 v); 740dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 741dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat sqrt(float v); 742dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 sqrt(float2 v); 743dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 sqrt(float3 v); 744dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 sqrt(float4 v); 745dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 746dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat step(float edge, float v); 747dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 step(float edge, float2 v); 748dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 step(float2 edge, float v); 749dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 step(float2 edge, float2 v); 750dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 step(float edge, float3 v); 751dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 step(float3 edge, float v); 752dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 step(float3 edge, float3 v); 753dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 step(float edge, float4 v); 754dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 step(float4 edge, float v); 755dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 step(float4 edge, float4 v); 756dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 757dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat tan(float v); 758dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 tan(float2 v); 759dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 tan(float3 v); 760dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 tan(float4 v); 761dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 762dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat tanh(float v); 763dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 tanh(float2 v); 764dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 tanh(float3 v); 765dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 tanh(float4 v); 766dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 767dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat tanpi(float v); 768dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 tanpi(float2 v); 769dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 tanpi(float3 v); 770dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 tanpi(float4 v); 771dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 772dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat tgamma(float v); 773dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 tgamma(float2 v); 774dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 tgamma(float3 v); 775dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 tgamma(float4 v); 776dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 777dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat trunc(float v); 778dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 trunc(float2 v); 779dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 trunc(float3 v); 780dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 trunc(float4 v); 781dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 782dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float r, float g, float b); 783dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float r, float g, float b, float a); 784dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float3 color); 785dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float4 color); 786dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsUnpackColor8888(uchar4 c); 787dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 788dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsYuvToRGBA_float4(uchar y, uchar u, uchar v); 789dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsYuvToRGBA_uchar4(uchar y, uchar u, uchar v); 790dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 791dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo- vector functions 792dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 793dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 cross(float3 left_vector, float3 right_vector); 794dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 cross(float4 left_vector, float4 right_vector); 795dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 796dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat distance(float left_vector, float right_vector); 797dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat distance(float2 left_vector, float2 right_vector); 798dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat distance(float3 left_vector, float3 right_vector); 799dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat distance(float4 left_vector, float4 right_vector); 800dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 801dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat dot(float left_vector, float right_vector); 802dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat dot(float2 left_vector, float2 right_vector); 803dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat dot(float3 left_vector, float3 right_vector); 804dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat dot(float4 left_vector, float4 right_vector); 805dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 806dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_distance(float left_vector, float right_vector); 807dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_distance(float2 left_vector, float2 right_vector); 808dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_distance(float3 left_vector, float3 right_vector); 809dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_distance(float4 left_vector, float4 right_vector); 810dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 811dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_length(float v); 812dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_length(float2 v); 813dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_length(float3 v); 814dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_length(float4 v); 815dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 816dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat fast_normalize(float v); 817dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 fast_normalize(float2 v); 818dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 fast_normalize(float3 v); 819dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 fast_normalize(float4 v); 820dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 821dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat length(float v); 822dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat length(float2 v); 823dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat length(float3 v); 824dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat length(float4 v); 825dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 826dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_distance(float left_vector, float right_vector); 827dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_distance(float2 left_vector, float2 right_vector); 828dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_distance(float3 left_vector, float3 right_vector); 829dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_distance(float4 left_vector, float4 right_vector); 830dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 831dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_length(float v); 832dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_length(float2 v); 833dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_length(float3 v); 834dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_length(float4 v); 835dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 836dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat native_normalize(float v); 837dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 native_normalize(float2 v); 838dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 native_normalize(float3 v); 839dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 native_normalize(float4 v); 840dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 841dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat normalize(float v); 842dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 normalize(float2 v); 843dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 normalize(float3 v); 844dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 normalize(float4 v); 845dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 846dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo- conversion functions 847dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 848dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(char2 v); 849dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(double2 v); 850dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(float2 v); 851dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(int2 v); 852dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(long2 v); 853dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(short2 v); 854dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(uchar2 v); 855dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(uint2 v); 856dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(ulong2 v); 857dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar2 convert_char2(ushort2 v); 858dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 859dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(char3 v); 860dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(double3 v); 861dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(float3 v); 862dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(int3 v); 863dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(long3 v); 864dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(short3 v); 865dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(uchar3 v); 866dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(uint3 v); 867dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(ulong3 v); 868dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar3 convert_char3(ushort3 v); 869dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 870dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(char4 v); 871dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(double4 v); 872dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(float4 v); 873dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(int4 v); 874dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(long4 v); 875dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(short4 v); 876dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(uchar4 v); 877dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(uint4 v); 878dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(ulong4 v); 879dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leochar4 convert_char4(ushort4 v); 880dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 881dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(char2 v); 882dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(double2 v); 883dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(float2 v); 884dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(int2 v); 885dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(long2 v); 886dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(short2 v); 887dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(uchar2 v); 888dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(uint2 v); 889dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(ulong2 v); 890dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble2 convert_double2(ushort2 v); 891dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 892dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(char3 v); 893dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(double3 v); 894dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(float3 v); 895dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(int3 v); 896dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(long3 v); 897dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(short3 v); 898dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(uchar3 v); 899dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(uint3 v); 900dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(ulong3 v); 901dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble3 convert_double3(ushort3 v); 902dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 903dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(char4 v); 904dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(double4 v); 905dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(float4 v); 906dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(int4 v); 907dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(long4 v); 908dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(short4 v); 909dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(uchar4 v); 910dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(uint4 v); 911dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(ulong4 v); 912dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodouble4 convert_double4(ushort4 v); 913dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 914dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(char2 v); 915dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(double2 v); 916dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(float2 v); 917dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(int2 v); 918dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(long2 v); 919dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(short2 v); 920dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(uchar2 v); 921dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(uint2 v); 922dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(ulong2 v); 923dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 convert_float2(ushort2 v); 924dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 925dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(char3 v); 926dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(double3 v); 927dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(float3 v); 928dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(int3 v); 929dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(long3 v); 930dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(short3 v); 931dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(uchar3 v); 932dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(uint3 v); 933dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(ulong3 v); 934dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 convert_float3(ushort3 v); 935dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 936dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(char4 v); 937dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(double4 v); 938dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(float4 v); 939dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(int4 v); 940dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(long4 v); 941dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(short4 v); 942dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(uchar4 v); 943dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(uint4 v); 944dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(ulong4 v); 945dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 convert_float4(ushort4 v); 946dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 947dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(char2 v); 948dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(double2 v); 949dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(float2 v); 950dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(int2 v); 951dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(long2 v); 952dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(short2 v); 953dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(uchar2 v); 954dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(uint2 v); 955dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(ulong2 v); 956dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 convert_int2(ushort2 v); 957dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 958dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(char3 v); 959dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(double3 v); 960dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(float3 v); 961dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(int3 v); 962dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(long3 v); 963dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(short3 v); 964dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(uchar3 v); 965dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(uint3 v); 966dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(ulong3 v); 967dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 convert_int3(ushort3 v); 968dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 969dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(char4 v); 970dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(double4 v); 971dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(float4 v); 972dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(int4 v); 973dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(long4 v); 974dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(short4 v); 975dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(uchar4 v); 976dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(uint4 v); 977dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(ulong4 v); 978dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 convert_int4(ushort4 v); 979dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 980dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(char2 v); 981dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(double2 v); 982dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(float2 v); 983dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(int2 v); 984dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(long2 v); 985dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(short2 v); 986dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(uchar2 v); 987dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(uint2 v); 988dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(ulong2 v); 989dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong2 convert_long2(ushort2 v); 990dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 991dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(char3 v); 992dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(double3 v); 993dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(float3 v); 994dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(int3 v); 995dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(long3 v); 996dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(short3 v); 997dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(uchar3 v); 998dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(uint3 v); 999dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(ulong3 v); 1000dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong3 convert_long3(ushort3 v); 1001dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1002dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(char4 v); 1003dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(double4 v); 1004dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(float4 v); 1005dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(int4 v); 1006dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(long4 v); 1007dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(short4 v); 1008dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(uchar4 v); 1009dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(uint4 v); 1010dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(ulong4 v); 1011dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leolong4 convert_long4(ushort4 v); 1012dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1013dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(char2 v); 1014dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(double2 v); 1015dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(float2 v); 1016dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(int2 v); 1017dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(long2 v); 1018dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(short2 v); 1019dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(uchar2 v); 1020dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(uint2 v); 1021dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(ulong2 v); 1022dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort2 convert_short2(ushort2 v); 1023dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1024dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(char3 v); 1025dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(double3 v); 1026dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(float3 v); 1027dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(int3 v); 1028dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(long3 v); 1029dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(short3 v); 1030dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(uchar3 v); 1031dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(uint3 v); 1032dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(ulong3 v); 1033dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort3 convert_short3(ushort3 v); 1034dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1035dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(char4 v); 1036dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(double4 v); 1037dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(float4 v); 1038dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(int4 v); 1039dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(long4 v); 1040dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(short4 v); 1041dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(uchar4 v); 1042dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(uint4 v); 1043dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(ulong4 v); 1044dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoshort4 convert_short4(ushort4 v); 1045dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1046dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(char2 v); 1047dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(double2 v); 1048dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(float2 v); 1049dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(int2 v); 1050dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(long2 v); 1051dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(short2 v); 1052dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(uchar2 v); 1053dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(uint2 v); 1054dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(ulong2 v); 1055dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar2 convert_uchar2(ushort2 v); 1056dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1057dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(char3 v); 1058dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(double3 v); 1059dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(float3 v); 1060dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(int3 v); 1061dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(long3 v); 1062dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(short3 v); 1063dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(uchar3 v); 1064dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(uint3 v); 1065dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(ulong3 v); 1066dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar3 convert_uchar3(ushort3 v); 1067dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1068dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(char4 v); 1069dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(double4 v); 1070dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(float4 v); 1071dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(int4 v); 1072dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(long4 v); 1073dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(short4 v); 1074dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(uchar4 v); 1075dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(uint4 v); 1076dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(ulong4 v); 1077dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 convert_uchar4(ushort4 v); 1078dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1079dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(char2 v); 1080dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(double2 v); 1081dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(float2 v); 1082dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(int2 v); 1083dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(long2 v); 1084dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(short2 v); 1085dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(uchar2 v); 1086dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(uint2 v); 1087dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(ulong2 v); 1088dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint2 convert_uint2(ushort2 v); 1089dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1090dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(char3 v); 1091dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(double3 v); 1092dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(float3 v); 1093dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(int3 v); 1094dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(long3 v); 1095dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(short3 v); 1096dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(uchar3 v); 1097dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(uint3 v); 1098dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(ulong3 v); 1099dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint3 convert_uint3(ushort3 v); 1100dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1101dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(char4 v); 1102dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(double4 v); 1103dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(float4 v); 1104dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(int4 v); 1105dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(long4 v); 1106dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(short4 v); 1107dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(uchar4 v); 1108dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(uint4 v); 1109dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(ulong4 v); 1110dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouint4 convert_uint4(ushort4 v); 1111dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1112dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(char2 v); 1113dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(double2 v); 1114dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(float2 v); 1115dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(int2 v); 1116dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(long2 v); 1117dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(short2 v); 1118dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(uchar2 v); 1119dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(uint2 v); 1120dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(ulong2 v); 1121dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong2 convert_ulong2(ushort2 v); 1122dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1123dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(char3 v); 1124dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(double3 v); 1125dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(float3 v); 1126dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(int3 v); 1127dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(long3 v); 1128dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(short3 v); 1129dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(uchar3 v); 1130dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(uint3 v); 1131dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(ulong3 v); 1132dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong3 convert_ulong3(ushort3 v); 1133dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1134dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(char4 v); 1135dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(double4 v); 1136dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(float4 v); 1137dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(int4 v); 1138dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(long4 v); 1139dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(short4 v); 1140dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(uchar4 v); 1141dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(uint4 v); 1142dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(ulong4 v); 1143dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoulong4 convert_ulong4(ushort4 v); 1144dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1145dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(char2 v); 1146dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(double2 v); 1147dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(float2 v); 1148dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(int2 v); 1149dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(long2 v); 1150dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(short2 v); 1151dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(uchar2 v); 1152dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(uint2 v); 1153dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(ulong2 v); 1154dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort2 convert_ushort2(ushort2 v); 1155dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1156dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(char3 v); 1157dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(double3 v); 1158dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(float3 v); 1159dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(int3 v); 1160dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(long3 v); 1161dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(short3 v); 1162dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(uchar3 v); 1163dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(uint3 v); 1164dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(ulong3 v); 1165dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort3 convert_ushort3(ushort3 v); 1166dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1167dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(char4 v); 1168dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(double4 v); 1169dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(float4 v); 1170dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(int4 v); 1171dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(long4 v); 1172dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(short4 v); 1173dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(uchar4 v); 1174dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(uint4 v); 1175dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(ulong4 v); 1176dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoushort4 convert_ushort4(ushort4 v); 1177dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1178dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float r, float g, float b); 1179dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float r, float g, float b, float a); 1180dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float3 color); 1181dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsPackColorTo8888(float4 color); 1182dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1183dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsUnpackColor8888(uchar4 c); 1184dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1185dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsYuvToRGBA_float4(uchar y, uchar u, uchar v); 1186dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1187dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar4 rsYuvToRGBA_uchar4(uchar y, uchar u, uchar v); 1188dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1189dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo- matrix functions, some of these are not supported yet 1190dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1191dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-bool rsMatrixInverse(rs_matrix4x4* m); 1192dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1193dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-bool rsMatrixInverseTranspose(rs_matrix4x4* m); 1194dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1195dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix2x2* destination, float* array); 1196dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix2x2* destination, rs_matrix2x2* source); 1197dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix3x3* destination, float* array); 1198dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix3x3* destination, rs_matrix3x3* source); 1199dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix4x4* destination, float* array); 1200dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix4x4* destination, rs_matrix2x2* source); 1201dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix4x4* destination, rs_matrix3x3* source); 1202dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoad(rs_matrix4x4* destination, rs_matrix4x4* source); 1203dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1204dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadFrustum(rs_matrix4x4* m, float left, float right, float bottom, float top, float near, float far); 1205dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1206dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadIdentity(rs_matrix2x2* m); 1207dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadIdentity(rs_matrix3x3* m); 1208dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadIdentity(rs_matrix4x4* m); 1209dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1210dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadMultiply(rs_matrix2x2* m, rs_matrix2x2* lhs, rs_matrix2x2* rhs); 1211dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadMultiply(rs_matrix3x3* m, rs_matrix3x3* lhs, rs_matrix3x3* rhs); 1212dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadMultiply(rs_matrix4x4* m, rs_matrix4x4* lhs, rs_matrix4x4* rhs); 1213dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1214dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadOrtho(rs_matrix4x4* m, float left, float right, float bottom, float top, float near, float far); 1215dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1216dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadPerspective(rs_matrix4x4* m, float fovy, float aspect, float near, float far); 1217dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1218dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadRotate(rs_matrix4x4* m, float rot, float x, float y, float z); 1219dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1220dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadScale(rs_matrix4x4* m, float x, float y, float z); 1221dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1222dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixLoadTranslate(rs_matrix4x4* m, float x, float y, float z); 1223dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1224dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat2 rsMatrixMultiply(rs_matrix2x2* m, float2 in); 1225dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 rsMatrixMultiply(rs_matrix3x3* m, float2 in); 1226dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat3 rsMatrixMultiply(rs_matrix3x3* m, float3 in); 1227dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsMatrixMultiply(rs_matrix4x4* m, float2 in); 1228dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsMatrixMultiply(rs_matrix4x4* m, float3 in); 1229dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsMatrixMultiply(rs_matrix4x4* m, float4 in); 1230dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsMatrixMultiply(rs_matrix2x2* m, rs_matrix2x2* rhs); 1231dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsMatrixMultiply(rs_matrix3x3* m, rs_matrix3x3* rhs); 1232dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsMatrixMultiply(rs_matrix4x4* m, rs_matrix4x4* rhs); 1233dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1234dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixRotate(rs_matrix4x4* m, float rot, float x, float y, float z); 1235dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1236dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixScale(rs_matrix4x4* m, float x, float y, float z); 1237dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1238dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsMatrixSet(rs_matrix2x2* m, 0, 1, float v); 1239dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsMatrixSet(rs_matrix3x3* m, 2, 0, float v); 1240dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsMatrixSet(rs_matrix4x4* m, 1, 3, float v); 1241dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1242dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixTranslate(rs_matrix4x4* m, float x, float y, float z); 1243dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1244dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixTranspose(rs_matrix2x2* m); 1245dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixTranspose(rs_matrix3x3* m); 1246dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsMatrixTranspose(rs_matrix4x4* m); 1247dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1248dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo- quaternion functions 1249dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1250dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionAdd(rs_quaternion* q, rs_quaternion* rhs); 1251dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1252dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionConjugate(rs_quaternion* q); 1253dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1254dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat rsQuaternionDot(rs_quaternion* q0, rs_quaternion* q1); 1255dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1256dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionGetMatrixUnit(rs_matrix4x4* m, rs_quaternion* q); 1257dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1258dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionLoadRotate(rs_quaternion* q, float rot, float x, float y, float z); 1259dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1260dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionLoadRotateUnit(rs_quaternion* q, float rot, float x, float y, float z); 1261dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1262dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionMultiply(rs_quaternion* q, rs_quaternion* rhs); 1263dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionMultiply(rs_quaternion* q, float scalar); 1264dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1265dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionNormalize(rs_quaternion* q); 1266dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1267dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionSet(rs_quaternion* q, rs_quaternion* rhs); 1268dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionSet(rs_quaternion* q, float w, float x, float y, float z); 1269dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1270dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsQuaternionSlerp(rs_quaternion* q, rs_quaternion* q0, rs_quaternion* q1, float t); 1271dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1272dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo- allocation data access functions, this is a subset, since we don't have all types of allocations 1273dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1274dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsAllocationCopy1DRange(allocation_1D_global, uint dstOff, uint dstMip, uint count, allocation_1D_global2, uint srcOff, uint srcMip); 1275dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1276dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo-void rsAllocationCopy2DRange(allocation_2D_global, uint dstXoff, uint dstYoff, uint dstMip, rs_allocation_cubemap_face dstFace, uint width, uint height, allocation_2D_global2, uint srcXoff, uint srcYoff, uint srcMip, rs_allocation_cubemap_face srcFace); 1277dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1278dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 rsAllocationVLoadX_int2(allocation_1D_global, 0); 1279dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 rsAllocationVLoadX_int2(allocation_2D_global, 24, 25); 1280dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint2 rsAllocationVLoadX_int2(allocation_3D_global, 0, 1, 0); 1281dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 rsAllocationVLoadX_int3(allocation_1D_global, 1); 1282dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 rsAllocationVLoadX_int3(allocation_2D_global, 27, 28); 1283dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint3 rsAllocationVLoadX_int3(allocation_3D_global, 1, 0, 1); 1284dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 rsAllocationVLoadX_int4(allocation_1D_global, 0); 1285dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 rsAllocationVLoadX_int4(allocation_2D_global, 29, 30); 1286dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint4 rsAllocationVLoadX_int4(allocation_3D_global, 0, 1, 0); 1287dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1288dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int2(allocation_1D_global, int2 val, 2); 1289dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int2(allocation_2D_global, int2 val, 6, 7); 1290dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int2(allocation_3D_global, int2 val, 0, 1, 0); 1291dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int3(allocation_1D_global, int3 val, 1); 1292dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int3(allocation_2D_global, int3 val, 12, 13); 1293dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int3(allocation_3D_global, int3 val, 1, 0, 1); 1294dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int4(allocation_1D_global, int4 val, 0); 1295dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int4(allocation_2D_global, int4 val, 18, 19); 1296dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsAllocationVStoreX_int4(allocation_3D_global, int4 val, 0, 1, 0); 1297dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1298dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid* rsGetElementAt(allocation_1D_global, 0); 1299dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid* rsGetElementAt(allocation_2D_global, 20, 21); 1300dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid* rsGetElementAt(allocation_3D_global, 1, 0, 1); 1301dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint rsGetElementAt_int(allocation_1D_global, 1); 1302dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint rsGetElementAt_int(allocation_2D_global, 22, 23); 1303dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leoint rsGetElementAt_int(allocation_3D_global, 0, 1, 0); 1304dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1305dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar rsGetElementAtYuv_uchar_U(allocation_YUV_2D_global, 0, 1); 1306dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1307dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar rsGetElementAtYuv_uchar_V(allocation_YUV_2D_global, 2, 3); 1308dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1309dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leouchar rsGetElementAtYuv_uchar_Y(allocation_YUV_2D_global, 0, 1); 1310dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1311dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsSample(allocation_1D_global, rs_sampler s, float location); 1312dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsSample(allocation_1D_global, rs_sampler s, float location, float lod); 1313dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsSample(allocation_1D_global, rs_sampler s, float2 location); 1314dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leofloat4 rsSample(allocation_1D_global, rs_sampler s, float2 location, float lod); 1315dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1316dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsSetElementAt(allocation_1D_global, int* ptr, 2); 1317dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsSetElementAt(allocation_2D_global, int* ptr, 24, 25); 1318dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsSetElementAt_int(allocation_1D_global, int val, 0); 1319dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsSetElementAt_int(allocation_2D_global, int val, 26, 27); 1320dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leovoid rsSetElementAt_int(allocation_3D_global, int val, 1, 0, 1); 1321dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo'''.splitlines()) 1322dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1323dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1324dcecc0c8d22e894525e25a122ce25129b51338f2Dean De LeoTYPE_MAP = { 1325dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'void' : '', 1326dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'char' : r'\((signed )?char\)', 1327dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'uchar' : r'\(uchar\)', 1328dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'short' : r'\(short\)', 1329dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'ushort' : r'\(ushort\)', 1330dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'int' : r'\(int\)', 1331dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'uint' : r'\(uint\)', 1332dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'long' : r'\((long )?long\)', 1333dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'ulong' : r'\(ulong\)', 1334dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'float' : r'\(float\)', 1335dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'float2' : r'\(float2\)', 1336dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'float3' : r'\(float3\)', 1337dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 'float4' : r'\(float4\)' 1338dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo } 1339dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1340dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1341dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodef _build_arg(token): 1342dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo '''Given a C argument construct an lldb expression for the argument. 1343dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1344dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo Given a token, which represents a single argument of a C function 1345dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo declaration, construct an lldb expression for the argument. 1346dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1347dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo Args: 1348dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo token: A string representing a single argument to a function. This 1349dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo can be either [type][name] (e.g. int arg) or [value] (e.g. 5). 1350dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1351dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo Returns: 1352dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo The string that is the lldb expression for that argument, e.g. 1353dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo int_global or 5. 1354dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo ''' 1355dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo if len(token.split()) == 1: 1356dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo # This is a fixed constant. Just take that as output. 1357dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo return token 1358dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1359dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo result = token.split()[0] 1360dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1361dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo # Remove the rs_ prefix, because our globals' names don't have them 1362dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo if result[:3] == 'rs_': 1363dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo result = result[3:] 1364dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1365dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo # If the function expects a pointer, take the address of the global 1366dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo if result[-1] == '*': 1367dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo result = '&' + result 1368dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo result = result[:-1] 1369dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1370dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo result += '_global' 1371dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo return result 1372dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1373dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1374dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leodef build_expr(line): 1375dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo '''Build an lldb expression given a function prototype. 1376dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1377dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo Given a function declaration, this function will construct an lldb 1378dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo expression to call it. 1379dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1380dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo Args: 1381dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo line: A string representing a function declaration. 1382dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1383dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo Returns: 1384dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo The string that is the lldb expression. 1385dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo ''' 1386dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo tokens = re.findall(r"[^(),;]+", line) 1387dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo assert len(tokens) > 0 1388dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo ret_name = tokens[0].split() 1389dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo ret = ret_name[0] 1390dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo name = ret_name[1] 1391dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo expr = 'expr {0}('.format(name) 1392dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1393dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo first = True 1394dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo for tok in tokens[1:]: 1395dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo if not first: 1396dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo expr += ', ' 1397dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo expr += _build_arg(tok) 1398dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo first = False 1399dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo 1400dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo expr += ')' 1401dcecc0c8d22e894525e25a122ce25129b51338f2Dean De Leo return ret, expr 1402