summaryrefslogtreecommitdiffstats
path: root/13
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2012-03-07 10:52:32 -0800
committerYing Wang <wangying@google.com>2012-03-07 10:52:32 -0800
commitc4bf6769732f695af3d9b6777dcecef5f4ebd93b (patch)
treec6a4d65ff839c821d71bef3ccc9987116c6af96d /13
parent70a92092793f9273ffe28a9b03d0a149ade91f4b (diff)
downloadprebuilts_sdk-c4bf6769732f695af3d9b6777dcecef5f4ebd93b.zip
prebuilts_sdk-c4bf6769732f695af3d9b6777dcecef5f4ebd93b.tar.gz
prebuilts_sdk-c4bf6769732f695af3d9b6777dcecef5f4ebd93b.tar.bz2
Check in unified Renderscript headers.
The new renderscript folder is from the SDK release android-sdk_r16. All API level specific headers are removed. Change-Id: Ic259fe1d971a34e83cdf6c9178176a8901952b30
Diffstat (limited to '13')
-rw-r--r--13/renderscript/clang-include/CMakeLists.txt73
-rw-r--r--13/renderscript/clang-include/LICENSE.TXT63
-rw-r--r--13/renderscript/clang-include/altivec.h11840
-rw-r--r--13/renderscript/clang-include/avxintrin.h1156
-rw-r--r--13/renderscript/clang-include/emmintrin.h1362
-rw-r--r--13/renderscript/clang-include/float.h71
-rw-r--r--13/renderscript/clang-include/immintrin.h59
-rw-r--r--13/renderscript/clang-include/iso646.h43
-rw-r--r--13/renderscript/clang-include/limits.h117
-rw-r--r--13/renderscript/clang-include/mm_malloc.h79
-rw-r--r--13/renderscript/clang-include/mmintrin.h503
-rw-r--r--13/renderscript/clang-include/nmmintrin.h35
-rw-r--r--13/renderscript/clang-include/pmmintrin.h121
-rw-r--r--13/renderscript/clang-include/smmintrin.h452
-rw-r--r--13/renderscript/clang-include/stdarg.h50
-rw-r--r--13/renderscript/clang-include/stdbool.h44
-rw-r--r--13/renderscript/clang-include/stddef.h61
-rw-r--r--13/renderscript/clang-include/stdint.h654
-rw-r--r--13/renderscript/clang-include/tgmath.h1358
-rw-r--r--13/renderscript/clang-include/tmmintrin.h218
-rw-r--r--13/renderscript/clang-include/varargs.h26
-rw-r--r--13/renderscript/clang-include/wmmintrin.h67
-rw-r--r--13/renderscript/clang-include/x86intrin.h31
-rw-r--r--13/renderscript/clang-include/xmmintrin.h963
-rw-r--r--13/renderscript/include/rs_cl.rsh449
-rw-r--r--13/renderscript/include/rs_core.rsh560
-rw-r--r--13/renderscript/include/rs_graphics.rsh252
-rw-r--r--13/renderscript/include/rs_math.rsh209
-rw-r--r--13/renderscript/include/rs_time.rsh36
-rw-r--r--13/renderscript/include/rs_types.rsh80
30 files changed, 0 insertions, 21032 deletions
diff --git a/13/renderscript/clang-include/CMakeLists.txt b/13/renderscript/clang-include/CMakeLists.txt
deleted file mode 100644
index eef541e..0000000
--- a/13/renderscript/clang-include/CMakeLists.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-set(files
- altivec.h
- avxintrin.h
- emmintrin.h
- float.h
- immintrin.h
- iso646.h
- limits.h
- mm_malloc.h
- mmintrin.h
- pmmintrin.h
- smmintrin.h
- stdarg.h
- stdbool.h
- stddef.h
- stdint.h
- tgmath.h
- tmmintrin.h
- xmmintrin.h)
-
-set(output_dir ${LLVM_BINARY_DIR}/lib/clang/${CLANG_VERSION}/include)
-
-# If we are in an IDE that has a configuration directory, we need to
-# create a second copy of the headers so that 'clang' can find them if
-# it's run from the build directory.
-if(MSVC_IDE OR XCODE)
- set(other_output_dir ${LLVM_BINARY_DIR}/bin/lib/clang/${CLANG_VERSION}/include)
-endif()
-
-# Generate arm_neon.h
-set(LLVM_TARGET_DEFINITIONS ${CLANG_SOURCE_DIR}/include/clang/Basic/arm_neon.td)
-tablegen(arm_neon.h.inc -gen-arm-neon)
-
-set(out_files)
-foreach( f ${files} )
- set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} )
- set( dst ${output_dir}/${f} )
- add_custom_command(OUTPUT ${dst}
- DEPENDS ${src}
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
- COMMENT "Copying clang's ${f}...")
- list(APPEND out_files ${dst})
-
- if(other_output_dir)
- set(other_dst ${other_output_dir}/${f})
- add_custom_command(OUTPUT ${other_dst}
- DEPENDS ${src}
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${other_dst}
- COMMENT "Copying clang's ${f}...")
- list(APPEND out_files ${other_dst})
- endif()
-endforeach( f )
-
-add_custom_command(OUTPUT ${output_dir}/arm_neon.h
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h.inc
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h.inc ${output_dir}/arm_neon.h
- COMMENT "Copying clang's arm_neon.h...")
-list(APPEND out_files ${output_dir}/arm_neon.h)
-
-if (other_output_dir)
- set(other_dst ${other_output_dir}/arm_neon.h)
- add_custom_command(OUTPUT ${other_dst}
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h.inc
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h.inc ${other_dst}
- COMMENT "Copying clang's arm_neon.h...")
- list(APPEND out_files ${other_dst})
-endif ()
-
-add_custom_target(clang-headers ALL DEPENDS ${out_files})
-
-install(FILES ${files} ${output_dir}/arm_neon.h
- PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
- DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
diff --git a/13/renderscript/clang-include/LICENSE.TXT b/13/renderscript/clang-include/LICENSE.TXT
deleted file mode 100644
index a378a5f..0000000
--- a/13/renderscript/clang-include/LICENSE.TXT
+++ /dev/null
@@ -1,63 +0,0 @@
-==============================================================================
-LLVM Release License
-==============================================================================
-University of Illinois/NCSA
-Open Source License
-
-Copyright (c) 2007-2010 University of Illinois at Urbana-Champaign.
-All rights reserved.
-
-Developed by:
-
- LLVM Team
-
- University of Illinois at Urbana-Champaign
-
- http://llvm.org
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal with
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimers.
-
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimers in the
- documentation and/or other materials provided with the distribution.
-
- * Neither the names of the LLVM Team, University of Illinois at
- Urbana-Champaign, nor the names of its contributors may be used to
- endorse or promote products derived from this Software without specific
- prior written permission.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
-SOFTWARE.
-
-==============================================================================
-The LLVM software contains code written by third parties. Such software will
-have its own individual LICENSE.TXT file in the directory in which it appears.
-This file will describe the copyrights, license, and restrictions which apply
-to that code.
-
-The disclaimer of warranty in the University of Illinois Open Source License
-applies to all code in the LLVM Distribution, and nothing in any of the
-other licenses gives permission to use the names of the LLVM Team or the
-University of Illinois to endorse or promote products derived from this
-Software.
-
-The following pieces of software have additional or alternate copyrights,
-licenses, and/or restrictions:
-
-Program Directory
-------- ---------
-<none yet>
-
diff --git a/13/renderscript/clang-include/altivec.h b/13/renderscript/clang-include/altivec.h
deleted file mode 100644
index 49e468c..0000000
--- a/13/renderscript/clang-include/altivec.h
+++ /dev/null
@@ -1,11840 +0,0 @@
-/*===---- altivec.h - Standard header for type generic math ---------------===*\
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
-\*===----------------------------------------------------------------------===*/
-
-#ifndef __ALTIVEC_H
-#define __ALTIVEC_H
-
-#ifndef __ALTIVEC__
-#error "AltiVec support not enabled"
-#endif
-
-/* constants for mapping CR6 bits to predicate result. */
-
-#define __CR6_EQ 0
-#define __CR6_EQ_REV 1
-#define __CR6_LT 2
-#define __CR6_LT_REV 3
-
-#define __ATTRS_o_ai __attribute__((__overloadable__, __always_inline__))
-
-static vector signed char __ATTRS_o_ai
-vec_perm(vector signed char a, vector signed char b, vector unsigned char c);
-
-static vector unsigned char __ATTRS_o_ai
-vec_perm(vector unsigned char a,
- vector unsigned char b,
- vector unsigned char c);
-
-static vector bool char __ATTRS_o_ai
-vec_perm(vector bool char a, vector bool char b, vector unsigned char c);
-
-static vector short __ATTRS_o_ai
-vec_perm(vector short a, vector short b, vector unsigned char c);
-
-static vector unsigned short __ATTRS_o_ai
-vec_perm(vector unsigned short a,
- vector unsigned short b,
- vector unsigned char c);
-
-static vector bool short __ATTRS_o_ai
-vec_perm(vector bool short a, vector bool short b, vector unsigned char c);
-
-static vector pixel __ATTRS_o_ai
-vec_perm(vector pixel a, vector pixel b, vector unsigned char c);
-
-static vector int __ATTRS_o_ai
-vec_perm(vector int a, vector int b, vector unsigned char c);
-
-static vector unsigned int __ATTRS_o_ai
-vec_perm(vector unsigned int a, vector unsigned int b, vector unsigned char c);
-
-static vector bool int __ATTRS_o_ai
-vec_perm(vector bool int a, vector bool int b, vector unsigned char c);
-
-static vector float __ATTRS_o_ai
-vec_perm(vector float a, vector float b, vector unsigned char c);
-
-/* vec_abs */
-
-#define __builtin_altivec_abs_v16qi vec_abs
-#define __builtin_altivec_abs_v8hi vec_abs
-#define __builtin_altivec_abs_v4si vec_abs
-
-static vector signed char __ATTRS_o_ai
-vec_abs(vector signed char a)
-{
- return __builtin_altivec_vmaxsb(a, -a);
-}
-
-static vector signed short __ATTRS_o_ai
-vec_abs(vector signed short a)
-{
- return __builtin_altivec_vmaxsh(a, -a);
-}
-
-static vector signed int __ATTRS_o_ai
-vec_abs(vector signed int a)
-{
- return __builtin_altivec_vmaxsw(a, -a);
-}
-
-static vector float __ATTRS_o_ai
-vec_abs(vector float a)
-{
- vector unsigned int res = (vector unsigned int)a
- & (vector unsigned int)(0x7FFFFFFF);
- return (vector float)res;
-}
-
-/* vec_abss */
-
-#define __builtin_altivec_abss_v16qi vec_abss
-#define __builtin_altivec_abss_v8hi vec_abss
-#define __builtin_altivec_abss_v4si vec_abss
-
-static vector signed char __ATTRS_o_ai
-vec_abss(vector signed char a)
-{
- return __builtin_altivec_vmaxsb
- (a, __builtin_altivec_vsubsbs((vector signed char)(0), a));
-}
-
-static vector signed short __ATTRS_o_ai
-vec_abss(vector signed short a)
-{
- return __builtin_altivec_vmaxsh
- (a, __builtin_altivec_vsubshs((vector signed short)(0), a));
-}
-
-static vector signed int __ATTRS_o_ai
-vec_abss(vector signed int a)
-{
- return __builtin_altivec_vmaxsw
- (a, __builtin_altivec_vsubsws((vector signed int)(0), a));
-}
-
-/* vec_add */
-
-static vector signed char __ATTRS_o_ai
-vec_add(vector signed char a, vector signed char b)
-{
- return a + b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_add(vector bool char a, vector signed char b)
-{
- return (vector signed char)a + b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_add(vector signed char a, vector bool char b)
-{
- return a + (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_add(vector unsigned char a, vector unsigned char b)
-{
- return a + b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_add(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a + b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_add(vector unsigned char a, vector bool char b)
-{
- return a + (vector unsigned char)b;
-}
-
-static vector short __ATTRS_o_ai
-vec_add(vector short a, vector short b)
-{
- return a + b;
-}
-
-static vector short __ATTRS_o_ai
-vec_add(vector bool short a, vector short b)
-{
- return (vector short)a + b;
-}
-
-static vector short __ATTRS_o_ai
-vec_add(vector short a, vector bool short b)
-{
- return a + (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_add(vector unsigned short a, vector unsigned short b)
-{
- return a + b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_add(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a + b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_add(vector unsigned short a, vector bool short b)
-{
- return a + (vector unsigned short)b;
-}
-
-static vector int __ATTRS_o_ai
-vec_add(vector int a, vector int b)
-{
- return a + b;
-}
-
-static vector int __ATTRS_o_ai
-vec_add(vector bool int a, vector int b)
-{
- return (vector int)a + b;
-}
-
-static vector int __ATTRS_o_ai
-vec_add(vector int a, vector bool int b)
-{
- return a + (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_add(vector unsigned int a, vector unsigned int b)
-{
- return a + b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_add(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a + b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_add(vector unsigned int a, vector bool int b)
-{
- return a + (vector unsigned int)b;
-}
-
-static vector float __ATTRS_o_ai
-vec_add(vector float a, vector float b)
-{
- return a + b;
-}
-
-/* vec_vaddubm */
-
-#define __builtin_altivec_vaddubm vec_vaddubm
-
-static vector signed char __ATTRS_o_ai
-vec_vaddubm(vector signed char a, vector signed char b)
-{
- return a + b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vaddubm(vector bool char a, vector signed char b)
-{
- return (vector signed char)a + b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vaddubm(vector signed char a, vector bool char b)
-{
- return a + (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vaddubm(vector unsigned char a, vector unsigned char b)
-{
- return a + b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vaddubm(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a + b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vaddubm(vector unsigned char a, vector bool char b)
-{
- return a + (vector unsigned char)b;
-}
-
-/* vec_vadduhm */
-
-#define __builtin_altivec_vadduhm vec_vadduhm
-
-static vector short __ATTRS_o_ai
-vec_vadduhm(vector short a, vector short b)
-{
- return a + b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vadduhm(vector bool short a, vector short b)
-{
- return (vector short)a + b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vadduhm(vector short a, vector bool short b)
-{
- return a + (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vadduhm(vector unsigned short a, vector unsigned short b)
-{
- return a + b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vadduhm(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a + b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vadduhm(vector unsigned short a, vector bool short b)
-{
- return a + (vector unsigned short)b;
-}
-
-/* vec_vadduwm */
-
-#define __builtin_altivec_vadduwm vec_vadduwm
-
-static vector int __ATTRS_o_ai
-vec_vadduwm(vector int a, vector int b)
-{
- return a + b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vadduwm(vector bool int a, vector int b)
-{
- return (vector int)a + b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vadduwm(vector int a, vector bool int b)
-{
- return a + (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vadduwm(vector unsigned int a, vector unsigned int b)
-{
- return a + b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vadduwm(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a + b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vadduwm(vector unsigned int a, vector bool int b)
-{
- return a + (vector unsigned int)b;
-}
-
-/* vec_vaddfp */
-
-#define __builtin_altivec_vaddfp vec_vaddfp
-
-static vector float __attribute__((__always_inline__))
-vec_vaddfp(vector float a, vector float b)
-{
- return a + b;
-}
-
-/* vec_addc */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_addc(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vaddcuw(a, b);
-}
-
-/* vec_vaddcuw */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vaddcuw(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vaddcuw(a, b);
-}
-
-/* vec_adds */
-
-static vector signed char __ATTRS_o_ai
-vec_adds(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vaddsbs(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_adds(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vaddsbs((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_adds(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vaddsbs(a, (vector signed char)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_adds(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vaddubs(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_adds(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vaddubs((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_adds(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vaddubs(a, (vector unsigned char)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_adds(vector short a, vector short b)
-{
- return __builtin_altivec_vaddshs(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_adds(vector bool short a, vector short b)
-{
- return __builtin_altivec_vaddshs((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_adds(vector short a, vector bool short b)
-{
- return __builtin_altivec_vaddshs(a, (vector short)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_adds(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vadduhs(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_adds(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vadduhs((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_adds(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vadduhs(a, (vector unsigned short)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_adds(vector int a, vector int b)
-{
- return __builtin_altivec_vaddsws(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_adds(vector bool int a, vector int b)
-{
- return __builtin_altivec_vaddsws((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_adds(vector int a, vector bool int b)
-{
- return __builtin_altivec_vaddsws(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_adds(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vadduws(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_adds(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vadduws((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_adds(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vadduws(a, (vector unsigned int)b);
-}
-
-/* vec_vaddsbs */
-
-static vector signed char __ATTRS_o_ai
-vec_vaddsbs(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vaddsbs(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vaddsbs(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vaddsbs((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vaddsbs(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vaddsbs(a, (vector signed char)b);
-}
-
-/* vec_vaddubs */
-
-static vector unsigned char __ATTRS_o_ai
-vec_vaddubs(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vaddubs(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vaddubs(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vaddubs((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vaddubs(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vaddubs(a, (vector unsigned char)b);
-}
-
-/* vec_vaddshs */
-
-static vector short __ATTRS_o_ai
-vec_vaddshs(vector short a, vector short b)
-{
- return __builtin_altivec_vaddshs(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vaddshs(vector bool short a, vector short b)
-{
- return __builtin_altivec_vaddshs((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vaddshs(vector short a, vector bool short b)
-{
- return __builtin_altivec_vaddshs(a, (vector short)b);
-}
-
-/* vec_vadduhs */
-
-static vector unsigned short __ATTRS_o_ai
-vec_vadduhs(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vadduhs(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vadduhs(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vadduhs((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vadduhs(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vadduhs(a, (vector unsigned short)b);
-}
-
-/* vec_vaddsws */
-
-static vector int __ATTRS_o_ai
-vec_vaddsws(vector int a, vector int b)
-{
- return __builtin_altivec_vaddsws(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vaddsws(vector bool int a, vector int b)
-{
- return __builtin_altivec_vaddsws((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vaddsws(vector int a, vector bool int b)
-{
- return __builtin_altivec_vaddsws(a, (vector int)b);
-}
-
-/* vec_vadduws */
-
-static vector unsigned int __ATTRS_o_ai
-vec_vadduws(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vadduws(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vadduws(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vadduws((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vadduws(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vadduws(a, (vector unsigned int)b);
-}
-
-/* vec_and */
-
-#define __builtin_altivec_vand vec_and
-
-static vector signed char __ATTRS_o_ai
-vec_and(vector signed char a, vector signed char b)
-{
- return a & b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_and(vector bool char a, vector signed char b)
-{
- return (vector signed char)a & b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_and(vector signed char a, vector bool char b)
-{
- return a & (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_and(vector unsigned char a, vector unsigned char b)
-{
- return a & b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_and(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a & b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_and(vector unsigned char a, vector bool char b)
-{
- return a & (vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_and(vector bool char a, vector bool char b)
-{
- return a & b;
-}
-
-static vector short __ATTRS_o_ai
-vec_and(vector short a, vector short b)
-{
- return a & b;
-}
-
-static vector short __ATTRS_o_ai
-vec_and(vector bool short a, vector short b)
-{
- return (vector short)a & b;
-}
-
-static vector short __ATTRS_o_ai
-vec_and(vector short a, vector bool short b)
-{
- return a & (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_and(vector unsigned short a, vector unsigned short b)
-{
- return a & b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_and(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a & b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_and(vector unsigned short a, vector bool short b)
-{
- return a & (vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_and(vector bool short a, vector bool short b)
-{
- return a & b;
-}
-
-static vector int __ATTRS_o_ai
-vec_and(vector int a, vector int b)
-{
- return a & b;
-}
-
-static vector int __ATTRS_o_ai
-vec_and(vector bool int a, vector int b)
-{
- return (vector int)a & b;
-}
-
-static vector int __ATTRS_o_ai
-vec_and(vector int a, vector bool int b)
-{
- return a & (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_and(vector unsigned int a, vector unsigned int b)
-{
- return a & b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_and(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a & b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_and(vector unsigned int a, vector bool int b)
-{
- return a & (vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_and(vector bool int a, vector bool int b)
-{
- return a & b;
-}
-
-static vector float __ATTRS_o_ai
-vec_and(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_and(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_and(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a & (vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_vand */
-
-static vector signed char __ATTRS_o_ai
-vec_vand(vector signed char a, vector signed char b)
-{
- return a & b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vand(vector bool char a, vector signed char b)
-{
- return (vector signed char)a & b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vand(vector signed char a, vector bool char b)
-{
- return a & (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vand(vector unsigned char a, vector unsigned char b)
-{
- return a & b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vand(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a & b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vand(vector unsigned char a, vector bool char b)
-{
- return a & (vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vand(vector bool char a, vector bool char b)
-{
- return a & b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vand(vector short a, vector short b)
-{
- return a & b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vand(vector bool short a, vector short b)
-{
- return (vector short)a & b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vand(vector short a, vector bool short b)
-{
- return a & (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vand(vector unsigned short a, vector unsigned short b)
-{
- return a & b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vand(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a & b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vand(vector unsigned short a, vector bool short b)
-{
- return a & (vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vand(vector bool short a, vector bool short b)
-{
- return a & b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vand(vector int a, vector int b)
-{
- return a & b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vand(vector bool int a, vector int b)
-{
- return (vector int)a & b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vand(vector int a, vector bool int b)
-{
- return a & (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vand(vector unsigned int a, vector unsigned int b)
-{
- return a & b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vand(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a & b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vand(vector unsigned int a, vector bool int b)
-{
- return a & (vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vand(vector bool int a, vector bool int b)
-{
- return a & b;
-}
-
-static vector float __ATTRS_o_ai
-vec_vand(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vand(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vand(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a & (vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_andc */
-
-#define __builtin_altivec_vandc vec_andc
-
-static vector signed char __ATTRS_o_ai
-vec_andc(vector signed char a, vector signed char b)
-{
- return a & ~b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_andc(vector bool char a, vector signed char b)
-{
- return (vector signed char)a & ~b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_andc(vector signed char a, vector bool char b)
-{
- return a & ~(vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_andc(vector unsigned char a, vector unsigned char b)
-{
- return a & ~b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_andc(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a & ~b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_andc(vector unsigned char a, vector bool char b)
-{
- return a & ~(vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_andc(vector bool char a, vector bool char b)
-{
- return a & ~b;
-}
-
-static vector short __ATTRS_o_ai
-vec_andc(vector short a, vector short b)
-{
- return a & ~b;
-}
-
-static vector short __ATTRS_o_ai
-vec_andc(vector bool short a, vector short b)
-{
- return (vector short)a & ~b;
-}
-
-static vector short __ATTRS_o_ai
-vec_andc(vector short a, vector bool short b)
-{
- return a & ~(vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_andc(vector unsigned short a, vector unsigned short b)
-{
- return a & ~b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_andc(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a & ~b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_andc(vector unsigned short a, vector bool short b)
-{
- return a & ~(vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_andc(vector bool short a, vector bool short b)
-{
- return a & ~b;
-}
-
-static vector int __ATTRS_o_ai
-vec_andc(vector int a, vector int b)
-{
- return a & ~b;
-}
-
-static vector int __ATTRS_o_ai
-vec_andc(vector bool int a, vector int b)
-{
- return (vector int)a & ~b;
-}
-
-static vector int __ATTRS_o_ai
-vec_andc(vector int a, vector bool int b)
-{
- return a & ~(vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_andc(vector unsigned int a, vector unsigned int b)
-{
- return a & ~b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_andc(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a & ~b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_andc(vector unsigned int a, vector bool int b)
-{
- return a & ~(vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_andc(vector bool int a, vector bool int b)
-{
- return a & ~b;
-}
-
-static vector float __ATTRS_o_ai
-vec_andc(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & ~(vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_andc(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & ~(vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_andc(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a & ~(vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_vandc */
-
-static vector signed char __ATTRS_o_ai
-vec_vandc(vector signed char a, vector signed char b)
-{
- return a & ~b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vandc(vector bool char a, vector signed char b)
-{
- return (vector signed char)a & ~b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vandc(vector signed char a, vector bool char b)
-{
- return a & ~(vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vandc(vector unsigned char a, vector unsigned char b)
-{
- return a & ~b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vandc(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a & ~b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vandc(vector unsigned char a, vector bool char b)
-{
- return a & ~(vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vandc(vector bool char a, vector bool char b)
-{
- return a & ~b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vandc(vector short a, vector short b)
-{
- return a & ~b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vandc(vector bool short a, vector short b)
-{
- return (vector short)a & ~b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vandc(vector short a, vector bool short b)
-{
- return a & ~(vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vandc(vector unsigned short a, vector unsigned short b)
-{
- return a & ~b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vandc(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a & ~b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vandc(vector unsigned short a, vector bool short b)
-{
- return a & ~(vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vandc(vector bool short a, vector bool short b)
-{
- return a & ~b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vandc(vector int a, vector int b)
-{
- return a & ~b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vandc(vector bool int a, vector int b)
-{
- return (vector int)a & ~b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vandc(vector int a, vector bool int b)
-{
- return a & ~(vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vandc(vector unsigned int a, vector unsigned int b)
-{
- return a & ~b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vandc(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a & ~b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vandc(vector unsigned int a, vector bool int b)
-{
- return a & ~(vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vandc(vector bool int a, vector bool int b)
-{
- return a & ~b;
-}
-
-static vector float __ATTRS_o_ai
-vec_vandc(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & ~(vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vandc(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a & ~(vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vandc(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a & ~(vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_avg */
-
-static vector signed char __ATTRS_o_ai
-vec_avg(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vavgsb(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_avg(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vavgub(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_avg(vector short a, vector short b)
-{
- return __builtin_altivec_vavgsh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_avg(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vavguh(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_avg(vector int a, vector int b)
-{
- return __builtin_altivec_vavgsw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_avg(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vavguw(a, b);
-}
-
-/* vec_vavgsb */
-
-static vector signed char __attribute__((__always_inline__))
-vec_vavgsb(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vavgsb(a, b);
-}
-
-/* vec_vavgub */
-
-static vector unsigned char __attribute__((__always_inline__))
-vec_vavgub(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vavgub(a, b);
-}
-
-/* vec_vavgsh */
-
-static vector short __attribute__((__always_inline__))
-vec_vavgsh(vector short a, vector short b)
-{
- return __builtin_altivec_vavgsh(a, b);
-}
-
-/* vec_vavguh */
-
-static vector unsigned short __attribute__((__always_inline__))
-vec_vavguh(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vavguh(a, b);
-}
-
-/* vec_vavgsw */
-
-static vector int __attribute__((__always_inline__))
-vec_vavgsw(vector int a, vector int b)
-{
- return __builtin_altivec_vavgsw(a, b);
-}
-
-/* vec_vavguw */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vavguw(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vavguw(a, b);
-}
-
-/* vec_ceil */
-
-static vector float __attribute__((__always_inline__))
-vec_ceil(vector float a)
-{
- return __builtin_altivec_vrfip(a);
-}
-
-/* vec_vrfip */
-
-static vector float __attribute__((__always_inline__))
-vec_vrfip(vector float a)
-{
- return __builtin_altivec_vrfip(a);
-}
-
-/* vec_cmpb */
-
-static vector int __attribute__((__always_inline__))
-vec_cmpb(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpbfp(a, b);
-}
-
-/* vec_vcmpbfp */
-
-static vector int __attribute__((__always_inline__))
-vec_vcmpbfp(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpbfp(a, b);
-}
-
-/* vec_cmpeq */
-
-static vector bool char __ATTRS_o_ai
-vec_cmpeq(vector signed char a, vector signed char b)
-{
- return (vector bool char)
- __builtin_altivec_vcmpequb((vector char)a, (vector char)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_cmpeq(vector unsigned char a, vector unsigned char b)
-{
- return (vector bool char)
- __builtin_altivec_vcmpequb((vector char)a, (vector char)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_cmpeq(vector short a, vector short b)
-{
- return (vector bool short)__builtin_altivec_vcmpequh(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_cmpeq(vector unsigned short a, vector unsigned short b)
-{
- return (vector bool short)
- __builtin_altivec_vcmpequh((vector short)a, (vector short)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmpeq(vector int a, vector int b)
-{
- return (vector bool int)__builtin_altivec_vcmpequw(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmpeq(vector unsigned int a, vector unsigned int b)
-{
- return (vector bool int)
- __builtin_altivec_vcmpequw((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmpeq(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpeqfp(a, b);
-}
-
-/* vec_cmpge */
-
-static vector bool int __attribute__((__always_inline__))
-vec_cmpge(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpgefp(a, b);
-}
-
-/* vec_vcmpgefp */
-
-static vector bool int __attribute__((__always_inline__))
-vec_vcmpgefp(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpgefp(a, b);
-}
-
-/* vec_cmpgt */
-
-static vector bool char __ATTRS_o_ai
-vec_cmpgt(vector signed char a, vector signed char b)
-{
- return (vector bool char)__builtin_altivec_vcmpgtsb(a, b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_cmpgt(vector unsigned char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vcmpgtub(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_cmpgt(vector short a, vector short b)
-{
- return (vector bool short)__builtin_altivec_vcmpgtsh(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_cmpgt(vector unsigned short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vcmpgtuh(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmpgt(vector int a, vector int b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtsw(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmpgt(vector unsigned int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtuw(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmpgt(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtfp(a, b);
-}
-
-/* vec_vcmpgtsb */
-
-static vector bool char __attribute__((__always_inline__))
-vec_vcmpgtsb(vector signed char a, vector signed char b)
-{
- return (vector bool char)__builtin_altivec_vcmpgtsb(a, b);
-}
-
-/* vec_vcmpgtub */
-
-static vector bool char __attribute__((__always_inline__))
-vec_vcmpgtub(vector unsigned char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vcmpgtub(a, b);
-}
-
-/* vec_vcmpgtsh */
-
-static vector bool short __attribute__((__always_inline__))
-vec_vcmpgtsh(vector short a, vector short b)
-{
- return (vector bool short)__builtin_altivec_vcmpgtsh(a, b);
-}
-
-/* vec_vcmpgtuh */
-
-static vector bool short __attribute__((__always_inline__))
-vec_vcmpgtuh(vector unsigned short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vcmpgtuh(a, b);
-}
-
-/* vec_vcmpgtsw */
-
-static vector bool int __attribute__((__always_inline__))
-vec_vcmpgtsw(vector int a, vector int b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtsw(a, b);
-}
-
-/* vec_vcmpgtuw */
-
-static vector bool int __attribute__((__always_inline__))
-vec_vcmpgtuw(vector unsigned int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtuw(a, b);
-}
-
-/* vec_vcmpgtfp */
-
-static vector bool int __attribute__((__always_inline__))
-vec_vcmpgtfp(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtfp(a, b);
-}
-
-/* vec_cmple */
-
-static vector bool int __attribute__((__always_inline__))
-vec_cmple(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpgefp(b, a);
-}
-
-/* vec_cmplt */
-
-static vector bool char __ATTRS_o_ai
-vec_cmplt(vector signed char a, vector signed char b)
-{
- return (vector bool char)__builtin_altivec_vcmpgtsb(b, a);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_cmplt(vector unsigned char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vcmpgtub(b, a);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_cmplt(vector short a, vector short b)
-{
- return (vector bool short)__builtin_altivec_vcmpgtsh(b, a);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_cmplt(vector unsigned short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vcmpgtuh(b, a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmplt(vector int a, vector int b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtsw(b, a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmplt(vector unsigned int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtuw(b, a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_cmplt(vector float a, vector float b)
-{
- return (vector bool int)__builtin_altivec_vcmpgtfp(b, a);
-}
-
-/* vec_ctf */
-
-static vector float __ATTRS_o_ai
-vec_ctf(vector int a, int b)
-{
- return __builtin_altivec_vcfsx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_ctf(vector unsigned int a, int b)
-{
- return __builtin_altivec_vcfux((vector int)a, b);
-}
-
-/* vec_vcfsx */
-
-static vector float __attribute__((__always_inline__))
-vec_vcfsx(vector int a, int b)
-{
- return __builtin_altivec_vcfsx(a, b);
-}
-
-/* vec_vcfux */
-
-static vector float __attribute__((__always_inline__))
-vec_vcfux(vector unsigned int a, int b)
-{
- return __builtin_altivec_vcfux((vector int)a, b);
-}
-
-/* vec_cts */
-
-static vector int __attribute__((__always_inline__))
-vec_cts(vector float a, int b)
-{
- return __builtin_altivec_vctsxs(a, b);
-}
-
-/* vec_vctsxs */
-
-static vector int __attribute__((__always_inline__))
-vec_vctsxs(vector float a, int b)
-{
- return __builtin_altivec_vctsxs(a, b);
-}
-
-/* vec_ctu */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_ctu(vector float a, int b)
-{
- return __builtin_altivec_vctuxs(a, b);
-}
-
-/* vec_vctuxs */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vctuxs(vector float a, int b)
-{
- return __builtin_altivec_vctuxs(a, b);
-}
-
-/* vec_dss */
-
-static void __attribute__((__always_inline__))
-vec_dss(int a)
-{
- __builtin_altivec_dss(a);
-}
-
-/* vec_dssall */
-
-static void __attribute__((__always_inline__))
-vec_dssall(void)
-{
- __builtin_altivec_dssall();
-}
-
-/* vec_dst */
-
-static void __attribute__((__always_inline__))
-vec_dst(void *a, int b, int c)
-{
- __builtin_altivec_dst(a, b, c);
-}
-
-/* vec_dstst */
-
-static void __attribute__((__always_inline__))
-vec_dstst(void *a, int b, int c)
-{
- __builtin_altivec_dstst(a, b, c);
-}
-
-/* vec_dststt */
-
-static void __attribute__((__always_inline__))
-vec_dststt(void *a, int b, int c)
-{
- __builtin_altivec_dststt(a, b, c);
-}
-
-/* vec_dstt */
-
-static void __attribute__((__always_inline__))
-vec_dstt(void *a, int b, int c)
-{
- __builtin_altivec_dstt(a, b, c);
-}
-
-/* vec_expte */
-
-static vector float __attribute__((__always_inline__))
-vec_expte(vector float a)
-{
- return __builtin_altivec_vexptefp(a);
-}
-
-/* vec_vexptefp */
-
-static vector float __attribute__((__always_inline__))
-vec_vexptefp(vector float a)
-{
- return __builtin_altivec_vexptefp(a);
-}
-
-/* vec_floor */
-
-static vector float __attribute__((__always_inline__))
-vec_floor(vector float a)
-{
- return __builtin_altivec_vrfim(a);
-}
-
-/* vec_vrfim */
-
-static vector float __attribute__((__always_inline__))
-vec_vrfim(vector float a)
-{
- return __builtin_altivec_vrfim(a);
-}
-
-/* vec_ld */
-
-static vector signed char __ATTRS_o_ai
-vec_ld(int a, vector signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvx(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_ld(int a, signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_ld(int a, vector unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_ld(int a, unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvx(a, b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_ld(int a, vector bool char *b)
-{
- return (vector bool char)__builtin_altivec_lvx(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_ld(int a, vector short *b)
-{
- return (vector short)__builtin_altivec_lvx(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_ld(int a, short *b)
-{
- return (vector short)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_ld(int a, vector unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_ld(int a, unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvx(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_ld(int a, vector bool short *b)
-{
- return (vector bool short)__builtin_altivec_lvx(a, b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_ld(int a, vector pixel *b)
-{
- return (vector pixel)__builtin_altivec_lvx(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_ld(int a, vector int *b)
-{
- return (vector int)__builtin_altivec_lvx(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_ld(int a, int *b)
-{
- return (vector int)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_ld(int a, vector unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_ld(int a, unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvx(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_ld(int a, vector bool int *b)
-{
- return (vector bool int)__builtin_altivec_lvx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_ld(int a, vector float *b)
-{
- return (vector float)__builtin_altivec_lvx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_ld(int a, float *b)
-{
- return (vector float)__builtin_altivec_lvx(a, b);
-}
-
-/* vec_lvx */
-
-static vector signed char __ATTRS_o_ai
-vec_lvx(int a, vector signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvx(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_lvx(int a, signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvx(int a, vector unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvx(int a, unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvx(a, b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_lvx(int a, vector bool char *b)
-{
- return (vector bool char)__builtin_altivec_lvx(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_lvx(int a, vector short *b)
-{
- return (vector short)__builtin_altivec_lvx(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_lvx(int a, short *b)
-{
- return (vector short)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvx(int a, vector unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvx(int a, unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvx(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_lvx(int a, vector bool short *b)
-{
- return (vector bool short)__builtin_altivec_lvx(a, b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_lvx(int a, vector pixel *b)
-{
- return (vector pixel)__builtin_altivec_lvx(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_lvx(int a, vector int *b)
-{
- return (vector int)__builtin_altivec_lvx(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_lvx(int a, int *b)
-{
- return (vector int)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvx(int a, vector unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvx(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvx(int a, unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvx(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_lvx(int a, vector bool int *b)
-{
- return (vector bool int)__builtin_altivec_lvx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_lvx(int a, vector float *b)
-{
- return (vector float)__builtin_altivec_lvx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_lvx(int a, float *b)
-{
- return (vector float)__builtin_altivec_lvx(a, b);
-}
-
-/* vec_lde */
-
-static vector signed char __ATTRS_o_ai
-vec_lde(int a, vector signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvebx(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lde(int a, vector unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvebx(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_lde(int a, vector short *b)
-{
- return (vector short)__builtin_altivec_lvehx(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lde(int a, vector unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvehx(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_lde(int a, vector int *b)
-{
- return (vector int)__builtin_altivec_lvewx(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lde(int a, vector unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvewx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_lde(int a, vector float *b)
-{
- return (vector float)__builtin_altivec_lvewx(a, b);
-}
-
-/* vec_lvebx */
-
-static vector signed char __ATTRS_o_ai
-vec_lvebx(int a, vector signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvebx(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvebx(int a, vector unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvebx(a, b);
-}
-
-/* vec_lvehx */
-
-static vector short __ATTRS_o_ai
-vec_lvehx(int a, vector short *b)
-{
- return (vector short)__builtin_altivec_lvehx(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvehx(int a, vector unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvehx(a, b);
-}
-
-/* vec_lvewx */
-
-static vector int __ATTRS_o_ai
-vec_lvewx(int a, vector int *b)
-{
- return (vector int)__builtin_altivec_lvewx(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvewx(int a, vector unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvewx(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_lvewx(int a, vector float *b)
-{
- return (vector float)__builtin_altivec_lvewx(a, b);
-}
-
-/* vec_ldl */
-
-static vector signed char __ATTRS_o_ai
-vec_ldl(int a, vector signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_ldl(int a, signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_ldl(int a, vector unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_ldl(int a, unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_ldl(int a, vector bool char *b)
-{
- return (vector bool char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_ldl(int a, vector short *b)
-{
- return (vector short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_ldl(int a, short *b)
-{
- return (vector short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_ldl(int a, vector unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_ldl(int a, unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_ldl(int a, vector bool short *b)
-{
- return (vector bool short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_ldl(int a, vector pixel *b)
-{
- return (vector pixel short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_ldl(int a, vector int *b)
-{
- return (vector int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_ldl(int a, int *b)
-{
- return (vector int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_ldl(int a, vector unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_ldl(int a, unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_ldl(int a, vector bool int *b)
-{
- return (vector bool int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_ldl(int a, vector float *b)
-{
- return (vector float)__builtin_altivec_lvxl(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_ldl(int a, float *b)
-{
- return (vector float)__builtin_altivec_lvxl(a, b);
-}
-
-/* vec_lvxl */
-
-static vector signed char __ATTRS_o_ai
-vec_lvxl(int a, vector signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_lvxl(int a, signed char *b)
-{
- return (vector signed char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvxl(int a, vector unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvxl(int a, unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_lvxl(int a, vector bool char *b)
-{
- return (vector bool char)__builtin_altivec_lvxl(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_lvxl(int a, vector short *b)
-{
- return (vector short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_lvxl(int a, short *b)
-{
- return (vector short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvxl(int a, vector unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvxl(int a, unsigned short *b)
-{
- return (vector unsigned short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_lvxl(int a, vector bool short *b)
-{
- return (vector bool short)__builtin_altivec_lvxl(a, b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_lvxl(int a, vector pixel *b)
-{
- return (vector pixel)__builtin_altivec_lvxl(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_lvxl(int a, vector int *b)
-{
- return (vector int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_lvxl(int a, int *b)
-{
- return (vector int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvxl(int a, vector unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvxl(int a, unsigned int *b)
-{
- return (vector unsigned int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_lvxl(int a, vector bool int *b)
-{
- return (vector bool int)__builtin_altivec_lvxl(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_lvxl(int a, vector float *b)
-{
- return (vector float)__builtin_altivec_lvxl(a, b);
-}
-
-static vector float __ATTRS_o_ai
-vec_lvxl(int a, float *b)
-{
- return (vector float)__builtin_altivec_lvxl(a, b);
-}
-
-/* vec_loge */
-
-static vector float __attribute__((__always_inline__))
-vec_loge(vector float a)
-{
- return __builtin_altivec_vlogefp(a);
-}
-
-/* vec_vlogefp */
-
-static vector float __attribute__((__always_inline__))
-vec_vlogefp(vector float a)
-{
- return __builtin_altivec_vlogefp(a);
-}
-
-/* vec_lvsl */
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, signed char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, short *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, unsigned short *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, int *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, unsigned int *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsl(int a, float *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsl(a, b);
-}
-
-/* vec_lvsr */
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, signed char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, unsigned char *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, short *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, unsigned short *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, int *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, unsigned int *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvsr(int a, float *b)
-{
- return (vector unsigned char)__builtin_altivec_lvsr(a, b);
-}
-
-/* vec_madd */
-
-static vector float __attribute__((__always_inline__))
-vec_madd(vector float a, vector float b, vector float c)
-{
- return __builtin_altivec_vmaddfp(a, b, c);
-}
-
-/* vec_vmaddfp */
-
-static vector float __attribute__((__always_inline__))
-vec_vmaddfp(vector float a, vector float b, vector float c)
-{
- return __builtin_altivec_vmaddfp(a, b, c);
-}
-
-/* vec_madds */
-
-static vector signed short __attribute__((__always_inline__))
-vec_madds(vector signed short a, vector signed short b, vector signed short c)
-{
- return __builtin_altivec_vmhaddshs(a, b, c);
-}
-
-/* vec_vmhaddshs */
-static vector signed short __attribute__((__always_inline__))
-vec_vmhaddshs(vector signed short a,
- vector signed short b,
- vector signed short c)
-{
- return __builtin_altivec_vmhaddshs(a, b, c);
-}
-
-/* vec_max */
-
-static vector signed char __ATTRS_o_ai
-vec_max(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vmaxsb(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_max(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vmaxsb((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_max(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vmaxsb(a, (vector signed char)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_max(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vmaxub(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_max(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vmaxub((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_max(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vmaxub(a, (vector unsigned char)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_max(vector short a, vector short b)
-{
- return __builtin_altivec_vmaxsh(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_max(vector bool short a, vector short b)
-{
- return __builtin_altivec_vmaxsh((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_max(vector short a, vector bool short b)
-{
- return __builtin_altivec_vmaxsh(a, (vector short)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_max(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vmaxuh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_max(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vmaxuh((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_max(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vmaxuh(a, (vector unsigned short)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_max(vector int a, vector int b)
-{
- return __builtin_altivec_vmaxsw(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_max(vector bool int a, vector int b)
-{
- return __builtin_altivec_vmaxsw((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_max(vector int a, vector bool int b)
-{
- return __builtin_altivec_vmaxsw(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_max(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vmaxuw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_max(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vmaxuw((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_max(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vmaxuw(a, (vector unsigned int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_max(vector float a, vector float b)
-{
- return __builtin_altivec_vmaxfp(a, b);
-}
-
-/* vec_vmaxsb */
-
-static vector signed char __ATTRS_o_ai
-vec_vmaxsb(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vmaxsb(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vmaxsb(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vmaxsb((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vmaxsb(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vmaxsb(a, (vector signed char)b);
-}
-
-/* vec_vmaxub */
-
-static vector unsigned char __ATTRS_o_ai
-vec_vmaxub(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vmaxub(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vmaxub(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vmaxub((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vmaxub(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vmaxub(a, (vector unsigned char)b);
-}
-
-/* vec_vmaxsh */
-
-static vector short __ATTRS_o_ai
-vec_vmaxsh(vector short a, vector short b)
-{
- return __builtin_altivec_vmaxsh(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vmaxsh(vector bool short a, vector short b)
-{
- return __builtin_altivec_vmaxsh((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vmaxsh(vector short a, vector bool short b)
-{
- return __builtin_altivec_vmaxsh(a, (vector short)b);
-}
-
-/* vec_vmaxuh */
-
-static vector unsigned short __ATTRS_o_ai
-vec_vmaxuh(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vmaxuh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vmaxuh(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vmaxuh((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vmaxuh(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vmaxuh(a, (vector unsigned short)b);
-}
-
-/* vec_vmaxsw */
-
-static vector int __ATTRS_o_ai
-vec_vmaxsw(vector int a, vector int b)
-{
- return __builtin_altivec_vmaxsw(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vmaxsw(vector bool int a, vector int b)
-{
- return __builtin_altivec_vmaxsw((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vmaxsw(vector int a, vector bool int b)
-{
- return __builtin_altivec_vmaxsw(a, (vector int)b);
-}
-
-/* vec_vmaxuw */
-
-static vector unsigned int __ATTRS_o_ai
-vec_vmaxuw(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vmaxuw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vmaxuw(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vmaxuw((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vmaxuw(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vmaxuw(a, (vector unsigned int)b);
-}
-
-/* vec_vmaxfp */
-
-static vector float __attribute__((__always_inline__))
-vec_vmaxfp(vector float a, vector float b)
-{
- return __builtin_altivec_vmaxfp(a, b);
-}
-
-/* vec_mergeh */
-
-static vector signed char __ATTRS_o_ai
-vec_mergeh(vector signed char a, vector signed char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
- 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_mergeh(vector unsigned char a, vector unsigned char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
- 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_mergeh(vector bool char a, vector bool char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
- 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
-}
-
-static vector short __ATTRS_o_ai
-vec_mergeh(vector short a, vector short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_mergeh(vector unsigned short a, vector unsigned short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_mergeh(vector bool short a, vector bool short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_mergeh(vector pixel a, vector pixel b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector int __ATTRS_o_ai
-vec_mergeh(vector int a, vector int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_mergeh(vector unsigned int a, vector unsigned int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_mergeh(vector bool int a, vector bool int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-static vector float __ATTRS_o_ai
-vec_mergeh(vector float a, vector float b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-/* vec_vmrghb */
-
-#define __builtin_altivec_vmrghb vec_vmrghb
-
-static vector signed char __ATTRS_o_ai
-vec_vmrghb(vector signed char a, vector signed char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
- 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vmrghb(vector unsigned char a, vector unsigned char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
- 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vmrghb(vector bool char a, vector bool char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x10, 0x01, 0x11, 0x02, 0x12, 0x03, 0x13,
- 0x04, 0x14, 0x05, 0x15, 0x06, 0x16, 0x07, 0x17));
-}
-
-/* vec_vmrghh */
-
-#define __builtin_altivec_vmrghh vec_vmrghh
-
-static vector short __ATTRS_o_ai
-vec_vmrghh(vector short a, vector short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vmrghh(vector unsigned short a, vector unsigned short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vmrghh(vector bool short a, vector bool short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vmrghh(vector pixel a, vector pixel b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x10, 0x11, 0x02, 0x03, 0x12, 0x13,
- 0x04, 0x05, 0x14, 0x15, 0x06, 0x07, 0x16, 0x17));
-}
-
-/* vec_vmrghw */
-
-#define __builtin_altivec_vmrghw vec_vmrghw
-
-static vector int __ATTRS_o_ai
-vec_vmrghw(vector int a, vector int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vmrghw(vector unsigned int a, vector unsigned int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vmrghw(vector bool int a, vector bool int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-static vector float __ATTRS_o_ai
-vec_vmrghw(vector float a, vector float b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x00, 0x01, 0x02, 0x03, 0x10, 0x11, 0x12, 0x13,
- 0x04, 0x05, 0x06, 0x07, 0x14, 0x15, 0x16, 0x17));
-}
-
-/* vec_mergel */
-
-static vector signed char __ATTRS_o_ai
-vec_mergel(vector signed char a, vector signed char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
- 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_mergel(vector unsigned char a, vector unsigned char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
- 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_mergel(vector bool char a, vector bool char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
- 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
-}
-
-static vector short __ATTRS_o_ai
-vec_mergel(vector short a, vector short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_mergel(vector unsigned short a, vector unsigned short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_mergel(vector bool short a, vector bool short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_mergel(vector pixel a, vector pixel b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector int __ATTRS_o_ai
-vec_mergel(vector int a, vector int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_mergel(vector unsigned int a, vector unsigned int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_mergel(vector bool int a, vector bool int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-static vector float __ATTRS_o_ai
-vec_mergel(vector float a, vector float b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-/* vec_vmrglb */
-
-#define __builtin_altivec_vmrglb vec_vmrglb
-
-static vector signed char __ATTRS_o_ai
-vec_vmrglb(vector signed char a, vector signed char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
- 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vmrglb(vector unsigned char a, vector unsigned char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
- 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vmrglb(vector bool char a, vector bool char b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x18, 0x09, 0x19, 0x0A, 0x1A, 0x0B, 0x1B,
- 0x0C, 0x1C, 0x0D, 0x1D, 0x0E, 0x1E, 0x0F, 0x1F));
-}
-
-/* vec_vmrglh */
-
-#define __builtin_altivec_vmrglh vec_vmrglh
-
-static vector short __ATTRS_o_ai
-vec_vmrglh(vector short a, vector short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vmrglh(vector unsigned short a, vector unsigned short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vmrglh(vector bool short a, vector bool short b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vmrglh(vector pixel a, vector pixel b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x18, 0x19, 0x0A, 0x0B, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x1C, 0x1D, 0x0E, 0x0F, 0x1E, 0x1F));
-}
-
-/* vec_vmrglw */
-
-#define __builtin_altivec_vmrglw vec_vmrglw
-
-static vector int __ATTRS_o_ai
-vec_vmrglw(vector int a, vector int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vmrglw(vector unsigned int a, vector unsigned int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vmrglw(vector bool int a, vector bool int b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-static vector float __ATTRS_o_ai
-vec_vmrglw(vector float a, vector float b)
-{
- return vec_perm(a, b, (vector unsigned char)
- (0x08, 0x09, 0x0A, 0x0B, 0x18, 0x19, 0x1A, 0x1B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x1C, 0x1D, 0x1E, 0x1F));
-}
-
-/* vec_mfvscr */
-
-static vector unsigned short __attribute__((__always_inline__))
-vec_mfvscr(void)
-{
- return __builtin_altivec_mfvscr();
-}
-
-/* vec_min */
-
-static vector signed char __ATTRS_o_ai
-vec_min(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vminsb(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_min(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vminsb((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_min(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vminsb(a, (vector signed char)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_min(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vminub(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_min(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vminub((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_min(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vminub(a, (vector unsigned char)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_min(vector short a, vector short b)
-{
- return __builtin_altivec_vminsh(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_min(vector bool short a, vector short b)
-{
- return __builtin_altivec_vminsh((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_min(vector short a, vector bool short b)
-{
- return __builtin_altivec_vminsh(a, (vector short)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_min(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vminuh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_min(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vminuh((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_min(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vminuh(a, (vector unsigned short)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_min(vector int a, vector int b)
-{
- return __builtin_altivec_vminsw(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_min(vector bool int a, vector int b)
-{
- return __builtin_altivec_vminsw((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_min(vector int a, vector bool int b)
-{
- return __builtin_altivec_vminsw(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_min(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vminuw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_min(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vminuw((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_min(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vminuw(a, (vector unsigned int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_min(vector float a, vector float b)
-{
- return __builtin_altivec_vminfp(a, b);
-}
-
-/* vec_vminsb */
-
-static vector signed char __ATTRS_o_ai
-vec_vminsb(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vminsb(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vminsb(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vminsb((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vminsb(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vminsb(a, (vector signed char)b);
-}
-
-/* vec_vminub */
-
-static vector unsigned char __ATTRS_o_ai
-vec_vminub(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vminub(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vminub(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vminub((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vminub(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vminub(a, (vector unsigned char)b);
-}
-
-/* vec_vminsh */
-
-static vector short __ATTRS_o_ai
-vec_vminsh(vector short a, vector short b)
-{
- return __builtin_altivec_vminsh(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vminsh(vector bool short a, vector short b)
-{
- return __builtin_altivec_vminsh((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vminsh(vector short a, vector bool short b)
-{
- return __builtin_altivec_vminsh(a, (vector short)b);
-}
-
-/* vec_vminuh */
-
-static vector unsigned short __ATTRS_o_ai
-vec_vminuh(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vminuh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vminuh(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vminuh((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vminuh(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vminuh(a, (vector unsigned short)b);
-}
-
-/* vec_vminsw */
-
-static vector int __ATTRS_o_ai
-vec_vminsw(vector int a, vector int b)
-{
- return __builtin_altivec_vminsw(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vminsw(vector bool int a, vector int b)
-{
- return __builtin_altivec_vminsw((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vminsw(vector int a, vector bool int b)
-{
- return __builtin_altivec_vminsw(a, (vector int)b);
-}
-
-/* vec_vminuw */
-
-static vector unsigned int __ATTRS_o_ai
-vec_vminuw(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vminuw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vminuw(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vminuw((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vminuw(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vminuw(a, (vector unsigned int)b);
-}
-
-/* vec_vminfp */
-
-static vector float __attribute__((__always_inline__))
-vec_vminfp(vector float a, vector float b)
-{
- return __builtin_altivec_vminfp(a, b);
-}
-
-/* vec_mladd */
-
-#define __builtin_altivec_vmladduhm vec_mladd
-
-static vector short __ATTRS_o_ai
-vec_mladd(vector short a, vector short b, vector short c)
-{
- return a * b + c;
-}
-
-static vector short __ATTRS_o_ai
-vec_mladd(vector short a, vector unsigned short b, vector unsigned short c)
-{
- return a * (vector short)b + (vector short)c;
-}
-
-static vector short __ATTRS_o_ai
-vec_mladd(vector unsigned short a, vector short b, vector short c)
-{
- return (vector short)a * b + c;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_mladd(vector unsigned short a,
- vector unsigned short b,
- vector unsigned short c)
-{
- return a * b + c;
-}
-
-/* vec_vmladduhm */
-
-static vector short __ATTRS_o_ai
-vec_vmladduhm(vector short a, vector short b, vector short c)
-{
- return a * b + c;
-}
-
-static vector short __ATTRS_o_ai
-vec_vmladduhm(vector short a, vector unsigned short b, vector unsigned short c)
-{
- return a * (vector short)b + (vector short)c;
-}
-
-static vector short __ATTRS_o_ai
-vec_vmladduhm(vector unsigned short a, vector short b, vector short c)
-{
- return (vector short)a * b + c;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vmladduhm(vector unsigned short a,
- vector unsigned short b,
- vector unsigned short c)
-{
- return a * b + c;
-}
-
-/* vec_mradds */
-
-static vector short __attribute__((__always_inline__))
-vec_mradds(vector short a, vector short b, vector short c)
-{
- return __builtin_altivec_vmhraddshs(a, b, c);
-}
-
-/* vec_vmhraddshs */
-
-static vector short __attribute__((__always_inline__))
-vec_vmhraddshs(vector short a, vector short b, vector short c)
-{
- return __builtin_altivec_vmhraddshs(a, b, c);
-}
-
-/* vec_msum */
-
-static vector int __ATTRS_o_ai
-vec_msum(vector signed char a, vector unsigned char b, vector int c)
-{
- return __builtin_altivec_vmsummbm(a, b, c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_msum(vector unsigned char a, vector unsigned char b, vector unsigned int c)
-{
- return __builtin_altivec_vmsumubm(a, b, c);
-}
-
-static vector int __ATTRS_o_ai
-vec_msum(vector short a, vector short b, vector int c)
-{
- return __builtin_altivec_vmsumshm(a, b, c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_msum(vector unsigned short a,
- vector unsigned short b,
- vector unsigned int c)
-{
- return __builtin_altivec_vmsumuhm(a, b, c);
-}
-
-/* vec_vmsummbm */
-
-static vector int __attribute__((__always_inline__))
-vec_vmsummbm(vector signed char a, vector unsigned char b, vector int c)
-{
- return __builtin_altivec_vmsummbm(a, b, c);
-}
-
-/* vec_vmsumubm */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vmsumubm(vector unsigned char a,
- vector unsigned char b,
- vector unsigned int c)
-{
- return __builtin_altivec_vmsumubm(a, b, c);
-}
-
-/* vec_vmsumshm */
-
-static vector int __attribute__((__always_inline__))
-vec_vmsumshm(vector short a, vector short b, vector int c)
-{
- return __builtin_altivec_vmsumshm(a, b, c);
-}
-
-/* vec_vmsumuhm */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vmsumuhm(vector unsigned short a,
- vector unsigned short b,
- vector unsigned int c)
-{
- return __builtin_altivec_vmsumuhm(a, b, c);
-}
-
-/* vec_msums */
-
-static vector int __ATTRS_o_ai
-vec_msums(vector short a, vector short b, vector int c)
-{
- return __builtin_altivec_vmsumshs(a, b, c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_msums(vector unsigned short a,
- vector unsigned short b,
- vector unsigned int c)
-{
- return __builtin_altivec_vmsumuhs(a, b, c);
-}
-
-/* vec_vmsumshs */
-
-static vector int __attribute__((__always_inline__))
-vec_vmsumshs(vector short a, vector short b, vector int c)
-{
- return __builtin_altivec_vmsumshs(a, b, c);
-}
-
-/* vec_vmsumuhs */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vmsumuhs(vector unsigned short a,
- vector unsigned short b,
- vector unsigned int c)
-{
- return __builtin_altivec_vmsumuhs(a, b, c);
-}
-
-/* vec_mtvscr */
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector signed char a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector unsigned char a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector bool char a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector short a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector unsigned short a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector bool short a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector pixel a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector int a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector unsigned int a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector bool int a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-static void __ATTRS_o_ai
-vec_mtvscr(vector float a)
-{
- __builtin_altivec_mtvscr((vector int)a);
-}
-
-/* vec_mule */
-
-static vector short __ATTRS_o_ai
-vec_mule(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vmulesb(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_mule(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vmuleub(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_mule(vector short a, vector short b)
-{
- return __builtin_altivec_vmulesh(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_mule(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vmuleuh(a, b);
-}
-
-/* vec_vmulesb */
-
-static vector short __attribute__((__always_inline__))
-vec_vmulesb(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vmulesb(a, b);
-}
-
-/* vec_vmuleub */
-
-static vector unsigned short __attribute__((__always_inline__))
-vec_vmuleub(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vmuleub(a, b);
-}
-
-/* vec_vmulesh */
-
-static vector int __attribute__((__always_inline__))
-vec_vmulesh(vector short a, vector short b)
-{
- return __builtin_altivec_vmulesh(a, b);
-}
-
-/* vec_vmuleuh */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vmuleuh(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vmuleuh(a, b);
-}
-
-/* vec_mulo */
-
-static vector short __ATTRS_o_ai
-vec_mulo(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vmulosb(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_mulo(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vmuloub(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_mulo(vector short a, vector short b)
-{
- return __builtin_altivec_vmulosh(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_mulo(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vmulouh(a, b);
-}
-
-/* vec_vmulosb */
-
-static vector short __attribute__((__always_inline__))
-vec_vmulosb(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vmulosb(a, b);
-}
-
-/* vec_vmuloub */
-
-static vector unsigned short __attribute__((__always_inline__))
-vec_vmuloub(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vmuloub(a, b);
-}
-
-/* vec_vmulosh */
-
-static vector int __attribute__((__always_inline__))
-vec_vmulosh(vector short a, vector short b)
-{
- return __builtin_altivec_vmulosh(a, b);
-}
-
-/* vec_vmulouh */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vmulouh(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vmulouh(a, b);
-}
-
-/* vec_nmsub */
-
-static vector float __attribute__((__always_inline__))
-vec_nmsub(vector float a, vector float b, vector float c)
-{
- return __builtin_altivec_vnmsubfp(a, b, c);
-}
-
-/* vec_vnmsubfp */
-
-static vector float __attribute__((__always_inline__))
-vec_vnmsubfp(vector float a, vector float b, vector float c)
-{
- return __builtin_altivec_vnmsubfp(a, b, c);
-}
-
-/* vec_nor */
-
-#define __builtin_altivec_vnor vec_nor
-
-static vector signed char __ATTRS_o_ai
-vec_nor(vector signed char a, vector signed char b)
-{
- return ~(a | b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_nor(vector unsigned char a, vector unsigned char b)
-{
- return ~(a | b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_nor(vector bool char a, vector bool char b)
-{
- return ~(a | b);
-}
-
-static vector short __ATTRS_o_ai
-vec_nor(vector short a, vector short b)
-{
- return ~(a | b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_nor(vector unsigned short a, vector unsigned short b)
-{
- return ~(a | b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_nor(vector bool short a, vector bool short b)
-{
- return ~(a | b);
-}
-
-static vector int __ATTRS_o_ai
-vec_nor(vector int a, vector int b)
-{
- return ~(a | b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_nor(vector unsigned int a, vector unsigned int b)
-{
- return ~(a | b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_nor(vector bool int a, vector bool int b)
-{
- return ~(a | b);
-}
-
-static vector float __ATTRS_o_ai
-vec_nor(vector float a, vector float b)
-{
- vector unsigned int res = ~((vector unsigned int)a | (vector unsigned int)b);
- return (vector float)res;
-}
-
-/* vec_vnor */
-
-static vector signed char __ATTRS_o_ai
-vec_vnor(vector signed char a, vector signed char b)
-{
- return ~(a | b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vnor(vector unsigned char a, vector unsigned char b)
-{
- return ~(a | b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vnor(vector bool char a, vector bool char b)
-{
- return ~(a | b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vnor(vector short a, vector short b)
-{
- return ~(a | b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vnor(vector unsigned short a, vector unsigned short b)
-{
- return ~(a | b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vnor(vector bool short a, vector bool short b)
-{
- return ~(a | b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vnor(vector int a, vector int b)
-{
- return ~(a | b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vnor(vector unsigned int a, vector unsigned int b)
-{
- return ~(a | b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vnor(vector bool int a, vector bool int b)
-{
- return ~(a | b);
-}
-
-static vector float __ATTRS_o_ai
-vec_vnor(vector float a, vector float b)
-{
- vector unsigned int res = ~((vector unsigned int)a | (vector unsigned int)b);
- return (vector float)res;
-}
-
-/* vec_or */
-
-#define __builtin_altivec_vor vec_or
-
-static vector signed char __ATTRS_o_ai
-vec_or(vector signed char a, vector signed char b)
-{
- return a | b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_or(vector bool char a, vector signed char b)
-{
- return (vector signed char)a | b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_or(vector signed char a, vector bool char b)
-{
- return a | (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_or(vector unsigned char a, vector unsigned char b)
-{
- return a | b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_or(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a | b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_or(vector unsigned char a, vector bool char b)
-{
- return a | (vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_or(vector bool char a, vector bool char b)
-{
- return a | b;
-}
-
-static vector short __ATTRS_o_ai
-vec_or(vector short a, vector short b)
-{
- return a | b;
-}
-
-static vector short __ATTRS_o_ai
-vec_or(vector bool short a, vector short b)
-{
- return (vector short)a | b;
-}
-
-static vector short __ATTRS_o_ai
-vec_or(vector short a, vector bool short b)
-{
- return a | (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_or(vector unsigned short a, vector unsigned short b)
-{
- return a | b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_or(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a | b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_or(vector unsigned short a, vector bool short b)
-{
- return a | (vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_or(vector bool short a, vector bool short b)
-{
- return a | b;
-}
-
-static vector int __ATTRS_o_ai
-vec_or(vector int a, vector int b)
-{
- return a | b;
-}
-
-static vector int __ATTRS_o_ai
-vec_or(vector bool int a, vector int b)
-{
- return (vector int)a | b;
-}
-
-static vector int __ATTRS_o_ai
-vec_or(vector int a, vector bool int b)
-{
- return a | (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_or(vector unsigned int a, vector unsigned int b)
-{
- return a | b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_or(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a | b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_or(vector unsigned int a, vector bool int b)
-{
- return a | (vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_or(vector bool int a, vector bool int b)
-{
- return a | b;
-}
-
-static vector float __ATTRS_o_ai
-vec_or(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a | (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_or(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a | (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_or(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a | (vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_vor */
-
-static vector signed char __ATTRS_o_ai
-vec_vor(vector signed char a, vector signed char b)
-{
- return a | b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vor(vector bool char a, vector signed char b)
-{
- return (vector signed char)a | b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vor(vector signed char a, vector bool char b)
-{
- return a | (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vor(vector unsigned char a, vector unsigned char b)
-{
- return a | b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vor(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a | b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vor(vector unsigned char a, vector bool char b)
-{
- return a | (vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vor(vector bool char a, vector bool char b)
-{
- return a | b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vor(vector short a, vector short b)
-{
- return a | b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vor(vector bool short a, vector short b)
-{
- return (vector short)a | b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vor(vector short a, vector bool short b)
-{
- return a | (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vor(vector unsigned short a, vector unsigned short b)
-{
- return a | b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vor(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a | b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vor(vector unsigned short a, vector bool short b)
-{
- return a | (vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vor(vector bool short a, vector bool short b)
-{
- return a | b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vor(vector int a, vector int b)
-{
- return a | b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vor(vector bool int a, vector int b)
-{
- return (vector int)a | b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vor(vector int a, vector bool int b)
-{
- return a | (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vor(vector unsigned int a, vector unsigned int b)
-{
- return a | b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vor(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a | b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vor(vector unsigned int a, vector bool int b)
-{
- return a | (vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vor(vector bool int a, vector bool int b)
-{
- return a | b;
-}
-
-static vector float __ATTRS_o_ai
-vec_vor(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a | (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vor(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a | (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vor(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a | (vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_pack */
-
-static vector signed char __ATTRS_o_ai
-vec_pack(vector signed short a, vector signed short b)
-{
- return (vector signed char)vec_perm(a, b, (vector unsigned char)
- (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
- 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_pack(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned char)vec_perm(a, b, (vector unsigned char)
- (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
- 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_pack(vector bool short a, vector bool short b)
-{
- return (vector bool char)vec_perm(a, b, (vector unsigned char)
- (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
- 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
-}
-
-static vector short __ATTRS_o_ai
-vec_pack(vector int a, vector int b)
-{
- return (vector short)vec_perm(a, b, (vector unsigned char)
- (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
- 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_pack(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned short)vec_perm(a, b, (vector unsigned char)
- (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
- 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_pack(vector bool int a, vector bool int b)
-{
- return (vector bool short)vec_perm(a, b, (vector unsigned char)
- (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
- 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
-}
-
-/* vec_vpkuhum */
-
-#define __builtin_altivec_vpkuhum vec_vpkuhum
-
-static vector signed char __ATTRS_o_ai
-vec_vpkuhum(vector signed short a, vector signed short b)
-{
- return (vector signed char)vec_perm(a, b, (vector unsigned char)
- (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
- 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vpkuhum(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned char)vec_perm(a, b, (vector unsigned char)
- (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
- 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vpkuhum(vector bool short a, vector bool short b)
-{
- return (vector bool char)vec_perm(a, b, (vector unsigned char)
- (0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F,
- 0x11, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F));
-}
-
-/* vec_vpkuwum */
-
-#define __builtin_altivec_vpkuwum vec_vpkuwum
-
-static vector short __ATTRS_o_ai
-vec_vpkuwum(vector int a, vector int b)
-{
- return (vector short)vec_perm(a, b, (vector unsigned char)
- (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
- 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vpkuwum(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned short)vec_perm(a, b, (vector unsigned char)
- (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
- 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vpkuwum(vector bool int a, vector bool int b)
-{
- return (vector bool short)vec_perm(a, b, (vector unsigned char)
- (0x02, 0x03, 0x06, 0x07, 0x0A, 0x0B, 0x0E, 0x0F,
- 0x12, 0x13, 0x16, 0x17, 0x1A, 0x1B, 0x1E, 0x1F));
-}
-
-/* vec_packpx */
-
-static vector pixel __attribute__((__always_inline__))
-vec_packpx(vector unsigned int a, vector unsigned int b)
-{
- return (vector pixel)__builtin_altivec_vpkpx(a, b);
-}
-
-/* vec_vpkpx */
-
-static vector pixel __attribute__((__always_inline__))
-vec_vpkpx(vector unsigned int a, vector unsigned int b)
-{
- return (vector pixel)__builtin_altivec_vpkpx(a, b);
-}
-
-/* vec_packs */
-
-static vector signed char __ATTRS_o_ai
-vec_packs(vector short a, vector short b)
-{
- return __builtin_altivec_vpkshss(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_packs(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vpkuhus(a, b);
-}
-
-static vector signed short __ATTRS_o_ai
-vec_packs(vector int a, vector int b)
-{
- return __builtin_altivec_vpkswss(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_packs(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vpkuwus(a, b);
-}
-
-/* vec_vpkshss */
-
-static vector signed char __attribute__((__always_inline__))
-vec_vpkshss(vector short a, vector short b)
-{
- return __builtin_altivec_vpkshss(a, b);
-}
-
-/* vec_vpkuhus */
-
-static vector unsigned char __attribute__((__always_inline__))
-vec_vpkuhus(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vpkuhus(a, b);
-}
-
-/* vec_vpkswss */
-
-static vector signed short __attribute__((__always_inline__))
-vec_vpkswss(vector int a, vector int b)
-{
- return __builtin_altivec_vpkswss(a, b);
-}
-
-/* vec_vpkuwus */
-
-static vector unsigned short __attribute__((__always_inline__))
-vec_vpkuwus(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vpkuwus(a, b);
-}
-
-/* vec_packsu */
-
-static vector unsigned char __ATTRS_o_ai
-vec_packsu(vector short a, vector short b)
-{
- return __builtin_altivec_vpkshus(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_packsu(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vpkuhus(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_packsu(vector int a, vector int b)
-{
- return __builtin_altivec_vpkswus(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_packsu(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vpkuwus(a, b);
-}
-
-/* vec_vpkshus */
-
-static vector unsigned char __ATTRS_o_ai
-vec_vpkshus(vector short a, vector short b)
-{
- return __builtin_altivec_vpkshus(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vpkshus(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vpkuhus(a, b);
-}
-
-/* vec_vpkswus */
-
-static vector unsigned short __ATTRS_o_ai
-vec_vpkswus(vector int a, vector int b)
-{
- return __builtin_altivec_vpkswus(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vpkswus(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vpkuwus(a, b);
-}
-
-/* vec_perm */
-
-vector signed char __ATTRS_o_ai
-vec_perm(vector signed char a, vector signed char b, vector unsigned char c)
-{
- return (vector signed char)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector unsigned char __ATTRS_o_ai
-vec_perm(vector unsigned char a,
- vector unsigned char b,
- vector unsigned char c)
-{
- return (vector unsigned char)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector bool char __ATTRS_o_ai
-vec_perm(vector bool char a, vector bool char b, vector unsigned char c)
-{
- return (vector bool char)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector short __ATTRS_o_ai
-vec_perm(vector short a, vector short b, vector unsigned char c)
-{
- return (vector short)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector unsigned short __ATTRS_o_ai
-vec_perm(vector unsigned short a,
- vector unsigned short b,
- vector unsigned char c)
-{
- return (vector unsigned short)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector bool short __ATTRS_o_ai
-vec_perm(vector bool short a, vector bool short b, vector unsigned char c)
-{
- return (vector bool short)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector pixel __ATTRS_o_ai
-vec_perm(vector pixel a, vector pixel b, vector unsigned char c)
-{
- return (vector pixel)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector int __ATTRS_o_ai
-vec_perm(vector int a, vector int b, vector unsigned char c)
-{
- return (vector int)__builtin_altivec_vperm_4si(a, b, c);
-}
-
-vector unsigned int __ATTRS_o_ai
-vec_perm(vector unsigned int a, vector unsigned int b, vector unsigned char c)
-{
- return (vector unsigned int)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector bool int __ATTRS_o_ai
-vec_perm(vector bool int a, vector bool int b, vector unsigned char c)
-{
- return (vector bool int)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector float __ATTRS_o_ai
-vec_perm(vector float a, vector float b, vector unsigned char c)
-{
- return (vector float)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-/* vec_vperm */
-
-vector signed char __ATTRS_o_ai
-vec_vperm(vector signed char a, vector signed char b, vector unsigned char c)
-{
- return (vector signed char)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector unsigned char __ATTRS_o_ai
-vec_vperm(vector unsigned char a,
- vector unsigned char b,
- vector unsigned char c)
-{
- return (vector unsigned char)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector bool char __ATTRS_o_ai
-vec_vperm(vector bool char a, vector bool char b, vector unsigned char c)
-{
- return (vector bool char)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector short __ATTRS_o_ai
-vec_vperm(vector short a, vector short b, vector unsigned char c)
-{
- return (vector short)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector unsigned short __ATTRS_o_ai
-vec_vperm(vector unsigned short a,
- vector unsigned short b,
- vector unsigned char c)
-{
- return (vector unsigned short)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector bool short __ATTRS_o_ai
-vec_vperm(vector bool short a, vector bool short b, vector unsigned char c)
-{
- return (vector bool short)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector pixel __ATTRS_o_ai
-vec_vperm(vector pixel a, vector pixel b, vector unsigned char c)
-{
- return (vector pixel)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector int __ATTRS_o_ai
-vec_vperm(vector int a, vector int b, vector unsigned char c)
-{
- return (vector int)__builtin_altivec_vperm_4si(a, b, c);
-}
-
-vector unsigned int __ATTRS_o_ai
-vec_vperm(vector unsigned int a, vector unsigned int b, vector unsigned char c)
-{
- return (vector unsigned int)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector bool int __ATTRS_o_ai
-vec_vperm(vector bool int a, vector bool int b, vector unsigned char c)
-{
- return (vector bool int)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-vector float __ATTRS_o_ai
-vec_vperm(vector float a, vector float b, vector unsigned char c)
-{
- return (vector float)
- __builtin_altivec_vperm_4si((vector int)a, (vector int)b, c);
-}
-
-/* vec_re */
-
-vector float __attribute__((__always_inline__))
-vec_re(vector float a)
-{
- return __builtin_altivec_vrefp(a);
-}
-
-/* vec_vrefp */
-
-vector float __attribute__((__always_inline__))
-vec_vrefp(vector float a)
-{
- return __builtin_altivec_vrefp(a);
-}
-
-/* vec_rl */
-
-static vector signed char __ATTRS_o_ai
-vec_rl(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)__builtin_altivec_vrlb((vector char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_rl(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)__builtin_altivec_vrlb((vector char)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_rl(vector short a, vector unsigned short b)
-{
- return __builtin_altivec_vrlh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_rl(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)__builtin_altivec_vrlh((vector short)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_rl(vector int a, vector unsigned int b)
-{
- return __builtin_altivec_vrlw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_rl(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)__builtin_altivec_vrlw((vector int)a, b);
-}
-
-/* vec_vrlb */
-
-static vector signed char __ATTRS_o_ai
-vec_vrlb(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)__builtin_altivec_vrlb((vector char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vrlb(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)__builtin_altivec_vrlb((vector char)a, b);
-}
-
-/* vec_vrlh */
-
-static vector short __ATTRS_o_ai
-vec_vrlh(vector short a, vector unsigned short b)
-{
- return __builtin_altivec_vrlh(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vrlh(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)__builtin_altivec_vrlh((vector short)a, b);
-}
-
-/* vec_vrlw */
-
-static vector int __ATTRS_o_ai
-vec_vrlw(vector int a, vector unsigned int b)
-{
- return __builtin_altivec_vrlw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vrlw(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)__builtin_altivec_vrlw((vector int)a, b);
-}
-
-/* vec_round */
-
-static vector float __attribute__((__always_inline__))
-vec_round(vector float a)
-{
- return __builtin_altivec_vrfin(a);
-}
-
-/* vec_vrfin */
-
-static vector float __attribute__((__always_inline__))
-vec_vrfin(vector float a)
-{
- return __builtin_altivec_vrfin(a);
-}
-
-/* vec_rsqrte */
-
-static __vector float __attribute__((__always_inline__))
-vec_rsqrte(vector float a)
-{
- return __builtin_altivec_vrsqrtefp(a);
-}
-
-/* vec_vrsqrtefp */
-
-static __vector float __attribute__((__always_inline__))
-vec_vrsqrtefp(vector float a)
-{
- return __builtin_altivec_vrsqrtefp(a);
-}
-
-/* vec_sel */
-
-#define __builtin_altivec_vsel_4si vec_sel
-
-static vector signed char __ATTRS_o_ai
-vec_sel(vector signed char a, vector signed char b, vector unsigned char c)
-{
- return (a & ~(vector signed char)c) | (b & (vector signed char)c);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_sel(vector signed char a, vector signed char b, vector bool char c)
-{
- return (a & ~(vector signed char)c) | (b & (vector signed char)c);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sel(vector unsigned char a, vector unsigned char b, vector unsigned char c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sel(vector unsigned char a, vector unsigned char b, vector bool char c)
-{
- return (a & ~(vector unsigned char)c) | (b & (vector unsigned char)c);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_sel(vector bool char a, vector bool char b, vector unsigned char c)
-{
- return (a & ~(vector bool char)c) | (b & (vector bool char)c);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_sel(vector bool char a, vector bool char b, vector bool char c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector short __ATTRS_o_ai
-vec_sel(vector short a, vector short b, vector unsigned short c)
-{
- return (a & ~(vector short)c) | (b & (vector short)c);
-}
-
-static vector short __ATTRS_o_ai
-vec_sel(vector short a, vector short b, vector bool short c)
-{
- return (a & ~(vector short)c) | (b & (vector short)c);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sel(vector unsigned short a,
- vector unsigned short b,
- vector unsigned short c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sel(vector unsigned short a, vector unsigned short b, vector bool short c)
-{
- return (a & ~(vector unsigned short)c) | (b & (vector unsigned short)c);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_sel(vector bool short a, vector bool short b, vector unsigned short c)
-{
- return (a & ~(vector bool short)c) | (b & (vector bool short)c);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_sel(vector bool short a, vector bool short b, vector bool short c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector int __ATTRS_o_ai
-vec_sel(vector int a, vector int b, vector unsigned int c)
-{
- return (a & ~(vector int)c) | (b & (vector int)c);
-}
-
-static vector int __ATTRS_o_ai
-vec_sel(vector int a, vector int b, vector bool int c)
-{
- return (a & ~(vector int)c) | (b & (vector int)c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sel(vector unsigned int a, vector unsigned int b, vector unsigned int c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sel(vector unsigned int a, vector unsigned int b, vector bool int c)
-{
- return (a & ~(vector unsigned int)c) | (b & (vector unsigned int)c);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_sel(vector bool int a, vector bool int b, vector unsigned int c)
-{
- return (a & ~(vector bool int)c) | (b & (vector bool int)c);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_sel(vector bool int a, vector bool int b, vector bool int c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector float __ATTRS_o_ai
-vec_sel(vector float a, vector float b, vector unsigned int c)
-{
- vector int res = ((vector int)a & ~(vector int)c)
- | ((vector int)b & (vector int)c);
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_sel(vector float a, vector float b, vector bool int c)
-{
- vector int res = ((vector int)a & ~(vector int)c)
- | ((vector int)b & (vector int)c);
- return (vector float)res;
-}
-
-/* vec_vsel */
-
-static vector signed char __ATTRS_o_ai
-vec_vsel(vector signed char a, vector signed char b, vector unsigned char c)
-{
- return (a & ~(vector signed char)c) | (b & (vector signed char)c);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsel(vector signed char a, vector signed char b, vector bool char c)
-{
- return (a & ~(vector signed char)c) | (b & (vector signed char)c);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsel(vector unsigned char a, vector unsigned char b, vector unsigned char c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsel(vector unsigned char a, vector unsigned char b, vector bool char c)
-{
- return (a & ~(vector unsigned char)c) | (b & (vector unsigned char)c);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsel(vector bool char a, vector bool char b, vector unsigned char c)
-{
- return (a & ~(vector bool char)c) | (b & (vector bool char)c);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsel(vector bool char a, vector bool char b, vector bool char c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsel(vector short a, vector short b, vector unsigned short c)
-{
- return (a & ~(vector short)c) | (b & (vector short)c);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsel(vector short a, vector short b, vector bool short c)
-{
- return (a & ~(vector short)c) | (b & (vector short)c);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsel(vector unsigned short a,
- vector unsigned short b,
- vector unsigned short c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsel(vector unsigned short a, vector unsigned short b, vector bool short c)
-{
- return (a & ~(vector unsigned short)c) | (b & (vector unsigned short)c);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsel(vector bool short a, vector bool short b, vector unsigned short c)
-{
- return (a & ~(vector bool short)c) | (b & (vector bool short)c);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsel(vector bool short a, vector bool short b, vector bool short c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsel(vector int a, vector int b, vector unsigned int c)
-{
- return (a & ~(vector int)c) | (b & (vector int)c);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsel(vector int a, vector int b, vector bool int c)
-{
- return (a & ~(vector int)c) | (b & (vector int)c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsel(vector unsigned int a, vector unsigned int b, vector unsigned int c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsel(vector unsigned int a, vector unsigned int b, vector bool int c)
-{
- return (a & ~(vector unsigned int)c) | (b & (vector unsigned int)c);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsel(vector bool int a, vector bool int b, vector unsigned int c)
-{
- return (a & ~(vector bool int)c) | (b & (vector bool int)c);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsel(vector bool int a, vector bool int b, vector bool int c)
-{
- return (a & ~c) | (b & c);
-}
-
-static vector float __ATTRS_o_ai
-vec_vsel(vector float a, vector float b, vector unsigned int c)
-{
- vector int res = ((vector int)a & ~(vector int)c)
- | ((vector int)b & (vector int)c);
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vsel(vector float a, vector float b, vector bool int c)
-{
- vector int res = ((vector int)a & ~(vector int)c)
- | ((vector int)b & (vector int)c);
- return (vector float)res;
-}
-
-/* vec_sl */
-
-static vector signed char __ATTRS_o_ai
-vec_sl(vector signed char a, vector unsigned char b)
-{
- return a << (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sl(vector unsigned char a, vector unsigned char b)
-{
- return a << b;
-}
-
-static vector short __ATTRS_o_ai
-vec_sl(vector short a, vector unsigned short b)
-{
- return a << (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sl(vector unsigned short a, vector unsigned short b)
-{
- return a << b;
-}
-
-static vector int __ATTRS_o_ai
-vec_sl(vector int a, vector unsigned int b)
-{
- return a << (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sl(vector unsigned int a, vector unsigned int b)
-{
- return a << b;
-}
-
-/* vec_vslb */
-
-#define __builtin_altivec_vslb vec_vslb
-
-static vector signed char __ATTRS_o_ai
-vec_vslb(vector signed char a, vector unsigned char b)
-{
- return vec_sl(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vslb(vector unsigned char a, vector unsigned char b)
-{
- return vec_sl(a, b);
-}
-
-/* vec_vslh */
-
-#define __builtin_altivec_vslh vec_vslh
-
-static vector short __ATTRS_o_ai
-vec_vslh(vector short a, vector unsigned short b)
-{
- return vec_sl(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vslh(vector unsigned short a, vector unsigned short b)
-{
- return vec_sl(a, b);
-}
-
-/* vec_vslw */
-
-#define __builtin_altivec_vslw vec_vslw
-
-static vector int __ATTRS_o_ai
-vec_vslw(vector int a, vector unsigned int b)
-{
- return vec_sl(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vslw(vector unsigned int a, vector unsigned int b)
-{
- return vec_sl(a, b);
-}
-
-/* vec_sld */
-
-#define __builtin_altivec_vsldoi_4si vec_sld
-
-static vector signed char __ATTRS_o_ai
-vec_sld(vector signed char a, vector signed char b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sld(vector unsigned char a, vector unsigned char b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector short __ATTRS_o_ai
-vec_sld(vector short a, vector short b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sld(vector unsigned short a, vector unsigned short b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_sld(vector pixel a, vector pixel b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector int __ATTRS_o_ai
-vec_sld(vector int a, vector int b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sld(vector unsigned int a, vector unsigned int b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector float __ATTRS_o_ai
-vec_sld(vector float a, vector float b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-/* vec_vsldoi */
-
-static vector signed char __ATTRS_o_ai
-vec_vsldoi(vector signed char a, vector signed char b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsldoi(vector unsigned char a, vector unsigned char b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector short __ATTRS_o_ai
-vec_vsldoi(vector short a, vector short b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsldoi(vector unsigned short a, vector unsigned short b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsldoi(vector pixel a, vector pixel b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector int __ATTRS_o_ai
-vec_vsldoi(vector int a, vector int b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsldoi(vector unsigned int a, vector unsigned int b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-static vector float __ATTRS_o_ai
-vec_vsldoi(vector float a, vector float b, unsigned char c)
-{
- return vec_perm(a, b, (vector unsigned char)
- (c, c+1, c+2, c+3, c+4, c+5, c+6, c+7,
- c+8, c+9, c+10, c+11, c+12, c+13, c+14, c+15));
-}
-
-/* vec_sll */
-
-static vector signed char __ATTRS_o_ai
-vec_sll(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_sll(vector signed char a, vector unsigned short b)
-{
- return (vector signed char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_sll(vector signed char a, vector unsigned int b)
-{
- return (vector signed char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sll(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sll(vector unsigned char a, vector unsigned short b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sll(vector unsigned char a, vector unsigned int b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_sll(vector bool char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_sll(vector bool char a, vector unsigned short b)
-{
- return (vector bool char)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_sll(vector bool char a, vector unsigned int b)
-{
- return (vector bool char)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_sll(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_sll(vector short a, vector unsigned short b)
-{
- return (vector short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_sll(vector short a, vector unsigned int b)
-{
- return (vector short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sll(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sll(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sll(vector unsigned short a, vector unsigned int b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_sll(vector bool short a, vector unsigned char b)
-{
- return (vector bool short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_sll(vector bool short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_sll(vector bool short a, vector unsigned int b)
-{
- return (vector bool short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_sll(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_sll(vector pixel a, vector unsigned short b)
-{
- return (vector pixel)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_sll(vector pixel a, vector unsigned int b)
-{
- return (vector pixel)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sll(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vsl(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sll(vector int a, vector unsigned short b)
-{
- return (vector int)__builtin_altivec_vsl(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sll(vector int a, vector unsigned int b)
-{
- return (vector int)__builtin_altivec_vsl(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sll(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sll(vector unsigned int a, vector unsigned short b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sll(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_sll(vector bool int a, vector unsigned char b)
-{
- return (vector bool int)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_sll(vector bool int a, vector unsigned short b)
-{
- return (vector bool int)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_sll(vector bool int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-/* vec_vsl */
-
-static vector signed char __ATTRS_o_ai
-vec_vsl(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsl(vector signed char a, vector unsigned short b)
-{
- return (vector signed char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsl(vector signed char a, vector unsigned int b)
-{
- return (vector signed char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsl(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsl(vector unsigned char a, vector unsigned short b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsl(vector unsigned char a, vector unsigned int b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsl(vector bool char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsl(vector bool char a, vector unsigned short b)
-{
- return (vector bool char)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsl(vector bool char a, vector unsigned int b)
-{
- return (vector bool char)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsl(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsl(vector short a, vector unsigned short b)
-{
- return (vector short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsl(vector short a, vector unsigned int b)
-{
- return (vector short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsl(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsl(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsl(vector unsigned short a, vector unsigned int b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsl(vector bool short a, vector unsigned char b)
-{
- return (vector bool short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsl(vector bool short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsl(vector bool short a, vector unsigned int b)
-{
- return (vector bool short)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsl(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsl(vector pixel a, vector unsigned short b)
-{
- return (vector pixel)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsl(vector pixel a, vector unsigned int b)
-{
- return (vector pixel)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsl(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vsl(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsl(vector int a, vector unsigned short b)
-{
- return (vector int)__builtin_altivec_vsl(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsl(vector int a, vector unsigned int b)
-{
- return (vector int)__builtin_altivec_vsl(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsl(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsl(vector unsigned int a, vector unsigned short b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsl(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsl(vector bool int a, vector unsigned char b)
-{
- return (vector bool int)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsl(vector bool int a, vector unsigned short b)
-{
- return (vector bool int)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsl(vector bool int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vsl((vector int)a, (vector int)b);
-}
-
-/* vec_slo */
-
-static vector signed char __ATTRS_o_ai
-vec_slo(vector signed char a, vector signed char b)
-{
- return (vector signed char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_slo(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_slo(vector unsigned char a, vector signed char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_slo(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_slo(vector short a, vector signed char b)
-{
- return (vector short)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_slo(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_slo(vector unsigned short a, vector signed char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_slo(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_slo(vector pixel a, vector signed char b)
-{
- return (vector pixel)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_slo(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_slo(vector int a, vector signed char b)
-{
- return (vector int)__builtin_altivec_vslo(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_slo(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vslo(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_slo(vector unsigned int a, vector signed char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_slo(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_slo(vector float a, vector signed char b)
-{
- return (vector float)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_slo(vector float a, vector unsigned char b)
-{
- return (vector float)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-/* vec_vslo */
-
-static vector signed char __ATTRS_o_ai
-vec_vslo(vector signed char a, vector signed char b)
-{
- return (vector signed char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vslo(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vslo(vector unsigned char a, vector signed char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vslo(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vslo(vector short a, vector signed char b)
-{
- return (vector short)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vslo(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vslo(vector unsigned short a, vector signed char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vslo(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vslo(vector pixel a, vector signed char b)
-{
- return (vector pixel)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vslo(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vslo(vector int a, vector signed char b)
-{
- return (vector int)__builtin_altivec_vslo(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vslo(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vslo(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vslo(vector unsigned int a, vector signed char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vslo(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_vslo(vector float a, vector signed char b)
-{
- return (vector float)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_vslo(vector float a, vector unsigned char b)
-{
- return (vector float)__builtin_altivec_vslo((vector int)a, (vector int)b);
-}
-
-/* vec_splat */
-
-static vector signed char __ATTRS_o_ai
-vec_splat(vector signed char a, unsigned char b)
-{
- return vec_perm(a, a, (vector unsigned char)(b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_splat(vector unsigned char a, unsigned char b)
-{
- return vec_perm(a, a, (vector unsigned char)(b));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_splat(vector bool char a, unsigned char b)
-{
- return vec_perm(a, a, (vector unsigned char)(b));
-}
-
-static vector short __ATTRS_o_ai
-vec_splat(vector short a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_splat(vector unsigned short a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_splat(vector bool short a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_splat(vector pixel a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector int __ATTRS_o_ai
-vec_splat(vector int a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_splat(vector unsigned int a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_splat(vector bool int a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-static vector float __ATTRS_o_ai
-vec_splat(vector float a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-/* vec_vspltb */
-
-#define __builtin_altivec_vspltb vec_vspltb
-
-static vector signed char __ATTRS_o_ai
-vec_vspltb(vector signed char a, unsigned char b)
-{
- return vec_perm(a, a, (vector unsigned char)(b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vspltb(vector unsigned char a, unsigned char b)
-{
- return vec_perm(a, a, (vector unsigned char)(b));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vspltb(vector bool char a, unsigned char b)
-{
- return vec_perm(a, a, (vector unsigned char)(b));
-}
-
-/* vec_vsplth */
-
-#define __builtin_altivec_vsplth vec_vsplth
-
-static vector short __ATTRS_o_ai
-vec_vsplth(vector short a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsplth(vector unsigned short a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsplth(vector bool short a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsplth(vector pixel a, unsigned char b)
-{
- b *= 2;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1, b, b+1));
-}
-
-/* vec_vspltw */
-
-#define __builtin_altivec_vspltw vec_vspltw
-
-static vector int __ATTRS_o_ai
-vec_vspltw(vector int a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vspltw(vector unsigned int a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vspltw(vector bool int a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-static vector float __ATTRS_o_ai
-vec_vspltw(vector float a, unsigned char b)
-{
- b *= 4;
- return vec_perm(a, a, (vector unsigned char)
- (b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3, b, b+1, b+2, b+3));
-}
-
-/* vec_splat_s8 */
-
-#define __builtin_altivec_vspltisb vec_splat_s8
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector signed char __ATTRS_o_ai
-vec_splat_s8(signed char a)
-{
- return (vector signed char)(a);
-}
-
-/* vec_vspltisb */
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector signed char __ATTRS_o_ai
-vec_vspltisb(signed char a)
-{
- return (vector signed char)(a);
-}
-
-/* vec_splat_s16 */
-
-#define __builtin_altivec_vspltish vec_splat_s16
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector short __ATTRS_o_ai
-vec_splat_s16(signed char a)
-{
- return (vector short)(a);
-}
-
-/* vec_vspltish */
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector short __ATTRS_o_ai
-vec_vspltish(signed char a)
-{
- return (vector short)(a);
-}
-
-/* vec_splat_s32 */
-
-#define __builtin_altivec_vspltisw vec_splat_s32
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector int __ATTRS_o_ai
-vec_splat_s32(signed char a)
-{
- return (vector int)(a);
-}
-
-/* vec_vspltisw */
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector int __ATTRS_o_ai
-vec_vspltisw(signed char a)
-{
- return (vector int)(a);
-}
-
-/* vec_splat_u8 */
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector unsigned char __ATTRS_o_ai
-vec_splat_u8(unsigned char a)
-{
- return (vector unsigned char)(a);
-}
-
-/* vec_splat_u16 */
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector unsigned short __ATTRS_o_ai
-vec_splat_u16(signed char a)
-{
- return (vector unsigned short)(a);
-}
-
-/* vec_splat_u32 */
-
-// FIXME: parameter should be treated as 5-bit signed literal
-static vector unsigned int __ATTRS_o_ai
-vec_splat_u32(signed char a)
-{
- return (vector unsigned int)(a);
-}
-
-/* vec_sr */
-
-static vector signed char __ATTRS_o_ai
-vec_sr(vector signed char a, vector unsigned char b)
-{
- return a >> (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sr(vector unsigned char a, vector unsigned char b)
-{
- return a >> b;
-}
-
-static vector short __ATTRS_o_ai
-vec_sr(vector short a, vector unsigned short b)
-{
- return a >> (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sr(vector unsigned short a, vector unsigned short b)
-{
- return a >> b;
-}
-
-static vector int __ATTRS_o_ai
-vec_sr(vector int a, vector unsigned int b)
-{
- return a >> (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sr(vector unsigned int a, vector unsigned int b)
-{
- return a >> b;
-}
-
-/* vec_vsrb */
-
-#define __builtin_altivec_vsrb vec_vsrb
-
-static vector signed char __ATTRS_o_ai
-vec_vsrb(vector signed char a, vector unsigned char b)
-{
- return a >> (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsrb(vector unsigned char a, vector unsigned char b)
-{
- return a >> b;
-}
-
-/* vec_vsrh */
-
-#define __builtin_altivec_vsrh vec_vsrh
-
-static vector short __ATTRS_o_ai
-vec_vsrh(vector short a, vector unsigned short b)
-{
- return a >> (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsrh(vector unsigned short a, vector unsigned short b)
-{
- return a >> b;
-}
-
-/* vec_vsrw */
-
-#define __builtin_altivec_vsrw vec_vsrw
-
-static vector int __ATTRS_o_ai
-vec_vsrw(vector int a, vector unsigned int b)
-{
- return a >> (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsrw(vector unsigned int a, vector unsigned int b)
-{
- return a >> b;
-}
-
-/* vec_sra */
-
-static vector signed char __ATTRS_o_ai
-vec_sra(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)__builtin_altivec_vsrab((vector char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sra(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)__builtin_altivec_vsrab((vector char)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_sra(vector short a, vector unsigned short b)
-{
- return __builtin_altivec_vsrah(a, (vector unsigned short)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sra(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)__builtin_altivec_vsrah((vector short)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sra(vector int a, vector unsigned int b)
-{
- return __builtin_altivec_vsraw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sra(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)__builtin_altivec_vsraw((vector int)a, b);
-}
-
-/* vec_vsrab */
-
-static vector signed char __ATTRS_o_ai
-vec_vsrab(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)__builtin_altivec_vsrab((vector char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsrab(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)__builtin_altivec_vsrab((vector char)a, b);
-}
-
-/* vec_vsrah */
-
-static vector short __ATTRS_o_ai
-vec_vsrah(vector short a, vector unsigned short b)
-{
- return __builtin_altivec_vsrah(a, (vector unsigned short)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsrah(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)__builtin_altivec_vsrah((vector short)a, b);
-}
-
-/* vec_vsraw */
-
-static vector int __ATTRS_o_ai
-vec_vsraw(vector int a, vector unsigned int b)
-{
- return __builtin_altivec_vsraw(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsraw(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)__builtin_altivec_vsraw((vector int)a, b);
-}
-
-/* vec_srl */
-
-static vector signed char __ATTRS_o_ai
-vec_srl(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_srl(vector signed char a, vector unsigned short b)
-{
- return (vector signed char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_srl(vector signed char a, vector unsigned int b)
-{
- return (vector signed char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_srl(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_srl(vector unsigned char a, vector unsigned short b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_srl(vector unsigned char a, vector unsigned int b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_srl(vector bool char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_srl(vector bool char a, vector unsigned short b)
-{
- return (vector bool char)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_srl(vector bool char a, vector unsigned int b)
-{
- return (vector bool char)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_srl(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_srl(vector short a, vector unsigned short b)
-{
- return (vector short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_srl(vector short a, vector unsigned int b)
-{
- return (vector short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_srl(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_srl(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_srl(vector unsigned short a, vector unsigned int b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_srl(vector bool short a, vector unsigned char b)
-{
- return (vector bool short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_srl(vector bool short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_srl(vector bool short a, vector unsigned int b)
-{
- return (vector bool short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_srl(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_srl(vector pixel a, vector unsigned short b)
-{
- return (vector pixel)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_srl(vector pixel a, vector unsigned int b)
-{
- return (vector pixel)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_srl(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vsr(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_srl(vector int a, vector unsigned short b)
-{
- return (vector int)__builtin_altivec_vsr(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_srl(vector int a, vector unsigned int b)
-{
- return (vector int)__builtin_altivec_vsr(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_srl(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_srl(vector unsigned int a, vector unsigned short b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_srl(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_srl(vector bool int a, vector unsigned char b)
-{
- return (vector bool int)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_srl(vector bool int a, vector unsigned short b)
-{
- return (vector bool int)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_srl(vector bool int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-/* vec_vsr */
-
-static vector signed char __ATTRS_o_ai
-vec_vsr(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsr(vector signed char a, vector unsigned short b)
-{
- return (vector signed char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsr(vector signed char a, vector unsigned int b)
-{
- return (vector signed char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsr(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsr(vector unsigned char a, vector unsigned short b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsr(vector unsigned char a, vector unsigned int b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsr(vector bool char a, vector unsigned char b)
-{
- return (vector bool char)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsr(vector bool char a, vector unsigned short b)
-{
- return (vector bool char)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vsr(vector bool char a, vector unsigned int b)
-{
- return (vector bool char)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsr(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsr(vector short a, vector unsigned short b)
-{
- return (vector short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsr(vector short a, vector unsigned int b)
-{
- return (vector short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsr(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsr(vector unsigned short a, vector unsigned short b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsr(vector unsigned short a, vector unsigned int b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsr(vector bool short a, vector unsigned char b)
-{
- return (vector bool short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsr(vector bool short a, vector unsigned short b)
-{
- return (vector bool short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vsr(vector bool short a, vector unsigned int b)
-{
- return (vector bool short)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsr(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsr(vector pixel a, vector unsigned short b)
-{
- return (vector pixel)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsr(vector pixel a, vector unsigned int b)
-{
- return (vector pixel)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsr(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vsr(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsr(vector int a, vector unsigned short b)
-{
- return (vector int)__builtin_altivec_vsr(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsr(vector int a, vector unsigned int b)
-{
- return (vector int)__builtin_altivec_vsr(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsr(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsr(vector unsigned int a, vector unsigned short b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsr(vector unsigned int a, vector unsigned int b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsr(vector bool int a, vector unsigned char b)
-{
- return (vector bool int)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsr(vector bool int a, vector unsigned short b)
-{
- return (vector bool int)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vsr(vector bool int a, vector unsigned int b)
-{
- return (vector bool int)__builtin_altivec_vsr((vector int)a, (vector int)b);
-}
-
-/* vec_sro */
-
-static vector signed char __ATTRS_o_ai
-vec_sro(vector signed char a, vector signed char b)
-{
- return (vector signed char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_sro(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sro(vector unsigned char a, vector signed char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sro(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_sro(vector short a, vector signed char b)
-{
- return (vector short)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_sro(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sro(vector unsigned short a, vector signed char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sro(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_sro(vector pixel a, vector signed char b)
-{
- return (vector pixel)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_sro(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sro(vector int a, vector signed char b)
-{
- return (vector int)__builtin_altivec_vsro(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sro(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vsro(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sro(vector unsigned int a, vector signed char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sro(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_sro(vector float a, vector signed char b)
-{
- return (vector float)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_sro(vector float a, vector unsigned char b)
-{
- return (vector float)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-/* vec_vsro */
-
-static vector signed char __ATTRS_o_ai
-vec_vsro(vector signed char a, vector signed char b)
-{
- return (vector signed char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsro(vector signed char a, vector unsigned char b)
-{
- return (vector signed char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsro(vector unsigned char a, vector signed char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsro(vector unsigned char a, vector unsigned char b)
-{
- return (vector unsigned char)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsro(vector short a, vector signed char b)
-{
- return (vector short)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsro(vector short a, vector unsigned char b)
-{
- return (vector short)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsro(vector unsigned short a, vector signed char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsro(vector unsigned short a, vector unsigned char b)
-{
- return (vector unsigned short)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsro(vector pixel a, vector signed char b)
-{
- return (vector pixel)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector pixel __ATTRS_o_ai
-vec_vsro(vector pixel a, vector unsigned char b)
-{
- return (vector pixel)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsro(vector int a, vector signed char b)
-{
- return (vector int)__builtin_altivec_vsro(a, (vector int)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsro(vector int a, vector unsigned char b)
-{
- return (vector int)__builtin_altivec_vsro(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsro(vector unsigned int a, vector signed char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsro(vector unsigned int a, vector unsigned char b)
-{
- return (vector unsigned int)
- __builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_vsro(vector float a, vector signed char b)
-{
- return (vector float)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-static vector float __ATTRS_o_ai
-vec_vsro(vector float a, vector unsigned char b)
-{
- return (vector float)__builtin_altivec_vsro((vector int)a, (vector int)b);
-}
-
-/* vec_st */
-
-static void __ATTRS_o_ai
-vec_st(vector signed char a, int b, vector signed char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector signed char a, int b, signed char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector unsigned char a, int b, vector unsigned char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector unsigned char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool char a, int b, signed char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool char a, int b, vector bool char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector short a, int b, vector short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector short a, int b, short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector unsigned short a, int b, vector unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector unsigned short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool short a, int b, short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool short a, int b, vector bool short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector pixel a, int b, short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector pixel a, int b, unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector pixel a, int b, vector pixel *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector int a, int b, vector int *c)
-{
- __builtin_altivec_stvx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector int a, int b, int *c)
-{
- __builtin_altivec_stvx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector unsigned int a, int b, vector unsigned int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector unsigned int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool int a, int b, int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector bool int a, int b, vector bool int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector float a, int b, vector float *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_st(vector float a, int b, float *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-/* vec_stvx */
-
-static void __ATTRS_o_ai
-vec_stvx(vector signed char a, int b, vector signed char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector signed char a, int b, signed char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector unsigned char a, int b, vector unsigned char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector unsigned char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool char a, int b, signed char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool char a, int b, vector bool char *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector short a, int b, vector short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector short a, int b, short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector unsigned short a, int b, vector unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector unsigned short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool short a, int b, short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool short a, int b, vector bool short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector pixel a, int b, short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector pixel a, int b, unsigned short *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector pixel a, int b, vector pixel *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector int a, int b, vector int *c)
-{
- __builtin_altivec_stvx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector int a, int b, int *c)
-{
- __builtin_altivec_stvx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector unsigned int a, int b, vector unsigned int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector unsigned int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool int a, int b, int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector bool int a, int b, vector bool int *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector float a, int b, vector float *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvx(vector float a, int b, float *c)
-{
- __builtin_altivec_stvx((vector int)a, b, c);
-}
-
-/* vec_ste */
-
-static void __ATTRS_o_ai
-vec_ste(vector signed char a, int b, signed char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector unsigned char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector bool char a, int b, signed char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector bool char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector short a, int b, short *c)
-{
- __builtin_altivec_stvehx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector unsigned short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector bool short a, int b, short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector bool short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector pixel a, int b, short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector pixel a, int b, unsigned short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector int a, int b, int *c)
-{
- __builtin_altivec_stvewx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector unsigned int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector bool int a, int b, int *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector bool int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_ste(vector float a, int b, float *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-/* vec_stvebx */
-
-static void __ATTRS_o_ai
-vec_stvebx(vector signed char a, int b, signed char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvebx(vector unsigned char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvebx(vector bool char a, int b, signed char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvebx(vector bool char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvebx((vector char)a, b, c);
-}
-
-/* vec_stvehx */
-
-static void __ATTRS_o_ai
-vec_stvehx(vector short a, int b, short *c)
-{
- __builtin_altivec_stvehx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvehx(vector unsigned short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvehx(vector bool short a, int b, short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvehx(vector bool short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvehx(vector pixel a, int b, short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvehx(vector pixel a, int b, unsigned short *c)
-{
- __builtin_altivec_stvehx((vector short)a, b, c);
-}
-
-/* vec_stvewx */
-
-static void __ATTRS_o_ai
-vec_stvewx(vector int a, int b, int *c)
-{
- __builtin_altivec_stvewx(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvewx(vector unsigned int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvewx(vector bool int a, int b, int *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvewx(vector bool int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvewx(vector float a, int b, float *c)
-{
- __builtin_altivec_stvewx((vector int)a, b, c);
-}
-
-/* vec_stl */
-
-static void __ATTRS_o_ai
-vec_stl(vector signed char a, int b, vector signed char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector signed char a, int b, signed char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector unsigned char a, int b, vector unsigned char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector unsigned char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool char a, int b, signed char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool char a, int b, vector bool char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector short a, int b, vector short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector short a, int b, short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector unsigned short a, int b, vector unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector unsigned short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool short a, int b, short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool short a, int b, vector bool short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector pixel a, int b, short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector pixel a, int b, unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector pixel a, int b, vector pixel *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector int a, int b, vector int *c)
-{
- __builtin_altivec_stvxl(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector int a, int b, int *c)
-{
- __builtin_altivec_stvxl(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector unsigned int a, int b, vector unsigned int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector unsigned int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool int a, int b, int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector bool int a, int b, vector bool int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector float a, int b, vector float *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stl(vector float a, int b, float *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-/* vec_stvxl */
-
-static void __ATTRS_o_ai
-vec_stvxl(vector signed char a, int b, vector signed char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector signed char a, int b, signed char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector unsigned char a, int b, vector unsigned char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector unsigned char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool char a, int b, signed char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool char a, int b, unsigned char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool char a, int b, vector bool char *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector short a, int b, vector short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector short a, int b, short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector unsigned short a, int b, vector unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector unsigned short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool short a, int b, short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool short a, int b, unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool short a, int b, vector bool short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector pixel a, int b, short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector pixel a, int b, unsigned short *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector pixel a, int b, vector pixel *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector int a, int b, vector int *c)
-{
- __builtin_altivec_stvxl(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector int a, int b, int *c)
-{
- __builtin_altivec_stvxl(a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector unsigned int a, int b, vector unsigned int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector unsigned int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool int a, int b, int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool int a, int b, unsigned int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector bool int a, int b, vector bool int *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector float a, int b, vector float *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvxl(vector float a, int b, float *c)
-{
- __builtin_altivec_stvxl((vector int)a, b, c);
-}
-
-/* vec_sub */
-
-static vector signed char __ATTRS_o_ai
-vec_sub(vector signed char a, vector signed char b)
-{
- return a - b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_sub(vector bool char a, vector signed char b)
-{
- return (vector signed char)a - b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_sub(vector signed char a, vector bool char b)
-{
- return a - (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sub(vector unsigned char a, vector unsigned char b)
-{
- return a - b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sub(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a - b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_sub(vector unsigned char a, vector bool char b)
-{
- return a - (vector unsigned char)b;
-}
-
-static vector short __ATTRS_o_ai
-vec_sub(vector short a, vector short b)
-{
- return a - b;
-}
-
-static vector short __ATTRS_o_ai
-vec_sub(vector bool short a, vector short b)
-{
- return (vector short)a - b;
-}
-
-static vector short __ATTRS_o_ai
-vec_sub(vector short a, vector bool short b)
-{
- return a - (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sub(vector unsigned short a, vector unsigned short b)
-{
- return a - b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sub(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a - b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_sub(vector unsigned short a, vector bool short b)
-{
- return a - (vector unsigned short)b;
-}
-
-static vector int __ATTRS_o_ai
-vec_sub(vector int a, vector int b)
-{
- return a - b;
-}
-
-static vector int __ATTRS_o_ai
-vec_sub(vector bool int a, vector int b)
-{
- return (vector int)a - b;
-}
-
-static vector int __ATTRS_o_ai
-vec_sub(vector int a, vector bool int b)
-{
- return a - (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sub(vector unsigned int a, vector unsigned int b)
-{
- return a - b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sub(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a - b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sub(vector unsigned int a, vector bool int b)
-{
- return a - (vector unsigned int)b;
-}
-
-static vector float __ATTRS_o_ai
-vec_sub(vector float a, vector float b)
-{
- return a - b;
-}
-
-/* vec_vsububm */
-
-#define __builtin_altivec_vsububm vec_vsububm
-
-static vector signed char __ATTRS_o_ai
-vec_vsububm(vector signed char a, vector signed char b)
-{
- return a - b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsububm(vector bool char a, vector signed char b)
-{
- return (vector signed char)a - b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsububm(vector signed char a, vector bool char b)
-{
- return a - (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsububm(vector unsigned char a, vector unsigned char b)
-{
- return a - b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsububm(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a - b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsububm(vector unsigned char a, vector bool char b)
-{
- return a - (vector unsigned char)b;
-}
-
-/* vec_vsubuhm */
-
-#define __builtin_altivec_vsubuhm vec_vsubuhm
-
-static vector short __ATTRS_o_ai
-vec_vsubuhm(vector short a, vector short b)
-{
- return a - b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vsubuhm(vector bool short a, vector short b)
-{
- return (vector short)a - b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vsubuhm(vector short a, vector bool short b)
-{
- return a - (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsubuhm(vector unsigned short a, vector unsigned short b)
-{
- return a - b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsubuhm(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a - b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsubuhm(vector unsigned short a, vector bool short b)
-{
- return a - (vector unsigned short)b;
-}
-
-/* vec_vsubuwm */
-
-#define __builtin_altivec_vsubuwm vec_vsubuwm
-
-static vector int __ATTRS_o_ai
-vec_vsubuwm(vector int a, vector int b)
-{
- return a - b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vsubuwm(vector bool int a, vector int b)
-{
- return (vector int)a - b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vsubuwm(vector int a, vector bool int b)
-{
- return a - (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsubuwm(vector unsigned int a, vector unsigned int b)
-{
- return a - b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsubuwm(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a - b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsubuwm(vector unsigned int a, vector bool int b)
-{
- return a - (vector unsigned int)b;
-}
-
-/* vec_vsubfp */
-
-#define __builtin_altivec_vsubfp vec_vsubfp
-
-static vector float __attribute__((__always_inline__))
-vec_vsubfp(vector float a, vector float b)
-{
- return a - b;
-}
-
-/* vec_subc */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_subc(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vsubcuw(a, b);
-}
-
-/* vec_vsubcuw */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vsubcuw(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vsubcuw(a, b);
-}
-
-/* vec_subs */
-
-static vector signed char __ATTRS_o_ai
-vec_subs(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vsubsbs(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_subs(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vsubsbs((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_subs(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vsubsbs(a, (vector signed char)b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_subs(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vsububs(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_subs(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vsububs((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_subs(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vsububs(a, (vector unsigned char)b);
-}
-
-static vector short __ATTRS_o_ai
-vec_subs(vector short a, vector short b)
-{
- return __builtin_altivec_vsubshs(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_subs(vector bool short a, vector short b)
-{
- return __builtin_altivec_vsubshs((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_subs(vector short a, vector bool short b)
-{
- return __builtin_altivec_vsubshs(a, (vector short)b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_subs(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vsubuhs(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_subs(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vsubuhs((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_subs(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vsubuhs(a, (vector unsigned short)b);
-}
-
-static vector int __ATTRS_o_ai
-vec_subs(vector int a, vector int b)
-{
- return __builtin_altivec_vsubsws(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_subs(vector bool int a, vector int b)
-{
- return __builtin_altivec_vsubsws((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_subs(vector int a, vector bool int b)
-{
- return __builtin_altivec_vsubsws(a, (vector int)b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_subs(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vsubuws(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_subs(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vsubuws((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_subs(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vsubuws(a, (vector unsigned int)b);
-}
-
-/* vec_vsubsbs */
-
-static vector signed char __ATTRS_o_ai
-vec_vsubsbs(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vsubsbs(a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsubsbs(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vsubsbs((vector signed char)a, b);
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vsubsbs(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vsubsbs(a, (vector signed char)b);
-}
-
-/* vec_vsububs */
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsububs(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vsububs(a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsububs(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vsububs((vector unsigned char)a, b);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vsububs(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vsububs(a, (vector unsigned char)b);
-}
-
-/* vec_vsubshs */
-
-static vector short __ATTRS_o_ai
-vec_vsubshs(vector short a, vector short b)
-{
- return __builtin_altivec_vsubshs(a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsubshs(vector bool short a, vector short b)
-{
- return __builtin_altivec_vsubshs((vector short)a, b);
-}
-
-static vector short __ATTRS_o_ai
-vec_vsubshs(vector short a, vector bool short b)
-{
- return __builtin_altivec_vsubshs(a, (vector short)b);
-}
-
-/* vec_vsubuhs */
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsubuhs(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vsubuhs(a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsubuhs(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vsubuhs((vector unsigned short)a, b);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vsubuhs(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vsubuhs(a, (vector unsigned short)b);
-}
-
-/* vec_vsubsws */
-
-static vector int __ATTRS_o_ai
-vec_vsubsws(vector int a, vector int b)
-{
- return __builtin_altivec_vsubsws(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsubsws(vector bool int a, vector int b)
-{
- return __builtin_altivec_vsubsws((vector int)a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_vsubsws(vector int a, vector bool int b)
-{
- return __builtin_altivec_vsubsws(a, (vector int)b);
-}
-
-/* vec_vsubuws */
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsubuws(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vsubuws(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsubuws(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vsubuws((vector unsigned int)a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vsubuws(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vsubuws(a, (vector unsigned int)b);
-}
-
-/* vec_sum4s */
-
-static vector int __ATTRS_o_ai
-vec_sum4s(vector signed char a, vector int b)
-{
- return __builtin_altivec_vsum4sbs(a, b);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_sum4s(vector unsigned char a, vector unsigned int b)
-{
- return __builtin_altivec_vsum4ubs(a, b);
-}
-
-static vector int __ATTRS_o_ai
-vec_sum4s(vector signed short a, vector int b)
-{
- return __builtin_altivec_vsum4shs(a, b);
-}
-
-/* vec_vsum4sbs */
-
-static vector int __attribute__((__always_inline__))
-vec_vsum4sbs(vector signed char a, vector int b)
-{
- return __builtin_altivec_vsum4sbs(a, b);
-}
-
-/* vec_vsum4ubs */
-
-static vector unsigned int __attribute__((__always_inline__))
-vec_vsum4ubs(vector unsigned char a, vector unsigned int b)
-{
- return __builtin_altivec_vsum4ubs(a, b);
-}
-
-/* vec_vsum4shs */
-
-static vector int __attribute__((__always_inline__))
-vec_vsum4shs(vector signed short a, vector int b)
-{
- return __builtin_altivec_vsum4shs(a, b);
-}
-
-/* vec_sum2s */
-
-static vector signed int __attribute__((__always_inline__))
-vec_sum2s(vector int a, vector int b)
-{
- return __builtin_altivec_vsum2sws(a, b);
-}
-
-/* vec_vsum2sws */
-
-static vector signed int __attribute__((__always_inline__))
-vec_vsum2sws(vector int a, vector int b)
-{
- return __builtin_altivec_vsum2sws(a, b);
-}
-
-/* vec_sums */
-
-static vector signed int __attribute__((__always_inline__))
-vec_sums(vector signed int a, vector signed int b)
-{
- return __builtin_altivec_vsumsws(a, b);
-}
-
-/* vec_vsumsws */
-
-static vector signed int __attribute__((__always_inline__))
-vec_vsumsws(vector signed int a, vector signed int b)
-{
- return __builtin_altivec_vsumsws(a, b);
-}
-
-/* vec_trunc */
-
-static vector float __attribute__((__always_inline__))
-vec_trunc(vector float a)
-{
- return __builtin_altivec_vrfiz(a);
-}
-
-/* vec_vrfiz */
-
-static vector float __attribute__((__always_inline__))
-vec_vrfiz(vector float a)
-{
- return __builtin_altivec_vrfiz(a);
-}
-
-/* vec_unpackh */
-
-static vector short __ATTRS_o_ai
-vec_unpackh(vector signed char a)
-{
- return __builtin_altivec_vupkhsb((vector char)a);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_unpackh(vector bool char a)
-{
- return (vector bool short)__builtin_altivec_vupkhsb((vector char)a);
-}
-
-static vector int __ATTRS_o_ai
-vec_unpackh(vector short a)
-{
- return __builtin_altivec_vupkhsh(a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_unpackh(vector bool short a)
-{
- return (vector bool int)__builtin_altivec_vupkhsh((vector short)a);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_unpackh(vector pixel a)
-{
- return (vector unsigned int)__builtin_altivec_vupkhsh((vector short)a);
-}
-
-/* vec_vupkhsb */
-
-static vector short __ATTRS_o_ai
-vec_vupkhsb(vector signed char a)
-{
- return __builtin_altivec_vupkhsb((vector char)a);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vupkhsb(vector bool char a)
-{
- return (vector bool short)__builtin_altivec_vupkhsb((vector char)a);
-}
-
-/* vec_vupkhsh */
-
-static vector int __ATTRS_o_ai
-vec_vupkhsh(vector short a)
-{
- return __builtin_altivec_vupkhsh(a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vupkhsh(vector bool short a)
-{
- return (vector bool int)__builtin_altivec_vupkhsh((vector short)a);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vupkhsh(vector pixel a)
-{
- return (vector unsigned int)__builtin_altivec_vupkhsh((vector short)a);
-}
-
-/* vec_unpackl */
-
-static vector short __ATTRS_o_ai
-vec_unpackl(vector signed char a)
-{
- return __builtin_altivec_vupklsb((vector char)a);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_unpackl(vector bool char a)
-{
- return (vector bool short)__builtin_altivec_vupklsb((vector char)a);
-}
-
-static vector int __ATTRS_o_ai
-vec_unpackl(vector short a)
-{
- return __builtin_altivec_vupklsh(a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_unpackl(vector bool short a)
-{
- return (vector bool int)__builtin_altivec_vupklsh((vector short)a);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_unpackl(vector pixel a)
-{
- return (vector unsigned int)__builtin_altivec_vupklsh((vector short)a);
-}
-
-/* vec_vupklsb */
-
-static vector short __ATTRS_o_ai
-vec_vupklsb(vector signed char a)
-{
- return __builtin_altivec_vupklsb((vector char)a);
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vupklsb(vector bool char a)
-{
- return (vector bool short)__builtin_altivec_vupklsb((vector char)a);
-}
-
-/* vec_vupklsh */
-
-static vector int __ATTRS_o_ai
-vec_vupklsh(vector short a)
-{
- return __builtin_altivec_vupklsh(a);
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vupklsh(vector bool short a)
-{
- return (vector bool int)__builtin_altivec_vupklsh((vector short)a);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vupklsh(vector pixel a)
-{
- return (vector unsigned int)__builtin_altivec_vupklsh((vector short)a);
-}
-
-/* vec_xor */
-
-#define __builtin_altivec_vxor vec_xor
-
-static vector signed char __ATTRS_o_ai
-vec_xor(vector signed char a, vector signed char b)
-{
- return a ^ b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_xor(vector bool char a, vector signed char b)
-{
- return (vector signed char)a ^ b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_xor(vector signed char a, vector bool char b)
-{
- return a ^ (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_xor(vector unsigned char a, vector unsigned char b)
-{
- return a ^ b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_xor(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a ^ b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_xor(vector unsigned char a, vector bool char b)
-{
- return a ^ (vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_xor(vector bool char a, vector bool char b)
-{
- return a ^ b;
-}
-
-static vector short __ATTRS_o_ai
-vec_xor(vector short a, vector short b)
-{
- return a ^ b;
-}
-
-static vector short __ATTRS_o_ai
-vec_xor(vector bool short a, vector short b)
-{
- return (vector short)a ^ b;
-}
-
-static vector short __ATTRS_o_ai
-vec_xor(vector short a, vector bool short b)
-{
- return a ^ (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_xor(vector unsigned short a, vector unsigned short b)
-{
- return a ^ b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_xor(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a ^ b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_xor(vector unsigned short a, vector bool short b)
-{
- return a ^ (vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_xor(vector bool short a, vector bool short b)
-{
- return a ^ b;
-}
-
-static vector int __ATTRS_o_ai
-vec_xor(vector int a, vector int b)
-{
- return a ^ b;
-}
-
-static vector int __ATTRS_o_ai
-vec_xor(vector bool int a, vector int b)
-{
- return (vector int)a ^ b;
-}
-
-static vector int __ATTRS_o_ai
-vec_xor(vector int a, vector bool int b)
-{
- return a ^ (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_xor(vector unsigned int a, vector unsigned int b)
-{
- return a ^ b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_xor(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a ^ b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_xor(vector unsigned int a, vector bool int b)
-{
- return a ^ (vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_xor(vector bool int a, vector bool int b)
-{
- return a ^ b;
-}
-
-static vector float __ATTRS_o_ai
-vec_xor(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a ^ (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_xor(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a ^ (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_xor(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a ^ (vector unsigned int)b;
- return (vector float)res;
-}
-
-/* vec_vxor */
-
-static vector signed char __ATTRS_o_ai
-vec_vxor(vector signed char a, vector signed char b)
-{
- return a ^ b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vxor(vector bool char a, vector signed char b)
-{
- return (vector signed char)a ^ b;
-}
-
-static vector signed char __ATTRS_o_ai
-vec_vxor(vector signed char a, vector bool char b)
-{
- return a ^ (vector signed char)b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vxor(vector unsigned char a, vector unsigned char b)
-{
- return a ^ b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vxor(vector bool char a, vector unsigned char b)
-{
- return (vector unsigned char)a ^ b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_vxor(vector unsigned char a, vector bool char b)
-{
- return a ^ (vector unsigned char)b;
-}
-
-static vector bool char __ATTRS_o_ai
-vec_vxor(vector bool char a, vector bool char b)
-{
- return a ^ b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vxor(vector short a, vector short b)
-{
- return a ^ b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vxor(vector bool short a, vector short b)
-{
- return (vector short)a ^ b;
-}
-
-static vector short __ATTRS_o_ai
-vec_vxor(vector short a, vector bool short b)
-{
- return a ^ (vector short)b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vxor(vector unsigned short a, vector unsigned short b)
-{
- return a ^ b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vxor(vector bool short a, vector unsigned short b)
-{
- return (vector unsigned short)a ^ b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_vxor(vector unsigned short a, vector bool short b)
-{
- return a ^ (vector unsigned short)b;
-}
-
-static vector bool short __ATTRS_o_ai
-vec_vxor(vector bool short a, vector bool short b)
-{
- return a ^ b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vxor(vector int a, vector int b)
-{
- return a ^ b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vxor(vector bool int a, vector int b)
-{
- return (vector int)a ^ b;
-}
-
-static vector int __ATTRS_o_ai
-vec_vxor(vector int a, vector bool int b)
-{
- return a ^ (vector int)b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vxor(vector unsigned int a, vector unsigned int b)
-{
- return a ^ b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vxor(vector bool int a, vector unsigned int b)
-{
- return (vector unsigned int)a ^ b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_vxor(vector unsigned int a, vector bool int b)
-{
- return a ^ (vector unsigned int)b;
-}
-
-static vector bool int __ATTRS_o_ai
-vec_vxor(vector bool int a, vector bool int b)
-{
- return a ^ b;
-}
-
-static vector float __ATTRS_o_ai
-vec_vxor(vector float a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a ^ (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vxor(vector bool int a, vector float b)
-{
- vector unsigned int res = (vector unsigned int)a ^ (vector unsigned int)b;
- return (vector float)res;
-}
-
-static vector float __ATTRS_o_ai
-vec_vxor(vector float a, vector bool int b)
-{
- vector unsigned int res = (vector unsigned int)a ^ (vector unsigned int)b;
- return (vector float)res;
-}
-
-/* ------------------------ extensions for CBEA ----------------------------- */
-
-/* vec_extract */
-
-static signed char __ATTRS_o_ai
-vec_extract(vector signed char a, int b)
-{
- return a[b];
-}
-
-static unsigned char __ATTRS_o_ai
-vec_extract(vector unsigned char a, int b)
-{
- return a[b];
-}
-
-static short __ATTRS_o_ai
-vec_extract(vector short a, int b)
-{
- return a[b];
-}
-
-static unsigned short __ATTRS_o_ai
-vec_extract(vector unsigned short a, int b)
-{
- return a[b];
-}
-
-static int __ATTRS_o_ai
-vec_extract(vector int a, int b)
-{
- return a[b];
-}
-
-static unsigned int __ATTRS_o_ai
-vec_extract(vector unsigned int a, int b)
-{
- return a[b];
-}
-
-static float __ATTRS_o_ai
-vec_extract(vector float a, int b)
-{
- return a[b];
-}
-
-/* vec_insert */
-
-static vector signed char __ATTRS_o_ai
-vec_insert(signed char a, vector signed char b, int c)
-{
- b[c] = a;
- return b;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_insert(unsigned char a, vector unsigned char b, int c)
-{
- b[c] = a;
- return b;
-}
-
-static vector short __ATTRS_o_ai
-vec_insert(short a, vector short b, int c)
-{
- b[c] = a;
- return b;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_insert(unsigned short a, vector unsigned short b, int c)
-{
- b[c] = a;
- return b;
-}
-
-static vector int __ATTRS_o_ai
-vec_insert(int a, vector int b, int c)
-{
- b[c] = a;
- return b;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_insert(unsigned int a, vector unsigned int b, int c)
-{
- b[c] = a;
- return b;
-}
-
-static vector float __ATTRS_o_ai
-vec_insert(float a, vector float b, int c)
-{
- b[c] = a;
- return b;
-}
-
-/* vec_lvlx */
-
-static vector signed char __ATTRS_o_ai
-vec_lvlx(int a, signed char *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector signed char)(0),
- vec_lvsl(a, b));
-}
-
-static vector signed char __ATTRS_o_ai
-vec_lvlx(int a, vector signed char *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector signed char)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvlx(int a, unsigned char *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector unsigned char)(0),
- vec_lvsl(a, b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvlx(int a, vector unsigned char *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector unsigned char)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_lvlx(int a, vector bool char *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector bool char)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvlx(int a, short *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector short)(0),
- vec_lvsl(a, b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvlx(int a, vector short *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector short)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvlx(int a, unsigned short *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector unsigned short)(0),
- vec_lvsl(a, b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvlx(int a, vector unsigned short *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector unsigned short)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_lvlx(int a, vector bool short *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector bool short)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_lvlx(int a, vector pixel *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector pixel)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvlx(int a, int *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector int)(0),
- vec_lvsl(a, b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvlx(int a, vector int *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector int)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvlx(int a, unsigned int *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector unsigned int)(0),
- vec_lvsl(a, b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvlx(int a, vector unsigned int *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector unsigned int)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_lvlx(int a, vector bool int *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector bool int)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvlx(int a, float *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector float)(0),
- vec_lvsl(a, b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvlx(int a, vector float *b)
-{
- return vec_perm(vec_ld(a, b),
- (vector float)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-/* vec_lvlxl */
-
-static vector signed char __ATTRS_o_ai
-vec_lvlxl(int a, signed char *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector signed char)(0),
- vec_lvsl(a, b));
-}
-
-static vector signed char __ATTRS_o_ai
-vec_lvlxl(int a, vector signed char *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector signed char)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvlxl(int a, unsigned char *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector unsigned char)(0),
- vec_lvsl(a, b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvlxl(int a, vector unsigned char *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector unsigned char)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_lvlxl(int a, vector bool char *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector bool char)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvlxl(int a, short *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector short)(0),
- vec_lvsl(a, b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvlxl(int a, vector short *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector short)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvlxl(int a, unsigned short *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector unsigned short)(0),
- vec_lvsl(a, b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvlxl(int a, vector unsigned short *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector unsigned short)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_lvlxl(int a, vector bool short *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector bool short)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_lvlxl(int a, vector pixel *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector pixel)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvlxl(int a, int *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector int)(0),
- vec_lvsl(a, b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvlxl(int a, vector int *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector int)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvlxl(int a, unsigned int *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector unsigned int)(0),
- vec_lvsl(a, b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvlxl(int a, vector unsigned int *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector unsigned int)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_lvlxl(int a, vector bool int *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector bool int)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvlxl(int a, float *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector float)(0),
- vec_lvsl(a, b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvlxl(int a, vector float *b)
-{
- return vec_perm(vec_ldl(a, b),
- (vector float)(0),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-/* vec_lvrx */
-
-static vector signed char __ATTRS_o_ai
-vec_lvrx(int a, signed char *b)
-{
- return vec_perm((vector signed char)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector signed char __ATTRS_o_ai
-vec_lvrx(int a, vector signed char *b)
-{
- return vec_perm((vector signed char)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvrx(int a, unsigned char *b)
-{
- return vec_perm((vector unsigned char)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvrx(int a, vector unsigned char *b)
-{
- return vec_perm((vector unsigned char)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_lvrx(int a, vector bool char *b)
-{
- return vec_perm((vector bool char)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvrx(int a, short *b)
-{
- return vec_perm((vector short)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvrx(int a, vector short *b)
-{
- return vec_perm((vector short)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvrx(int a, unsigned short *b)
-{
- return vec_perm((vector unsigned short)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvrx(int a, vector unsigned short *b)
-{
- return vec_perm((vector unsigned short)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_lvrx(int a, vector bool short *b)
-{
- return vec_perm((vector bool short)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_lvrx(int a, vector pixel *b)
-{
- return vec_perm((vector pixel)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvrx(int a, int *b)
-{
- return vec_perm((vector int)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvrx(int a, vector int *b)
-{
- return vec_perm((vector int)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvrx(int a, unsigned int *b)
-{
- return vec_perm((vector unsigned int)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvrx(int a, vector unsigned int *b)
-{
- return vec_perm((vector unsigned int)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_lvrx(int a, vector bool int *b)
-{
- return vec_perm((vector bool int)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvrx(int a, float *b)
-{
- return vec_perm((vector float)(0),
- vec_ld(a, b),
- vec_lvsl(a, b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvrx(int a, vector float *b)
-{
- return vec_perm((vector float)(0),
- vec_ld(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-/* vec_lvrxl */
-
-static vector signed char __ATTRS_o_ai
-vec_lvrxl(int a, signed char *b)
-{
- return vec_perm((vector signed char)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector signed char __ATTRS_o_ai
-vec_lvrxl(int a, vector signed char *b)
-{
- return vec_perm((vector signed char)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvrxl(int a, unsigned char *b)
-{
- return vec_perm((vector unsigned char)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_lvrxl(int a, vector unsigned char *b)
-{
- return vec_perm((vector unsigned char)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool char __ATTRS_o_ai
-vec_lvrxl(int a, vector bool char *b)
-{
- return vec_perm((vector bool char)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvrxl(int a, short *b)
-{
- return vec_perm((vector short)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector short __ATTRS_o_ai
-vec_lvrxl(int a, vector short *b)
-{
- return vec_perm((vector short)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvrxl(int a, unsigned short *b)
-{
- return vec_perm((vector unsigned short)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_lvrxl(int a, vector unsigned short *b)
-{
- return vec_perm((vector unsigned short)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool short __ATTRS_o_ai
-vec_lvrxl(int a, vector bool short *b)
-{
- return vec_perm((vector bool short)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector pixel __ATTRS_o_ai
-vec_lvrxl(int a, vector pixel *b)
-{
- return vec_perm((vector pixel)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvrxl(int a, int *b)
-{
- return vec_perm((vector int)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector int __ATTRS_o_ai
-vec_lvrxl(int a, vector int *b)
-{
- return vec_perm((vector int)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvrxl(int a, unsigned int *b)
-{
- return vec_perm((vector unsigned int)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_lvrxl(int a, vector unsigned int *b)
-{
- return vec_perm((vector unsigned int)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector bool int __ATTRS_o_ai
-vec_lvrxl(int a, vector bool int *b)
-{
- return vec_perm((vector bool int)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvrxl(int a, float *b)
-{
- return vec_perm((vector float)(0),
- vec_ldl(a, b),
- vec_lvsl(a, b));
-}
-
-static vector float __ATTRS_o_ai
-vec_lvrxl(int a, vector float *b)
-{
- return vec_perm((vector float)(0),
- vec_ldl(a, b),
- vec_lvsl(a, (unsigned char *)b));
-}
-
-/* vec_stvlx */
-
-static void __ATTRS_o_ai
-vec_stvlx(vector signed char a, int b, signed char *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector signed char a, int b, vector signed char *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector unsigned char a, int b, unsigned char *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector unsigned char a, int b, vector unsigned char *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector bool char a, int b, vector bool char *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector short a, int b, short *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector short a, int b, vector short *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector unsigned short a, int b, unsigned short *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector unsigned short a, int b, vector unsigned short *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector bool short a, int b, vector bool short *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector pixel a, int b, vector pixel *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector int a, int b, int *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector int a, int b, vector int *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector unsigned int a, int b, unsigned int *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector unsigned int a, int b, vector unsigned int *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector bool int a, int b, vector bool int *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlx(vector float a, int b, vector float *c)
-{
- return vec_st(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-/* vec_stvlxl */
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector signed char a, int b, signed char *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector signed char a, int b, vector signed char *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector unsigned char a, int b, unsigned char *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector unsigned char a, int b, vector unsigned char *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector bool char a, int b, vector bool char *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector short a, int b, short *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector short a, int b, vector short *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector unsigned short a, int b, unsigned short *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector unsigned short a, int b, vector unsigned short *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector bool short a, int b, vector bool short *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector pixel a, int b, vector pixel *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector int a, int b, int *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector int a, int b, vector int *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector unsigned int a, int b, unsigned int *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector unsigned int a, int b, vector unsigned int *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector bool int a, int b, vector bool int *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvlxl(vector float a, int b, vector float *c)
-{
- return vec_stl(vec_perm(vec_lvrx(b, c),
- a,
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-/* vec_stvrx */
-
-static void __ATTRS_o_ai
-vec_stvrx(vector signed char a, int b, signed char *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector signed char a, int b, vector signed char *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector unsigned char a, int b, unsigned char *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector unsigned char a, int b, vector unsigned char *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector bool char a, int b, vector bool char *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector short a, int b, short *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector short a, int b, vector short *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector unsigned short a, int b, unsigned short *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector unsigned short a, int b, vector unsigned short *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector bool short a, int b, vector bool short *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector pixel a, int b, vector pixel *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector int a, int b, int *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector int a, int b, vector int *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector unsigned int a, int b, unsigned int *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector unsigned int a, int b, vector unsigned int *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector bool int a, int b, vector bool int *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrx(vector float a, int b, vector float *c)
-{
- return vec_st(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-/* vec_stvrxl */
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector signed char a, int b, signed char *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector signed char a, int b, vector signed char *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector unsigned char a, int b, unsigned char *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector unsigned char a, int b, vector unsigned char *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector bool char a, int b, vector bool char *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector short a, int b, short *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector short a, int b, vector short *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector unsigned short a, int b, unsigned short *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector unsigned short a, int b, vector unsigned short *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector bool short a, int b, vector bool short *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector pixel a, int b, vector pixel *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector int a, int b, int *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector int a, int b, vector int *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector unsigned int a, int b, unsigned int *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector unsigned int a, int b, vector unsigned int *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector bool int a, int b, vector bool int *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-static void __ATTRS_o_ai
-vec_stvrxl(vector float a, int b, vector float *c)
-{
- return vec_stl(vec_perm(a,
- vec_lvlx(b, c),
- vec_lvsr(b, (unsigned char *)c)),
- b, c);
-}
-
-/* vec_promote */
-
-static vector signed char __ATTRS_o_ai
-vec_promote(signed char a, int b)
-{
- vector signed char res = (vector signed char)(0);
- res[b] = a;
- return res;
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_promote(unsigned char a, int b)
-{
- vector unsigned char res = (vector unsigned char)(0);
- res[b] = a;
- return res;
-}
-
-static vector short __ATTRS_o_ai
-vec_promote(short a, int b)
-{
- vector short res = (vector short)(0);
- res[b] = a;
- return res;
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_promote(unsigned short a, int b)
-{
- vector unsigned short res = (vector unsigned short)(0);
- res[b] = a;
- return res;
-}
-
-static vector int __ATTRS_o_ai
-vec_promote(int a, int b)
-{
- vector int res = (vector int)(0);
- res[b] = a;
- return res;
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_promote(unsigned int a, int b)
-{
- vector unsigned int res = (vector unsigned int)(0);
- res[b] = a;
- return res;
-}
-
-static vector float __ATTRS_o_ai
-vec_promote(float a, int b)
-{
- vector float res = (vector float)(0);
- res[b] = a;
- return res;
-}
-
-/* vec_splats */
-
-static vector signed char __ATTRS_o_ai
-vec_splats(signed char a)
-{
- return (vector signed char)(a);
-}
-
-static vector unsigned char __ATTRS_o_ai
-vec_splats(unsigned char a)
-{
- return (vector unsigned char)(a);
-}
-
-static vector short __ATTRS_o_ai
-vec_splats(short a)
-{
- return (vector short)(a);
-}
-
-static vector unsigned short __ATTRS_o_ai
-vec_splats(unsigned short a)
-{
- return (vector unsigned short)(a);
-}
-
-static vector int __ATTRS_o_ai
-vec_splats(int a)
-{
- return (vector int)(a);
-}
-
-static vector unsigned int __ATTRS_o_ai
-vec_splats(unsigned int a)
-{
- return (vector unsigned int)(a);
-}
-
-static vector float __ATTRS_o_ai
-vec_splats(float a)
-{
- return (vector float)(a);
-}
-
-/* ----------------------------- predicates --------------------------------- */
-
-/* vec_all_eq */
-
-static int __ATTRS_o_ai
-vec_all_eq(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_LT, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector unsigned short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector unsigned short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool short a, vector short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector pixel a, vector pixel b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_LT, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_eq(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_LT, a, b);
-}
-
-/* vec_all_ge */
-
-static int __ATTRS_o_ai
-vec_all_ge(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, (vector signed char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ, b, (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, (vector short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, b, (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, (vector int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, b, (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_ge(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_LT, a, b);
-}
-
-/* vec_all_gt */
-
-static int __ATTRS_o_ai
-vec_all_gt(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT, a, (vector signed char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT, a, (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT, a, (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT, a, (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_gt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_LT, a, b);
-}
-
-/* vec_all_in */
-
-static int __attribute__((__always_inline__))
-vec_all_in(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpbfp_p(__CR6_EQ, a, b);
-}
-
-/* vec_all_le */
-
-static int __ATTRS_o_ai
-vec_all_le(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ, a, (vector signed char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ, a, (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ, (vector unsigned char)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, a, (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ, (vector unsigned short)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, a, (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ, (vector unsigned int)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_le(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_LT, b, a);
-}
-
-/* vec_all_lt */
-
-static int __ATTRS_o_ai
-vec_all_lt(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT, (vector signed char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT, (vector unsigned char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT, b, (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT, (vector short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT, (vector unsigned short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT, b, (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT, (vector int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT, (vector unsigned int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT, b, (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_all_lt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_LT, b, a);
-}
-
-/* vec_all_nan */
-
-static int __attribute__((__always_inline__))
-vec_all_nan(vector float a)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_EQ, a, a);
-}
-
-/* vec_all_ne */
-
-static int __ATTRS_o_ai
-vec_all_ne(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpequb_p(__CR6_EQ, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector unsigned short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector unsigned short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool short a, vector short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector pixel a, vector pixel b)
-{
- return
- __builtin_altivec_vcmpequh_p(__CR6_EQ, (vector short)a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_all_ne(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_EQ, a, b);
-}
-
-/* vec_all_nge */
-
-static int __attribute__((__always_inline__))
-vec_all_nge(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_EQ, a, b);
-}
-
-/* vec_all_ngt */
-
-static int __attribute__((__always_inline__))
-vec_all_ngt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_EQ, a, b);
-}
-
-/* vec_all_nle */
-
-static int __attribute__((__always_inline__))
-vec_all_nle(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_EQ, b, a);
-}
-
-/* vec_all_nlt */
-
-static int __attribute__((__always_inline__))
-vec_all_nlt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_EQ, b, a);
-}
-
-/* vec_all_numeric */
-
-static int __attribute__((__always_inline__))
-vec_all_numeric(vector float a)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_LT, a, a);
-}
-
-/* vec_any_eq */
-
-static int __ATTRS_o_ai
-vec_any_eq(vector signed char a, vector signed char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector signed char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector unsigned char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector unsigned char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool char a, vector signed char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_EQ_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector pixel a, vector pixel b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_EQ_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector unsigned int a, vector unsigned int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector unsigned int a, vector bool int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool int a, vector int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool int a, vector unsigned int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector bool int a, vector bool int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_EQ_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_eq(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_EQ_REV, a, b);
-}
-
-/* vec_any_ge */
-
-static int __ATTRS_o_ai
-vec_any_ge(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, (vector signed char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector unsigned char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, b, (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, (vector short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector unsigned short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, b, (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, (vector int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, b, (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_ge(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_EQ_REV, a, b);
-}
-
-/* vec_any_gt */
-
-static int __ATTRS_o_ai
-vec_any_gt(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, a, (vector signed char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector unsigned char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, a, (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector unsigned short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, a, (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, a, (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_gt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_EQ_REV, a, b);
-}
-
-/* vec_any_le */
-
-static int __ATTRS_o_ai
-vec_any_le(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_LT_REV, a, (vector signed char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector unsigned char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, a, (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpgtub_p(__CR6_LT_REV, (vector unsigned char)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_LT_REV,
- (vector unsigned char)a,
- (vector unsigned char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_LT_REV, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector unsigned short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, a, (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV, (vector unsigned short)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_LT_REV,
- (vector unsigned short)a,
- (vector unsigned short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_LT_REV, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, a, (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV, (vector unsigned int)a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_LT_REV,
- (vector unsigned int)a,
- (vector unsigned int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_le(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_EQ_REV, b, a);
-}
-
-/* vec_any_lt */
-
-static int __ATTRS_o_ai
-vec_any_lt(vector signed char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector signed char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtsb_p(__CR6_EQ_REV, (vector signed char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector unsigned char a, vector unsigned char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector unsigned char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, (vector unsigned char)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool char a, vector signed char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV, b, (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool char a, vector bool char b)
-{
- return __builtin_altivec_vcmpgtub_p(__CR6_EQ_REV,
- (vector unsigned char)b,
- (vector unsigned char)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtsh_p(__CR6_EQ_REV, (vector short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector unsigned short a, vector bool short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, (vector unsigned short)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool short a, vector unsigned short b)
-{
- return
- __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV, b, (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpgtuh_p(__CR6_EQ_REV,
- (vector unsigned short)b,
- (vector unsigned short)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtsw_p(__CR6_EQ_REV, (vector int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector unsigned int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector unsigned int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, (vector unsigned int)b, a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool int a, vector int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool int a, vector unsigned int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV, b, (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector bool int a, vector bool int b)
-{
- return __builtin_altivec_vcmpgtuw_p(__CR6_EQ_REV,
- (vector unsigned int)b,
- (vector unsigned int)a);
-}
-
-static int __ATTRS_o_ai
-vec_any_lt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_EQ_REV, b, a);
-}
-
-/* vec_any_nan */
-
-static int __attribute__((__always_inline__))
-vec_any_nan(vector float a)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_LT_REV, a, a);
-}
-
-/* vec_any_ne */
-
-static int __ATTRS_o_ai
-vec_any_ne(vector signed char a, vector signed char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector signed char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector unsigned char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector unsigned char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool char a, vector signed char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool char a, vector unsigned char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool char a, vector bool char b)
-{
- return
- __builtin_altivec_vcmpequb_p(__CR6_LT_REV, (vector char)a, (vector char)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector short a, vector short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV, a, (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector unsigned short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector unsigned short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool short a, vector short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool short a, vector unsigned short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool short a, vector bool short b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector pixel a, vector pixel b)
-{
- return __builtin_altivec_vcmpequh_p(__CR6_LT_REV,
- (vector short)a,
- (vector short)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector int a, vector int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT_REV, a, b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector int a, vector bool int b)
-{
- return __builtin_altivec_vcmpequw_p(__CR6_LT_REV, a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector unsigned int a, vector unsigned int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector unsigned int a, vector bool int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool int a, vector int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool int a, vector unsigned int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector bool int a, vector bool int b)
-{
- return
- __builtin_altivec_vcmpequw_p(__CR6_LT_REV, (vector int)a, (vector int)b);
-}
-
-static int __ATTRS_o_ai
-vec_any_ne(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_LT_REV, a, b);
-}
-
-/* vec_any_nge */
-
-static int __attribute__((__always_inline__))
-vec_any_nge(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_LT_REV, a, b);
-}
-
-/* vec_any_ngt */
-
-static int __attribute__((__always_inline__))
-vec_any_ngt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_LT_REV, a, b);
-}
-
-/* vec_any_nle */
-
-static int __attribute__((__always_inline__))
-vec_any_nle(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgefp_p(__CR6_LT_REV, b, a);
-}
-
-/* vec_any_nlt */
-
-static int __attribute__((__always_inline__))
-vec_any_nlt(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpgtfp_p(__CR6_LT_REV, b, a);
-}
-
-/* vec_any_numeric */
-
-static int __attribute__((__always_inline__))
-vec_any_numeric(vector float a)
-{
- return __builtin_altivec_vcmpeqfp_p(__CR6_EQ_REV, a, a);
-}
-
-/* vec_any_out */
-
-static int __attribute__((__always_inline__))
-vec_any_out(vector float a, vector float b)
-{
- return __builtin_altivec_vcmpbfp_p(__CR6_EQ_REV, a, b);
-}
-
-#undef __ATTRS_o_ai
-
-#endif /* __ALTIVEC_H */
diff --git a/13/renderscript/clang-include/avxintrin.h b/13/renderscript/clang-include/avxintrin.h
deleted file mode 100644
index 884d31c..0000000
--- a/13/renderscript/clang-include/avxintrin.h
+++ /dev/null
@@ -1,1156 +0,0 @@
-/*===---- avxintrin.h - AVX intrinsics -------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __IMMINTRIN_H
-#error "Never use <avxintrin.h> directly; include <immintrin.h> instead."
-#endif
-
-typedef double __v4df __attribute__ ((__vector_size__ (32)));
-typedef float __v8sf __attribute__ ((__vector_size__ (32)));
-typedef long long __v4di __attribute__ ((__vector_size__ (32)));
-typedef int __v8si __attribute__ ((__vector_size__ (32)));
-typedef short __v16hi __attribute__ ((__vector_size__ (32)));
-typedef char __v32qi __attribute__ ((__vector_size__ (32)));
-
-typedef float __m256 __attribute__ ((__vector_size__ (32)));
-typedef double __m256d __attribute__((__vector_size__(32)));
-typedef long long __m256i __attribute__((__vector_size__(32)));
-
-/* Arithmetic */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_add_pd(__m256d a, __m256d b)
-{
- return a+b;
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_add_ps(__m256 a, __m256 b)
-{
- return a+b;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_sub_pd(__m256d a, __m256d b)
-{
- return a-b;
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_sub_ps(__m256 a, __m256 b)
-{
- return a-b;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_addsub_pd(__m256d a, __m256d b)
-{
- return (__m256d)__builtin_ia32_addsubpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_addsub_ps(__m256 a, __m256 b)
-{
- return (__m256)__builtin_ia32_addsubps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_div_pd(__m256d a, __m256d b)
-{
- return a / b;
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_div_ps(__m256 a, __m256 b)
-{
- return a / b;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_max_pd(__m256d a, __m256d b)
-{
- return (__m256d)__builtin_ia32_maxpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_max_ps(__m256 a, __m256 b)
-{
- return (__m256)__builtin_ia32_maxps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_min_pd(__m256d a, __m256d b)
-{
- return (__m256d)__builtin_ia32_minpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_min_ps(__m256 a, __m256 b)
-{
- return (__m256)__builtin_ia32_minps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_mul_pd(__m256d a, __m256d b)
-{
- return a * b;
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_mul_ps(__m256 a, __m256 b)
-{
- return a * b;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_sqrt_pd(__m256d a)
-{
- return (__m256d)__builtin_ia32_sqrtpd256((__v4df)a);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_sqrt_ps(__m256 a)
-{
- return (__m256)__builtin_ia32_sqrtps256((__v8sf)a);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_rsqrt_ps(__m256 a)
-{
- return (__m256)__builtin_ia32_rsqrtps256((__v8sf)a);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_rcp_ps(__m256 a)
-{
- return (__m256)__builtin_ia32_rcpps256((__v8sf)a);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_round_pd(__m256d v, const int m)
-{
- return (__m256d)__builtin_ia32_roundpd256((__v4df)v, m);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_round_ps(__m256 v, const int m)
-{
- return (__m256)__builtin_ia32_roundps256((__v8sf)v, m);
-}
-
-#define _mm256_ceil_pd(V) _mm256_round_pd((V), _MM_FROUND_CEIL)
-#define _mm256_floor_pd(V) _mm256_round_pd((V), _MM_FROUND_FLOOR)
-#define _mm256_ceil_ps(V) _mm256_round_ps((V), _MM_FROUND_CEIL)
-#define _mm256_floor_ps(V) _mm256_round_ps((V), _MM_FROUND_FLOOR)
-
-/* Logical */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_and_pd(__m256d a, __m256d b)
-{
- return (__m256d)((__v4di)a & (__v4di)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_and_ps(__m256 a, __m256 b)
-{
- return (__m256)((__v8si)a & (__v8si)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_andnot_pd(__m256d a, __m256d b)
-{
- return (__m256d)(~(__v4di)a & (__v4di)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_andnot_ps(__m256 a, __m256 b)
-{
- return (__m256)(~(__v8si)a & (__v8si)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_or_pd(__m256d a, __m256d b)
-{
- return (__m256d)((__v4di)a | (__v4di)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_or_ps(__m256 a, __m256 b)
-{
- return (__m256)((__v8si)a | (__v8si)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_xor_pd(__m256d a, __m256d b)
-{
- return (__m256d)((__v4di)a ^ (__v4di)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_xor_ps(__m256 a, __m256 b)
-{
- return (__m256)((__v8si)a ^ (__v8si)b);
-}
-
-/* Horizontal arithmetic */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_hadd_pd(__m256d a, __m256d b)
-{
- return (__m256d)__builtin_ia32_haddpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_hadd_ps(__m256 a, __m256 b)
-{
- return (__m256)__builtin_ia32_haddps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_hsub_pd(__m256d a, __m256d b)
-{
- return (__m256d)__builtin_ia32_hsubpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_hsub_ps(__m256 a, __m256 b)
-{
- return (__m256)__builtin_ia32_hsubps256((__v8sf)a, (__v8sf)b);
-}
-
-/* Vector permutations */
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_permutevar_pd(__m128d a, __m128i c)
-{
- return (__m128d)__builtin_ia32_vpermilvarpd((__v2df)a, (__v2di)c);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_permutevar_pd(__m256d a, __m256i c)
-{
- return (__m256d)__builtin_ia32_vpermilvarpd256((__v4df)a, (__v4di)c);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_permutevar_ps(__m128 a, __m128i c)
-{
- return (__m128)__builtin_ia32_vpermilvarps((__v4sf)a, (__v4si)c);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_permutevar_ps(__m256 a, __m256i c)
-{
- return (__m256)__builtin_ia32_vpermilvarps256((__v8sf)a,
- (__v8si)c);
-}
-
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_permute_pd(__m128d a, const int c)
-{
- return (__m128d)__builtin_ia32_vpermilpd((__v2df)a, c);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_permute_pd(__m256d a, const int c)
-{
- return (__m256d)__builtin_ia32_vpermilpd256((__v4df)a, c);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_permute_ps(__m128 a, const int c)
-{
- return (__m128)__builtin_ia32_vpermilps((__v4sf)a, c);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_permute_ps(__m256 a, const int c)
-{
- return (__m256)__builtin_ia32_vpermilps256((__v8sf)a, c);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_permute2f128_pd(__m256d a, __m256d b, const int c)
-{
- return (__m256d)__builtin_ia32_vperm2f128_pd256((__v4df)a, (__v4df)b, c);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_permute2f128_ps(__m256 a, __m256 b, const int c)
-{
- return (__m256)__builtin_ia32_vperm2f128_ps256((__v8sf)a, (__v8sf)b, c);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_permute2f128_si256(__m256i a, __m256i b, const int c)
-{
- return (__m256i)__builtin_ia32_vperm2f128_si256((__v8si)a, (__v8si)b, c);
-}
-
-/* Vector Blend */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_blend_pd(__m256d a, __m256d b, const int c)
-{
- return (__m256d)__builtin_ia32_blendpd256((__v4df)a, (__v4df)b, c);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_blend_ps(__m256 a, __m256 b, const int c)
-{
- return (__m256)__builtin_ia32_blendps256((__v8sf)a, (__v8sf)b, c);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_blendv_pd(__m256d a, __m256d b, __m256d c)
-{
- return (__m256d)__builtin_ia32_blendvpd256((__v4df)a, (__v4df)b, (__v4df)c);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_blendv_ps(__m256 a, __m256 b, __m256 c)
-{
- return (__m256)__builtin_ia32_blendvps256((__v8sf)a, (__v8sf)b, (__v8sf)c);
-}
-
-/* Vector Dot Product */
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_dp_ps(__m256 a, __m256 b, const int c)
-{
- return (__m256)__builtin_ia32_dpps256((__v8sf)a, (__v8sf)b, c);
-}
-
-/* Vector shuffle */
-#define _mm256_shuffle_ps(a, b, mask) \
- (__builtin_shufflevector((__v8sf)(a), (__v8sf)(b), \
- (mask) & 0x3, ((mask) & 0xc) >> 2, \
- (((mask) & 0x30) >> 4) + 8, (((mask) & 0xc0) >> 6) + 8, \
- (mask) & 0x3 + 4, (((mask) & 0xc) >> 2) + 4, \
- (((mask) & 0x30) >> 4) + 12, (((mask) & 0xc0) >> 6) + 12))
-
-#define _mm256_shuffle_pd(a, b, mask) \
- (__builtin_shufflevector((__v4df)(a), (__v4df)(b), \
- (mask) & 0x1, \
- (((mask) & 0x2) >> 1) + 4, \
- (((mask) & 0x4) >> 2) + 2, \
- (((mask) & 0x8) >> 3) + 6))
-
-/* Compare */
-#define _CMP_EQ_OQ 0x00 /* Equal (ordered, non-signaling) */
-#define _CMP_LT_OS 0x01 /* Less-than (ordered, signaling) */
-#define _CMP_LE_OS 0x02 /* Less-than-or-equal (ordered, signaling) */
-#define _CMP_UNORD_Q 0x03 /* Unordered (non-signaling) */
-#define _CMP_NEQ_UQ 0x04 /* Not-equal (unordered, non-signaling) */
-#define _CMP_NLT_US 0x05 /* Not-less-than (unordered, signaling) */
-#define _CMP_NLE_US 0x06 /* Not-less-than-or-equal (unordered, signaling) */
-#define _CMP_ORD_Q 0x07 /* Ordered (nonsignaling) */
-#define _CMP_EQ_UQ 0x08 /* Equal (unordered, non-signaling) */
-#define _CMP_NGE_US 0x09 /* Not-greater-than-or-equal (unord, signaling) */
-#define _CMP_NGT_US 0x0a /* Not-greater-than (unordered, signaling) */
-#define _CMP_FALSE_OQ 0x0b /* False (ordered, non-signaling) */
-#define _CMP_NEQ_OQ 0x0c /* Not-equal (ordered, non-signaling) */
-#define _CMP_GE_OS 0x0d /* Greater-than-or-equal (ordered, signaling) */
-#define _CMP_GT_OS 0x0e /* Greater-than (ordered, signaling) */
-#define _CMP_TRUE_UQ 0x0f /* True (unordered, non-signaling) */
-#define _CMP_EQ_OS 0x10 /* Equal (ordered, signaling) */
-#define _CMP_LT_OQ 0x11 /* Less-than (ordered, non-signaling) */
-#define _CMP_LE_OQ 0x12 /* Less-than-or-equal (ordered, non-signaling) */
-#define _CMP_UNORD_S 0x13 /* Unordered (signaling) */
-#define _CMP_NEQ_US 0x14 /* Not-equal (unordered, signaling) */
-#define _CMP_NLT_UQ 0x15 /* Not-less-than (unordered, non-signaling) */
-#define _CMP_NLE_UQ 0x16 /* Not-less-than-or-equal (unord, non-signaling) */
-#define _CMP_ORD_S 0x17 /* Ordered (signaling) */
-#define _CMP_EQ_US 0x18 /* Equal (unordered, signaling) */
-#define _CMP_NGE_UQ 0x19 /* Not-greater-than-or-equal (unord, non-sign) */
-#define _CMP_NGT_UQ 0x1a /* Not-greater-than (unordered, non-signaling) */
-#define _CMP_FALSE_OS 0x1b /* False (ordered, signaling) */
-#define _CMP_NEQ_OS 0x1c /* Not-equal (ordered, signaling) */
-#define _CMP_GE_OQ 0x1d /* Greater-than-or-equal (ordered, non-signaling) */
-#define _CMP_GT_OQ 0x1e /* Greater-than (ordered, non-signaling) */
-#define _CMP_TRUE_US 0x1f /* True (unordered, signaling) */
-
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmp_pd(__m128d a, __m128d b, const int c)
-{
- return (__m128d)__builtin_ia32_cmppd((__v2df)a, (__v2df)b, c);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmp_ps(__m128 a, __m128 b, const int c)
-{
- return (__m128)__builtin_ia32_cmpps((__v4sf)a, (__v4sf)b, c);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_cmp_pd(__m256d a, __m256d b, const int c)
-{
- return (__m256d)__builtin_ia32_cmppd256((__v4df)a, (__v4df)b, c);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_cmp_ps(__m256 a, __m256 b, const int c)
-{
- return (__m256)__builtin_ia32_cmpps256((__v8sf)a, (__v8sf)b, c);
-}
-
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmp_sd(__m128d a, __m128d b, const int c)
-{
- return (__m128d)__builtin_ia32_cmpsd((__v2df)a, (__v2df)b, c);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmp_ss(__m128 a, __m128 b, const int c)
-{
- return (__m128)__builtin_ia32_cmpss((__v4sf)a, (__v4sf)b, c);
-}
-
-/* Vector extract */
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm256_extractf128_pd(__m256d a, const int o)
-{
- return (__m128d)__builtin_ia32_vextractf128_pd256((__v4df)a, o);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm256_extractf128_ps(__m256 a, const int o)
-{
- return (__m128)__builtin_ia32_vextractf128_ps256((__v8sf)a, o);
-}
-
-static __inline __m128i __attribute__((__always_inline__, __nodebug__))
-_mm256_extractf128_si256(__m256i a, const int o)
-{
- return (__m128i)__builtin_ia32_vextractf128_si256((__v8si)a, o);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_extract_epi32(__m256i a, int const imm)
-{
- __v8si b = (__v8si)a;
- return b[imm];
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_extract_epi16(__m256i a, int const imm)
-{
- __v16hi b = (__v16hi)a;
- return b[imm];
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_extract_epi8(__m256i a, int const imm)
-{
- __v32qi b = (__v32qi)a;
- return b[imm];
-}
-
-#ifdef __x86_64__
-static __inline long long __attribute__((__always_inline__, __nodebug__))
-_mm256_extract_epi64(__m256i a, const int imm)
-{
- __v4di b = (__v4di)a;
- return b[imm];
-}
-#endif
-
-/* Vector insert */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_insertf128_pd(__m256d a, __m128d b, const int o)
-{
- return (__m256d)__builtin_ia32_vinsertf128_pd256((__v4df)a, (__v2df)b, o);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_insertf128_ps(__m256 a, __m128 b, const int o)
-{
- return (__m256)__builtin_ia32_vinsertf128_ps256((__v8sf)a, (__v4sf)b, o);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_insertf128_si256(__m256i a, __m128i b, const int o)
-{
- return (__m256i)__builtin_ia32_vinsertf128_si256((__v8si)a, (__v4si)b, o);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_insert_epi32(__m256i a, int b, int const imm)
-{
- __v8si c = (__v8si)a;
- c[imm & 7] = b;
- return (__m256i)c;
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_insert_epi16(__m256i a, int b, int const imm)
-{
- __v16hi c = (__v16hi)a;
- c[imm & 15] = b;
- return (__m256i)c;
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_insert_epi8(__m256i a, int b, int const imm)
-{
- __v32qi c = (__v32qi)a;
- c[imm & 31] = b;
- return (__m256i)c;
-}
-
-#ifdef __x86_64__
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_insert_epi64(__m256i a, int b, int const imm)
-{
- __v4di c = (__v4di)a;
- c[imm & 3] = b;
- return (__m256i)c;
-}
-#endif
-
-/* Conversion */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_cvtepi32_pd(__m128i a)
-{
- return (__m256d)__builtin_ia32_cvtdq2pd256((__v4si) a);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_cvtepi32_ps(__m256i a)
-{
- return (__m256)__builtin_ia32_cvtdq2ps256((__v8si) a);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm256_cvtpd_ps(__m256d a)
-{
- return (__m128)__builtin_ia32_cvtpd2ps256((__v4df) a);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_cvtps_epi32(__m256 a)
-{
- return (__m256i)__builtin_ia32_cvtps2dq256((__v8sf) a);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_cvtps_pd(__m128 a)
-{
- return (__m256d)__builtin_ia32_cvtps2pd256((__v4sf) a);
-}
-
-static __inline __m128i __attribute__((__always_inline__, __nodebug__))
-_mm256_cvttpd_epi32(__m256d a)
-{
- return (__m128i)__builtin_ia32_cvttpd2dq256((__v4df) a);
-}
-
-static __inline __m128i __attribute__((__always_inline__, __nodebug__))
-_mm256_cvtpd_epi32(__m256d a)
-{
- return (__m128i)__builtin_ia32_cvtpd2dq256((__v4df) a);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_cvttps_epi32(__m256 a)
-{
- return (__m256i)__builtin_ia32_cvttps2dq256((__v8sf) a);
-}
-
-/* Vector replicate */
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_movehdup_ps(__m256 a)
-{
- return __builtin_shufflevector(a, a, 1, 1, 3, 3, 5, 5, 7, 7);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_moveldup_ps(__m256 a)
-{
- return __builtin_shufflevector(a, a, 0, 0, 2, 2, 4, 4, 6, 6);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_movedup_pd(__m256d a)
-{
- return __builtin_shufflevector(a, a, 0, 0, 2, 2);
-}
-
-/* Unpack and Interleave */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_unpackhi_pd(__m256d a, __m256d b)
-{
- return __builtin_shufflevector(a, b, 1, 5, 1+2, 5+2);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_unpacklo_pd(__m256d a, __m256d b)
-{
- return __builtin_shufflevector(a, b, 0, 4, 0+2, 4+2);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_unpackhi_ps(__m256 a, __m256 b)
-{
- return __builtin_shufflevector(a, b, 2, 10, 2+1, 10+1, 6, 14, 6+1, 14+1);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_unpacklo_ps(__m256 a, __m256 b)
-{
- return __builtin_shufflevector(a, b, 0, 8, 0+1, 8+1, 4, 12, 4+1, 12+1);
-}
-
-/* Bit Test */
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm_testz_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_vtestzpd((__v2df)a, (__v2df)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm_testc_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_vtestcpd((__v2df)a, (__v2df)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm_testnzc_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_vtestnzcpd((__v2df)a, (__v2df)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm_testz_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_vtestzps((__v4sf)a, (__v4sf)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm_testc_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_vtestcps((__v4sf)a, (__v4sf)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm_testnzc_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_vtestnzcps((__v4sf)a, (__v4sf)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testz_pd(__m256d a, __m256d b)
-{
- return __builtin_ia32_vtestzpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testc_pd(__m256d a, __m256d b)
-{
- return __builtin_ia32_vtestcpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testnzc_pd(__m256d a, __m256d b)
-{
- return __builtin_ia32_vtestnzcpd256((__v4df)a, (__v4df)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testz_ps(__m256 a, __m256 b)
-{
- return __builtin_ia32_vtestzps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testc_ps(__m256 a, __m256 b)
-{
- return __builtin_ia32_vtestcps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testnzc_ps(__m256 a, __m256 b)
-{
- return __builtin_ia32_vtestnzcps256((__v8sf)a, (__v8sf)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testz_si256(__m256i a, __m256i b)
-{
- return __builtin_ia32_ptestz256((__v4di)a, (__v4di)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testc_si256(__m256i a, __m256i b)
-{
- return __builtin_ia32_ptestc256((__v4di)a, (__v4di)b);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_testnzc_si256(__m256i a, __m256i b)
-{
- return __builtin_ia32_ptestnzc256((__v4di)a, (__v4di)b);
-}
-
-/* Vector extract sign mask */
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_movemask_pd(__m256d a)
-{
- return __builtin_ia32_movmskpd256((__v4df)a);
-}
-
-static __inline int __attribute__((__always_inline__, __nodebug__))
-_mm256_movemask_ps(__m256 a)
-{
- return __builtin_ia32_movmskps256((__v8sf)a);
-}
-
-/* Vector zero */
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_zeroall(void)
-{
- __builtin_ia32_vzeroall();
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_zeroupper(void)
-{
- __builtin_ia32_vzeroupper();
-}
-
-/* Vector load with broadcast */
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_broadcast_ss(float const *a)
-{
- return (__m128)__builtin_ia32_vbroadcastss(a);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_broadcast_sd(double const *a)
-{
- return (__m256d)__builtin_ia32_vbroadcastsd256(a);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_broadcast_ss(float const *a)
-{
- return (__m256)__builtin_ia32_vbroadcastss256(a);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_broadcast_pd(__m128d const *a)
-{
- return (__m256d)__builtin_ia32_vbroadcastf128_pd256(a);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_broadcast_ps(__m128 const *a)
-{
- return (__m256)__builtin_ia32_vbroadcastf128_ps256(a);
-}
-
-/* SIMD load ops */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_load_pd(double const *p)
-{
- return *(__m256d *)p;
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_load_ps(float const *p)
-{
- return *(__m256 *)p;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_loadu_pd(double const *p)
-{
- return (__m256d)__builtin_ia32_loadupd256(p);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_loadu_ps(float const *p)
-{
- return (__m256)__builtin_ia32_loadups256(p);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_load_si256(__m256i const *p)
-{
- return *p;
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_loadu_si256(__m256i const *p)
-{
- return (__m256i)__builtin_ia32_loaddqu256((char const *)p);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_lddqu_si256(__m256i const *p)
-{
- return (__m256i)__builtin_ia32_lddqu256((char const *)p);
-}
-
-/* SIMD store ops */
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_store_pd(double *p, __m256d a)
-{
- *(__m256d *)p = a;
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_store_ps(float *p, __m256 a)
-{
- *(__m256 *)p = a;
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_storeu_pd(double *p, __m256d a)
-{
- __builtin_ia32_storeupd256(p, (__v4df)a);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_storeu_ps(float *p, __m256 a)
-{
- __builtin_ia32_storeups256(p, (__v8sf)a);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_store_si256(__m256i *p, __m256i a)
-{
- *p = a;
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_storeu_si256(__m256i *p, __m256i a)
-{
- __builtin_ia32_storedqu256((char *)p, (__v32qi)a);
-}
-
-/* Conditional load ops */
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_maskload_pd(double const *p, __m128d m)
-{
- return (__m128d)__builtin_ia32_maskloadpd((const __v2df *)p, (__v2df)m);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_maskload_pd(double const *p, __m256d m)
-{
- return (__m256d)__builtin_ia32_maskloadpd256((const __v4df *)p, (__v4df)m);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_maskload_ps(float const *p, __m128 m)
-{
- return (__m128)__builtin_ia32_maskloadps((const __v4sf *)p, (__v4sf)m);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_maskload_ps(float const *p, __m256 m)
-{
- return (__m256)__builtin_ia32_maskloadps256((const __v8sf *)p, (__v8sf)m);
-}
-
-/* Conditional store ops */
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_maskstore_ps(float *p, __m256 m, __m256 a)
-{
- __builtin_ia32_maskstoreps256((__v8sf *)p, (__v8sf)m, (__v8sf)a);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm_maskstore_pd(double *p, __m128d m, __m128d a)
-{
- __builtin_ia32_maskstorepd((__v2df *)p, (__v2df)m, (__v2df)a);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_maskstore_pd(double *p, __m256d m, __m256d a)
-{
- __builtin_ia32_maskstorepd256((__v4df *)p, (__v4df)m, (__v4df)a);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm_maskstore_ps(float *p, __m128 m, __m128 a)
-{
- __builtin_ia32_maskstoreps((__v4sf *)p, (__v4sf)m, (__v4sf)a);
-}
-
-/* Cacheability support ops */
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_stream_si256(__m256i *a, __m256i b)
-{
- __builtin_ia32_movntdq256((__v4di *)a, (__v4di)b);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_stream_pd(double *a, __m256d b)
-{
- __builtin_ia32_movntpd256(a, (__v4df)b);
-}
-
-static __inline void __attribute__((__always_inline__, __nodebug__))
-_mm256_stream_ps(float *p, __m256 a)
-{
- __builtin_ia32_movntps256(p, (__v8sf)a);
-}
-
-/* Create vectors */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_set_pd(double a, double b, double c, double d)
-{
- return (__m256d){ d, c, b, a };
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_set_ps(float a, float b, float c, float d,
- float e, float f, float g, float h)
-{
- return (__m256){ h, g, f, e, d, c, b, a };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set_epi32(int i0, int i1, int i2, int i3,
- int i4, int i5, int i6, int i7)
-{
- return (__m256i)(__v8si){ i7, i6, i5, i4, i3, i2, i1, i0 };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set_epi16(short w15, short w14, short w13, short w12,
- short w11, short w10, short w09, short w08,
- short w07, short w06, short w05, short w04,
- short w03, short w02, short w01, short w00)
-{
- return (__m256i)(__v16hi){ w00, w01, w02, w03, w04, w05, w06, w07,
- w08, w09, w10, w11, w12, w13, w14, w15 };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set_epi8(char b31, char b30, char b29, char b28,
- char b27, char b26, char b25, char b24,
- char b23, char b22, char b21, char b20,
- char b19, char b18, char b17, char b16,
- char b15, char b14, char b13, char b12,
- char b11, char b10, char b09, char b08,
- char b07, char b06, char b05, char b04,
- char b03, char b02, char b01, char b00)
-{
- return (__m256i)(__v32qi){
- b00, b01, b02, b03, b04, b05, b06, b07,
- b08, b09, b10, b11, b12, b13, b14, b15,
- b16, b17, b18, b19, b20, b21, b22, b23,
- b24, b25, b26, b27, b28, b29, b30, b31
- };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set_epi64x(long long a, long long b, long long c, long long d)
-{
- return (__m256i)(__v4di){ d, c, b, a };
-}
-
-/* Create vectors with elements in reverse order */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_setr_pd(double a, double b, double c, double d)
-{
- return (__m256d){ a, b, c, d };
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_setr_ps(float a, float b, float c, float d,
- float e, float f, float g, float h)
-{
- return (__m256){ a, b, c, d, e, f, g, h };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_setr_epi32(int i0, int i1, int i2, int i3,
- int i4, int i5, int i6, int i7)
-{
- return (__m256i)(__v8si){ i0, i1, i2, i3, i4, i5, i6, i7 };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_setr_epi16(short w15, short w14, short w13, short w12,
- short w11, short w10, short w09, short w08,
- short w07, short w06, short w05, short w04,
- short w03, short w02, short w01, short w00)
-{
- return (__m256i)(__v16hi){ w15, w14, w13, w12, w11, w10, w09, w08,
- w07, w06, w05, w04, w03, w02, w01, w00 };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_setr_epi8(char b31, char b30, char b29, char b28,
- char b27, char b26, char b25, char b24,
- char b23, char b22, char b21, char b20,
- char b19, char b18, char b17, char b16,
- char b15, char b14, char b13, char b12,
- char b11, char b10, char b09, char b08,
- char b07, char b06, char b05, char b04,
- char b03, char b02, char b01, char b00)
-{
- return (__m256i)(__v32qi){
- b31, b30, b29, b28, b27, b26, b25, b24,
- b23, b22, b21, b20, b19, b18, b17, b16,
- b15, b14, b13, b12, b11, b10, b09, b08,
- b07, b06, b05, b04, b03, b02, b01, b00 };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_setr_epi64x(long long a, long long b, long long c, long long d)
-{
- return (__m256i)(__v4di){ a, b, c, d };
-}
-
-/* Create vectors with repeated elements */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_set1_pd(double w)
-{
- return (__m256d){ w, w, w, w };
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_set1_ps(float w)
-{
- return (__m256){ w, w, w, w, w, w, w, w };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set1_epi32(int i)
-{
- return (__m256i)(__v8si){ i, i, i, i, i, i, i, i };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set1_epi16(short w)
-{
- return (__m256i)(__v16hi){ w, w, w, w, w, w, w, w, w, w, w, w, w, w, w, w };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set1_epi8(char b)
-{
- return (__m256i)(__v32qi){ b, b, b, b, b, b, b, b, b, b, b, b, b, b, b, b,
- b, b, b, b, b, b, b, b, b, b, b, b, b, b, b, b };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_set1_epi64x(long long q)
-{
- return (__m256i)(__v4di){ q, q, q, q };
-}
-
-/* Create zeroed vectors */
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_setzero_pd(void)
-{
- return (__m256d){ 0, 0, 0, 0 };
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_setzero_ps(void)
-{
- return (__m256){ 0, 0, 0, 0, 0, 0, 0, 0 };
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_setzero_si256(void)
-{
- return (__m256i){ 0LL, 0LL, 0LL, 0LL };
-}
-
-/* Cast between vector types */
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_castpd_ps(__m256d in)
-{
- return (__m256)in;
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_castpd_si256(__m256d in)
-{
- return (__m256i)in;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_castps_pd(__m256 in)
-{
- return (__m256d)in;
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_castps_si256(__m256 in)
-{
- return (__m256i)in;
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_castsi256_ps(__m256i in)
-{
- return (__m256)in;
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_castsi256_pd(__m256i in)
-{
- return (__m256d)in;
-}
-
-static __inline __m128d __attribute__((__always_inline__, __nodebug__))
-_mm256_castpd256_pd128(__m256d in)
-{
- return __builtin_shufflevector(in, in, 0, 1);
-}
-
-static __inline __m128 __attribute__((__always_inline__, __nodebug__))
-_mm256_castps256_ps128(__m256 in)
-{
- return __builtin_shufflevector(in, in, 0, 1, 2, 3);
-}
-
-static __inline __m128i __attribute__((__always_inline__, __nodebug__))
-_mm256_castsi256_si128(__m256i in)
-{
- return __builtin_shufflevector(in, in, 0, 1);
-}
-
-static __inline __m256d __attribute__((__always_inline__, __nodebug__))
-_mm256_castpd128_pd256(__m128d in)
-{
- __m128d zero = _mm_setzero_pd();
- return __builtin_shufflevector(in, zero, 0, 1, 2, 2);
-}
-
-static __inline __m256 __attribute__((__always_inline__, __nodebug__))
-_mm256_castps128_ps256(__m128 in)
-{
- __m128 zero = _mm_setzero_ps();
- return __builtin_shufflevector(in, zero, 0, 1, 2, 3, 4, 4, 4, 4);
-}
-
-static __inline __m256i __attribute__((__always_inline__, __nodebug__))
-_mm256_castsi128_si256(__m128i in)
-{
- __m128i zero = _mm_setzero_si128();
- return __builtin_shufflevector(in, zero, 0, 1, 2, 2);
-}
diff --git a/13/renderscript/clang-include/emmintrin.h b/13/renderscript/clang-include/emmintrin.h
deleted file mode 100644
index 11b2581..0000000
--- a/13/renderscript/clang-include/emmintrin.h
+++ /dev/null
@@ -1,1362 +0,0 @@
-/*===---- emmintrin.h - SSE2 intrinsics ------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __EMMINTRIN_H
-#define __EMMINTRIN_H
-
-#ifndef __SSE2__
-#error "SSE2 instruction set not enabled"
-#else
-
-#include <xmmintrin.h>
-
-typedef double __m128d __attribute__((__vector_size__(16)));
-typedef long long __m128i __attribute__((__vector_size__(16)));
-
-/* Type defines. */
-typedef double __v2df __attribute__ ((__vector_size__ (16)));
-typedef long long __v2di __attribute__ ((__vector_size__ (16)));
-typedef short __v8hi __attribute__((__vector_size__(16)));
-typedef char __v16qi __attribute__((__vector_size__(16)));
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_add_sd(__m128d a, __m128d b)
-{
- a[0] += b[0];
- return a;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_add_pd(__m128d a, __m128d b)
-{
- return a + b;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_sub_sd(__m128d a, __m128d b)
-{
- a[0] -= b[0];
- return a;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_sub_pd(__m128d a, __m128d b)
-{
- return a - b;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_mul_sd(__m128d a, __m128d b)
-{
- a[0] *= b[0];
- return a;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_mul_pd(__m128d a, __m128d b)
-{
- return a * b;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_div_sd(__m128d a, __m128d b)
-{
- a[0] /= b[0];
- return a;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_div_pd(__m128d a, __m128d b)
-{
- return a / b;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_sqrt_sd(__m128d a, __m128d b)
-{
- __m128d c = __builtin_ia32_sqrtsd(b);
- return (__m128d) { c[0], a[1] };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_sqrt_pd(__m128d a)
-{
- return __builtin_ia32_sqrtpd(a);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_min_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_minsd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_min_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_minpd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_max_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_maxsd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_max_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_maxpd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_and_pd(__m128d a, __m128d b)
-{
- return (__m128d)((__v4si)a & (__v4si)b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_andnot_pd(__m128d a, __m128d b)
-{
- return (__m128d)(~(__v4si)a & (__v4si)b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_or_pd(__m128d a, __m128d b)
-{
- return (__m128d)((__v4si)a | (__v4si)b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_xor_pd(__m128d a, __m128d b)
-{
- return (__m128d)((__v4si)a ^ (__v4si)b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 0);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 1);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmple_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(b, a, 1);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpge_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(b, a, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpord_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 7);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpunord_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 3);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpneq_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 4);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnlt_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 5);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnle_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(a, b, 6);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpngt_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(b, a, 5);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnge_pd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmppd(b, a, 6);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 0);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 1);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmple_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(b, a, 1);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpge_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(b, a, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpord_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 7);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpunord_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 3);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpneq_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 4);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnlt_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 5);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnle_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(a, b, 6);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpngt_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(b, a, 5);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnge_sd(__m128d a, __m128d b)
-{
- return (__m128d)__builtin_ia32_cmpsd(b, a, 6);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comieq_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_comisdeq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comilt_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_comisdlt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comile_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_comisdle(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comigt_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_comisdgt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comineq_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_comisdneq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomieq_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_ucomisdeq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomilt_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_ucomisdlt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomile_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_ucomisdle(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomigt_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_ucomisdgt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomineq_sd(__m128d a, __m128d b)
-{
- return __builtin_ia32_ucomisdneq(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpd_ps(__m128d a)
-{
- return __builtin_ia32_cvtpd2ps(a);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cvtps_pd(__m128 a)
-{
- return __builtin_ia32_cvtps2pd(a);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi32_pd(__m128i a)
-{
- return __builtin_ia32_cvtdq2pd((__v4si)a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpd_epi32(__m128d a)
-{
- return __builtin_ia32_cvtpd2dq(a);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsd_si32(__m128d a)
-{
- return __builtin_ia32_cvtsd2si(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsd_ss(__m128 a, __m128d b)
-{
- a[0] = b[0];
- return a;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi32_sd(__m128d a, int b)
-{
- a[0] = b;
- return a;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cvtss_sd(__m128d a, __m128 b)
-{
- a[0] = b[0];
- return a;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvttpd_epi32(__m128d a)
-{
- return (__m128i)__builtin_ia32_cvttpd2dq(a);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvttsd_si32(__m128d a)
-{
- return a[0];
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpd_pi32(__m128d a)
-{
- return (__m64)__builtin_ia32_cvtpd2pi(a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvttpd_pi32(__m128d a)
-{
- return (__m64)__builtin_ia32_cvttpd2pi(a);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpi32_pd(__m64 a)
-{
- return __builtin_ia32_cvtpi2pd((__v2si)a);
-}
-
-static __inline__ double __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsd_f64(__m128d a)
-{
- return a[0];
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_load_pd(double const *dp)
-{
- return *(__m128d*)dp;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_load1_pd(double const *dp)
-{
- return (__m128d){ dp[0], dp[0] };
-}
-
-#define _mm_load_pd1(dp) _mm_load1_pd(dp)
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_loadr_pd(double const *dp)
-{
- return (__m128d){ dp[1], dp[0] };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_loadu_pd(double const *dp)
-{
- return __builtin_ia32_loadupd(dp);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_load_sd(double const *dp)
-{
- return (__m128d){ *dp, 0.0 };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_loadh_pd(__m128d a, double const *dp)
-{
- return __builtin_shufflevector(a, *(__m128d *)dp, 0, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_loadl_pd(__m128d a, double const *dp)
-{
- return __builtin_shufflevector(a, *(__m128d *)dp, 2, 1);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_set_sd(double w)
-{
- return (__m128d){ w, 0 };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_set1_pd(double w)
-{
- return (__m128d){ w, w };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_set_pd(double w, double x)
-{
- return (__m128d){ x, w };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_setr_pd(double w, double x)
-{
- return (__m128d){ w, x };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_setzero_pd(void)
-{
- return (__m128d){ 0, 0 };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_move_sd(__m128d a, __m128d b)
-{
- return (__m128d){ b[0], a[1] };
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store_sd(double *dp, __m128d a)
-{
- dp[0] = a[0];
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store1_pd(double *dp, __m128d a)
-{
- dp[0] = a[0];
- dp[1] = a[0];
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store_pd(double *dp, __m128d a)
-{
- *(__m128d *)dp = a;
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storeu_pd(double *dp, __m128d a)
-{
- __builtin_ia32_storeupd(dp, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storer_pd(double *dp, __m128d a)
-{
- dp[0] = a[1];
- dp[1] = a[0];
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storeh_pd(double *dp, __m128d a)
-{
- dp[0] = a[1];
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storel_pd(double *dp, __m128d a)
-{
- dp[0] = a[0];
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_add_epi8(__m128i a, __m128i b)
-{
- return (__m128i)((__v16qi)a + (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_add_epi16(__m128i a, __m128i b)
-{
- return (__m128i)((__v8hi)a + (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_add_epi32(__m128i a, __m128i b)
-{
- return (__m128i)((__v4si)a + (__v4si)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_add_si64(__m64 a, __m64 b)
-{
- return a + b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_add_epi64(__m128i a, __m128i b)
-{
- return a + b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_adds_epi8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_paddsb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_adds_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_paddsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_adds_epu8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_paddusb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_adds_epu16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_paddusw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_avg_epu8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pavgb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_avg_epu16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pavgw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_madd_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmaddwd128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_max_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmaxsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_max_epu8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmaxub128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_min_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pminsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_min_epu8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pminub128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mulhi_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmulhw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mulhi_epu16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmulhuw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mullo_epi16(__m128i a, __m128i b)
-{
- return (__m128i)((__v8hi)a * (__v8hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_mul_su32(__m64 a, __m64 b)
-{
- return __builtin_ia32_pmuludq((__v2si)a, (__v2si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mul_epu32(__m128i a, __m128i b)
-{
- return __builtin_ia32_pmuludq128((__v4si)a, (__v4si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sad_epu8(__m128i a, __m128i b)
-{
- return __builtin_ia32_psadbw128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sub_epi8(__m128i a, __m128i b)
-{
- return (__m128i)((__v16qi)a - (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sub_epi16(__m128i a, __m128i b)
-{
- return (__m128i)((__v8hi)a - (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sub_epi32(__m128i a, __m128i b)
-{
- return (__m128i)((__v4si)a - (__v4si)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sub_si64(__m64 a, __m64 b)
-{
- return a - b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sub_epi64(__m128i a, __m128i b)
-{
- return a - b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_subs_epi8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psubsb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_subs_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psubsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_subs_epu8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psubusb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_subs_epu16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psubusw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_and_si128(__m128i a, __m128i b)
-{
- return a & b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_andnot_si128(__m128i a, __m128i b)
-{
- return ~a & b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_or_si128(__m128i a, __m128i b)
-{
- return a | b;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_xor_si128(__m128i a, __m128i b)
-{
- return a ^ b;
-}
-
-#define _mm_slli_si128(VEC, IMM) \
- ((__m128i)__builtin_ia32_pslldqi128((__m128i)(VEC), (IMM)*8))
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_slli_epi16(__m128i a, int count)
-{
- return (__m128i)__builtin_ia32_psllwi128((__v8hi)a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sll_epi16(__m128i a, __m128i count)
-{
- return (__m128i)__builtin_ia32_psllw128((__v8hi)a, (__v8hi)count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_slli_epi32(__m128i a, int count)
-{
- return (__m128i)__builtin_ia32_pslldi128((__v4si)a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sll_epi32(__m128i a, __m128i count)
-{
- return (__m128i)__builtin_ia32_pslld128((__v4si)a, (__v4si)count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_slli_epi64(__m128i a, int count)
-{
- return __builtin_ia32_psllqi128(a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sll_epi64(__m128i a, __m128i count)
-{
- return __builtin_ia32_psllq128(a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srai_epi16(__m128i a, int count)
-{
- return (__m128i)__builtin_ia32_psrawi128((__v8hi)a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sra_epi16(__m128i a, __m128i count)
-{
- return (__m128i)__builtin_ia32_psraw128((__v8hi)a, (__v8hi)count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srai_epi32(__m128i a, int count)
-{
- return (__m128i)__builtin_ia32_psradi128((__v4si)a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sra_epi32(__m128i a, __m128i count)
-{
- return (__m128i)__builtin_ia32_psrad128((__v4si)a, (__v4si)count);
-}
-
-
-#define _mm_srli_si128(VEC, IMM) \
- ((__m128i)__builtin_ia32_psrldqi128((__m128i)(VEC), (IMM)*8))
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srli_epi16(__m128i a, int count)
-{
- return (__m128i)__builtin_ia32_psrlwi128((__v8hi)a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srl_epi16(__m128i a, __m128i count)
-{
- return (__m128i)__builtin_ia32_psrlw128((__v8hi)a, (__v8hi)count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srli_epi32(__m128i a, int count)
-{
- return (__m128i)__builtin_ia32_psrldi128((__v4si)a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srl_epi32(__m128i a, __m128i count)
-{
- return (__m128i)__builtin_ia32_psrld128((__v4si)a, (__v4si)count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srli_epi64(__m128i a, int count)
-{
- return __builtin_ia32_psrlqi128(a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_srl_epi64(__m128i a, __m128i count)
-{
- return __builtin_ia32_psrlq128(a, count);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_epi8(__m128i a, __m128i b)
-{
- return (__m128i)((__v16qi)a == (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_epi16(__m128i a, __m128i b)
-{
- return (__m128i)((__v8hi)a == (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_epi32(__m128i a, __m128i b)
-{
- return (__m128i)((__v4si)a == (__v4si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_epi8(__m128i a, __m128i b)
-{
- return (__m128i)((__v16qi)a > (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_epi16(__m128i a, __m128i b)
-{
- return (__m128i)((__v8hi)a > (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_epi32(__m128i a, __m128i b)
-{
- return (__m128i)((__v4si)a > (__v4si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_epi8(__m128i a, __m128i b)
-{
- return _mm_cmpgt_epi8(b,a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_epi16(__m128i a, __m128i b)
-{
- return _mm_cmpgt_epi16(b,a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_epi32(__m128i a, __m128i b)
-{
- return _mm_cmpgt_epi32(b,a);
-}
-
-#ifdef __x86_64__
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi64_sd(__m128d a, long long b)
-{
- a[0] = b;
- return a;
-}
-
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsd_si64(__m128d a)
-{
- return __builtin_ia32_cvtsd2si64(a);
-}
-
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_cvttsd_si64(__m128d a)
-{
- return a[0];
-}
-#endif
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi32_ps(__m128i a)
-{
- return __builtin_ia32_cvtdq2ps((__v4si)a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtps_epi32(__m128 a)
-{
- return (__m128i)__builtin_ia32_cvtps2dq(a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvttps_epi32(__m128 a)
-{
- return (__m128i)__builtin_ia32_cvttps2dq(a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi32_si128(int a)
-{
- return (__m128i)(__v4si){ a, 0, 0, 0 };
-}
-
-#ifdef __x86_64__
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi64_si128(long long a)
-{
- return (__m128i){ a, 0 };
-}
-#endif
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi128_si32(__m128i a)
-{
- __v4si b = (__v4si)a;
- return b[0];
-}
-
-#ifdef __x86_64__
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi128_si64(__m128i a)
-{
- return a[0];
-}
-#endif
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_load_si128(__m128i const *p)
-{
- return *p;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_loadu_si128(__m128i const *p)
-{
- return (__m128i)__builtin_ia32_loaddqu((char const *)p);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_loadl_epi64(__m128i const *p)
-{
- return (__m128i) { *(long long*)p, 0};
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set_epi64x(long long q1, long long q0)
-{
- return (__m128i){ q0, q1 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set_epi64(__m64 q1, __m64 q0)
-{
- return (__m128i){ (long long)q0, (long long)q1 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set_epi32(int i3, int i2, int i1, int i0)
-{
- return (__m128i)(__v4si){ i0, i1, i2, i3};
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set_epi16(short w7, short w6, short w5, short w4, short w3, short w2, short w1, short w0)
-{
- return (__m128i)(__v8hi){ w0, w1, w2, w3, w4, w5, w6, w7 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set_epi8(char b15, char b14, char b13, char b12, char b11, char b10, char b9, char b8, char b7, char b6, char b5, char b4, char b3, char b2, char b1, char b0)
-{
- return (__m128i)(__v16qi){ b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set1_epi64x(long long q)
-{
- return (__m128i){ q, q };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set1_epi64(__m64 q)
-{
- return (__m128i){ (long long)q, (long long)q };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set1_epi32(int i)
-{
- return (__m128i)(__v4si){ i, i, i, i };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set1_epi16(short w)
-{
- return (__m128i)(__v8hi){ w, w, w, w, w, w, w, w };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_set1_epi8(char b)
-{
- return (__m128i)(__v16qi){ b, b, b, b, b, b, b, b, b, b, b, b, b, b, b, b };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_setr_epi64(__m64 q0, __m64 q1)
-{
- return (__m128i){ (long long)q0, (long long)q1 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_setr_epi32(int i0, int i1, int i2, int i3)
-{
- return (__m128i)(__v4si){ i0, i1, i2, i3};
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_setr_epi16(short w0, short w1, short w2, short w3, short w4, short w5, short w6, short w7)
-{
- return (__m128i)(__v8hi){ w0, w1, w2, w3, w4, w5, w6, w7 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_setr_epi8(char b0, char b1, char b2, char b3, char b4, char b5, char b6, char b7, char b8, char b9, char b10, char b11, char b12, char b13, char b14, char b15)
-{
- return (__m128i)(__v16qi){ b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_setzero_si128(void)
-{
- return (__m128i){ 0LL, 0LL };
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store_si128(__m128i *p, __m128i b)
-{
- *p = b;
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storeu_si128(__m128i *p, __m128i b)
-{
- __builtin_ia32_storedqu((char *)p, (__v16qi)b);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_maskmoveu_si128(__m128i d, __m128i n, char *p)
-{
- __builtin_ia32_maskmovdqu((__v16qi)d, (__v16qi)n, p);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storel_epi64(__m128i *p, __m128i a)
-{
- __builtin_ia32_storelv4si((__v2si *)p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_stream_pd(double *p, __m128d a)
-{
- __builtin_ia32_movntpd(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_stream_si128(__m128i *p, __m128i a)
-{
- __builtin_ia32_movntdq(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_stream_si32(int *p, int a)
-{
- __builtin_ia32_movnti(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_clflush(void const *p)
-{
- __builtin_ia32_clflush(p);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_lfence(void)
-{
- __builtin_ia32_lfence();
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_mfence(void)
-{
- __builtin_ia32_mfence();
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_packs_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_packsswb128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_packs_epi32(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_packssdw128((__v4si)a, (__v4si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_packus_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_packuswb128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_extract_epi16(__m128i a, int imm)
-{
- __v8hi b = (__v8hi)a;
- return (unsigned short)b[imm];
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_insert_epi16(__m128i a, int b, int imm)
-{
- __v8hi c = (__v8hi)a;
- c[imm & 7] = b;
- return (__m128i)c;
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_movemask_epi8(__m128i a)
-{
- return __builtin_ia32_pmovmskb128((__v16qi)a);
-}
-
-#define _mm_shuffle_epi32(a, imm) \
- ((__m128i)__builtin_shufflevector((__v4si)(a), (__v4si) {0}, \
- (imm) & 0x3, ((imm) & 0xc) >> 2, \
- ((imm) & 0x30) >> 4, ((imm) & 0xc0) >> 6))
-#define _mm_shufflelo_epi16(a, imm) \
- ((__m128i)__builtin_shufflevector((__v8hi)(a), (__v8hi) {0}, \
- (imm) & 0x3, ((imm) & 0xc) >> 2, \
- ((imm) & 0x30) >> 4, ((imm) & 0xc0) >> 6, \
- 4, 5, 6, 7))
-#define _mm_shufflehi_epi16(a, imm) \
- ((__m128i)__builtin_shufflevector((__v8hi)(a), (__v8hi) {0}, 0, 1, 2, 3, \
- 4 + (((imm) & 0x03) >> 0), \
- 4 + (((imm) & 0x0c) >> 2), \
- 4 + (((imm) & 0x30) >> 4), \
- 4 + (((imm) & 0xc0) >> 6)))
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_epi8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector((__v16qi)a, (__v16qi)b, 8, 16+8, 9, 16+9, 10, 16+10, 11, 16+11, 12, 16+12, 13, 16+13, 14, 16+14, 15, 16+15);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector((__v8hi)a, (__v8hi)b, 4, 8+4, 5, 8+5, 6, 8+6, 7, 8+7);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_epi32(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector((__v4si)a, (__v4si)b, 2, 4+2, 3, 4+3);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_epi64(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector(a, b, 1, 2+1);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_epi8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector((__v16qi)a, (__v16qi)b, 0, 16+0, 1, 16+1, 2, 16+2, 3, 16+3, 4, 16+4, 5, 16+5, 6, 16+6, 7, 16+7);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector((__v8hi)a, (__v8hi)b, 0, 8+0, 1, 8+1, 2, 8+2, 3, 8+3);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_epi32(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector((__v4si)a, (__v4si)b, 0, 4+0, 1, 4+1);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_epi64(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_shufflevector(a, b, 0, 2+0);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_movepi64_pi64(__m128i a)
-{
- return (__m64)a[0];
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_movpi64_pi64(__m64 a)
-{
- return (__m128i){ (long long)a, 0 };
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_move_epi64(__m128i a)
-{
- return __builtin_shufflevector(a, (__m128i){ 0 }, 0, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_pd(__m128d a, __m128d b)
-{
- return __builtin_shufflevector(a, b, 1, 2+1);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_pd(__m128d a, __m128d b)
-{
- return __builtin_shufflevector(a, b, 0, 2+0);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_movemask_pd(__m128d a)
-{
- return __builtin_ia32_movmskpd(a);
-}
-
-#define _mm_shuffle_pd(a, b, i) \
- (__builtin_shufflevector((__m128d)(a), (__m128d)(b), (i) & 1, \
- (((i) & 2) >> 1) + 2))
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_castpd_ps(__m128d in)
-{
- return (__m128)in;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_castpd_si128(__m128d in)
-{
- return (__m128i)in;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_castps_pd(__m128 in)
-{
- return (__m128d)in;
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_castps_si128(__m128 in)
-{
- return (__m128i)in;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_castsi128_ps(__m128i in)
-{
- return (__m128)in;
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_castsi128_pd(__m128i in)
-{
- return (__m128d)in;
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_pause(void)
-{
- __asm__ volatile ("pause");
-}
-
-#define _MM_SHUFFLE2(x, y) (((x) << 1) | (y))
-
-#endif /* __SSE2__ */
-
-#endif /* __EMMINTRIN_H */
diff --git a/13/renderscript/clang-include/float.h b/13/renderscript/clang-include/float.h
deleted file mode 100644
index 28fb882..0000000
--- a/13/renderscript/clang-include/float.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*===---- float.h - Characteristics of floating point types ----------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __FLOAT_H
-#define __FLOAT_H
-
-/* Characteristics of floating point types, C99 5.2.4.2.2 */
-
-#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__
-#define FLT_ROUNDS (__builtin_flt_rounds())
-#define FLT_RADIX __FLT_RADIX__
-
-#define FLT_MANT_DIG __FLT_MANT_DIG__
-#define DBL_MANT_DIG __DBL_MANT_DIG__
-#define LDBL_MANT_DIG __LDBL_MANT_DIG__
-
-#define DECIMAL_DIG __DECIMAL_DIG__
-
-#define FLT_DIG __FLT_DIG__
-#define DBL_DIG __DBL_DIG__
-#define LDBL_DIG __LDBL_DIG__
-
-#define FLT_MIN_EXP __FLT_MIN_EXP__
-#define DBL_MIN_EXP __DBL_MIN_EXP__
-#define LDBL_MIN_EXP __LDBL_MIN_EXP__
-
-#define FLT_MIN_10_EXP __FLT_MIN_10_EXP__
-#define DBL_MIN_10_EXP __DBL_MIN_10_EXP__
-#define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__
-
-#define FLT_MAX_EXP __FLT_MAX_EXP__
-#define DBL_MAX_EXP __DBL_MAX_EXP__
-#define LDBL_MAX_EXP __LDBL_MAX_EXP__
-
-#define FLT_MAX_10_EXP __FLT_MAX_10_EXP__
-#define DBL_MAX_10_EXP __DBL_MAX_10_EXP__
-#define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__
-
-#define FLT_MAX __FLT_MAX__
-#define DBL_MAX __DBL_MAX__
-#define LDBL_MAX __LDBL_MAX__
-
-#define FLT_EPSILON __FLT_EPSILON__
-#define DBL_EPSILON __DBL_EPSILON__
-#define LDBL_EPSILON __LDBL_EPSILON__
-
-#define FLT_MIN __FLT_MIN__
-#define DBL_MIN __DBL_MIN__
-#define LDBL_MIN __LDBL_MIN__
-
-#endif /* __FLOAT_H */
diff --git a/13/renderscript/clang-include/immintrin.h b/13/renderscript/clang-include/immintrin.h
deleted file mode 100644
index a19deaa..0000000
--- a/13/renderscript/clang-include/immintrin.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*===---- immintrin.h - Intel intrinsics -----------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __IMMINTRIN_H
-#define __IMMINTRIN_H
-
-#ifdef __MMX__
-#include <mmintrin.h>
-#endif
-
-#ifdef __SSE__
-#include <xmmintrin.h>
-#endif
-
-#ifdef __SSE2__
-#include <emmintrin.h>
-#endif
-
-#ifdef __SSE3__
-#include <pmmintrin.h>
-#endif
-
-#ifdef __SSSE3__
-#include <tmmintrin.h>
-#endif
-
-#if defined (__SSE4_2__) || defined (__SSE4_1__)
-#include <smmintrin.h>
-#endif
-
-#if defined (__AES__) || defined (__PCLMUL__)
-#include <wmmintrin.h>
-#endif
-
-#ifdef __AVX__
-#include <avxintrin.h>
-#endif
-
-#endif /* __IMMINTRIN_H */
diff --git a/13/renderscript/clang-include/iso646.h b/13/renderscript/clang-include/iso646.h
deleted file mode 100644
index dca13c5..0000000
--- a/13/renderscript/clang-include/iso646.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*===---- iso646.h - Standard header for alternate spellings of operators---===
- *
- * Copyright (c) 2008 Eli Friedman
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __ISO646_H
-#define __ISO646_H
-
-#ifndef __cplusplus
-#define and &&
-#define and_eq &=
-#define bitand &
-#define bitor |
-#define compl ~
-#define not !
-#define not_eq !=
-#define or ||
-#define or_eq |=
-#define xor ^
-#define xor_eq ^=
-#endif
-
-#endif /* __ISO646_H */
diff --git a/13/renderscript/clang-include/limits.h b/13/renderscript/clang-include/limits.h
deleted file mode 100644
index ecd09a4..0000000
--- a/13/renderscript/clang-include/limits.h
+++ /dev/null
@@ -1,117 +0,0 @@
-/*===---- limits.h - Standard header for integer sizes --------------------===*\
- *
- * Copyright (c) 2009 Chris Lattner
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
-\*===----------------------------------------------------------------------===*/
-
-#ifndef __CLANG_LIMITS_H
-#define __CLANG_LIMITS_H
-
-/* The system's limits.h may, in turn, try to #include_next GCC's limits.h.
- Avert this #include_next madness. */
-#if defined __GNUC__ && !defined _GCC_LIMITS_H_
-#define _GCC_LIMITS_H_
-#endif
-
-/* System headers include a number of constants from POSIX in <limits.h>.
- Include it if we're hosted. */
-#if __STDC_HOSTED__ && \
- defined(__has_include_next) && __has_include_next(<limits.h>)
-#include_next <limits.h>
-#endif
-
-/* Many system headers try to "help us out" by defining these. No really, we
- know how big each datatype is. */
-#undef SCHAR_MIN
-#undef SCHAR_MAX
-#undef UCHAR_MAX
-#undef SHRT_MIN
-#undef SHRT_MAX
-#undef USHRT_MAX
-#undef INT_MIN
-#undef INT_MAX
-#undef UINT_MAX
-#undef LONG_MIN
-#undef LONG_MAX
-#undef ULONG_MAX
-
-#undef CHAR_BIT
-#undef CHAR_MIN
-#undef CHAR_MAX
-
-/* C90/99 5.2.4.2.1 */
-#define SCHAR_MAX __SCHAR_MAX__
-#define SHRT_MAX __SHRT_MAX__
-#define INT_MAX __INT_MAX__
-#define LONG_MAX __LONG_MAX__
-
-#define SCHAR_MIN (-__SCHAR_MAX__-1)
-#define SHRT_MIN (-__SHRT_MAX__ -1)
-#define INT_MIN (-__INT_MAX__ -1)
-#define LONG_MIN (-__LONG_MAX__ -1L)
-
-#define UCHAR_MAX (__SCHAR_MAX__*2 +1)
-#define USHRT_MAX (__SHRT_MAX__ *2 +1)
-#define UINT_MAX (__INT_MAX__ *2U +1U)
-#define ULONG_MAX (__LONG_MAX__ *2UL+1UL)
-
-#ifndef MB_LEN_MAX
-#define MB_LEN_MAX 1
-#endif
-
-#define CHAR_BIT __CHAR_BIT__
-
-#ifdef __CHAR_UNSIGNED__ /* -funsigned-char */
-#define CHAR_MIN 0
-#define CHAR_MAX UCHAR_MAX
-#else
-#define CHAR_MIN SCHAR_MIN
-#define CHAR_MAX __SCHAR_MAX__
-#endif
-
-/* C99 5.2.4.2.1: Added long long. */
-#if __STDC_VERSION__ >= 199901
-
-#undef LLONG_MIN
-#undef LLONG_MAX
-#undef ULLONG_MAX
-
-#define LLONG_MAX __LONG_LONG_MAX__
-#define LLONG_MIN (-__LONG_LONG_MAX__-1LL)
-#define ULLONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL)
-#endif
-
-/* LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad
- that we don't have something like #pragma poison that could be used to
- deprecate a macro - the code should just use LLONG_MAX and friends.
- */
-#if defined(__GNU_LIBRARY__) ? defined(__USE_GNU) : !defined(__STRICT_ANSI__)
-
-#undef LONG_LONG_MIN
-#undef LONG_LONG_MAX
-#undef ULONG_LONG_MAX
-
-#define LONG_LONG_MAX __LONG_LONG_MAX__
-#define LONG_LONG_MIN (-__LONG_LONG_MAX__-1LL)
-#define ULONG_LONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL)
-#endif
-
-#endif /* __CLANG_LIMITS_H */
diff --git a/13/renderscript/clang-include/mm_malloc.h b/13/renderscript/clang-include/mm_malloc.h
deleted file mode 100644
index a402b57..0000000
--- a/13/renderscript/clang-include/mm_malloc.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*===---- mm_malloc.h - Allocating and Freeing Aligned Memory Blocks -------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __MM_MALLOC_H
-#define __MM_MALLOC_H
-
-#include <stddef.h>
-
-#ifdef _WIN32
-#include <malloc.h>
-#else
-
-// Forward declare allocation functions to allow this header to parse without
-// any system headers.
-#ifndef __cplusplus
-extern void free(void *ptr);
-extern void *malloc(size_t size) __attribute__((__malloc__));
-extern int posix_memalign(void **memptr, size_t alignment, size_t size);
-#else
-// Some systems (e.g. those with GNU libc) declare some of these functions with
-// an exception specifier. Via an "egregious workaround" in
-// Sema::CheckEquivalentExceptionSpec, Clang accepts the following as valid
-// redeclarations of glibc's declarations.
-extern "C" void free(void *ptr);
-extern "C" void *malloc(size_t size) __attribute__((__malloc__));
-extern "C" int posix_memalign(void **memptr, size_t alignment, size_t size);
-#endif
-
-#endif
-
-static __inline__ void *__attribute__((__always_inline__, __nodebug__,
- __malloc__))
-_mm_malloc(size_t size, size_t align)
-{
- if (align == 1) {
- return malloc(size);
- }
-
- if (!(align & (align - 1)) && align < sizeof(void *))
- align = sizeof(void *);
-
- void *mallocedMemory;
-#ifdef _WIN32
- mallocedMemory = _aligned_malloc(size, align);
-#else
- if (posix_memalign(&mallocedMemory, align, size))
- return 0;
-#endif
-
- return mallocedMemory;
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_free(void *p)
-{
- free(p);
-}
-
-#endif /* __MM_MALLOC_H */
diff --git a/13/renderscript/clang-include/mmintrin.h b/13/renderscript/clang-include/mmintrin.h
deleted file mode 100644
index fefb42f..0000000
--- a/13/renderscript/clang-include/mmintrin.h
+++ /dev/null
@@ -1,503 +0,0 @@
-/*===---- mmintrin.h - MMX intrinsics --------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __MMINTRIN_H
-#define __MMINTRIN_H
-
-#ifndef __MMX__
-#error "MMX instruction set not enabled"
-#else
-
-typedef long long __m64 __attribute__((__vector_size__(8)));
-
-typedef int __v2si __attribute__((__vector_size__(8)));
-typedef short __v4hi __attribute__((__vector_size__(8)));
-typedef char __v8qi __attribute__((__vector_size__(8)));
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_empty(void)
-{
- __builtin_ia32_emms();
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi32_si64(int __i)
-{
- return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi64_si32(__m64 __m)
-{
- return __builtin_ia32_vec_ext_v2si((__v2si)__m, 0);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi64_m64(long long __i)
-{
- return (__m64)__i;
-}
-
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_cvtm64_si64(__m64 __m)
-{
- return (long long)__m;
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_packs_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_packs_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_packs_pu16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_punpcklwd((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_punpckldq((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_add_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_add_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_add_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_adds_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_adds_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_adds_pu8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_adds_pu16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_paddusw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sub_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sub_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sub_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubd((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_subs_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubsb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_subs_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubsw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_subs_pu8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubusb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_subs_pu16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_psubusw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_madd_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pmaddwd((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_mulhi_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pmulhw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_mullo_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pmullw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sll_pi16(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psllw((__v4hi)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_slli_pi16(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psllwi((__v4hi)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sll_pi32(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_pslld((__v2si)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_slli_pi32(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_pslldi((__v2si)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sll_si64(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psllq(__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_slli_si64(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psllqi(__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sra_pi16(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psraw((__v4hi)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srai_pi16(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psrawi((__v4hi)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sra_pi32(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psrad((__v2si)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srai_pi32(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psradi((__v2si)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srl_pi16(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psrlw((__v4hi)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srli_pi16(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psrlwi((__v4hi)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srl_pi32(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psrld((__v2si)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srli_pi32(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psrldi((__v2si)__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srl_si64(__m64 __m, __m64 __count)
-{
- return (__m64)__builtin_ia32_psrlq(__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_srli_si64(__m64 __m, int __count)
-{
- return (__m64)__builtin_ia32_psrlqi(__m, __count);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_and_si64(__m64 __m1, __m64 __m2)
-{
- return __builtin_ia32_pand(__m1, __m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_andnot_si64(__m64 __m1, __m64 __m2)
-{
- return __builtin_ia32_pandn(__m1, __m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_or_si64(__m64 __m1, __m64 __m2)
-{
- return __builtin_ia32_por(__m1, __m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_xor_si64(__m64 __m1, __m64 __m2)
-{
- return __builtin_ia32_pxor(__m1, __m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pcmpeqb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pcmpeqw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pcmpeqd((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_pi8(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pcmpgtb((__v8qi)__m1, (__v8qi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_pi16(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pcmpgtw((__v4hi)__m1, (__v4hi)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_pi32(__m64 __m1, __m64 __m2)
-{
- return (__m64)__builtin_ia32_pcmpgtd((__v2si)__m1, (__v2si)__m2);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_setzero_si64(void)
-{
- return (__m64){ 0LL };
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_set_pi32(int __i1, int __i0)
-{
- return (__m64)__builtin_ia32_vec_init_v2si(__i0, __i1);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_set_pi16(short __s3, short __s2, short __s1, short __s0)
-{
- return (__m64)__builtin_ia32_vec_init_v4hi(__s0, __s1, __s2, __s3);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_set_pi8(char __b7, char __b6, char __b5, char __b4, char __b3, char __b2,
- char __b1, char __b0)
-{
- return (__m64)__builtin_ia32_vec_init_v8qi(__b0, __b1, __b2, __b3,
- __b4, __b5, __b6, __b7);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_set1_pi32(int __i)
-{
- return _mm_set_pi32(__i, __i);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_set1_pi16(short __w)
-{
- return _mm_set_pi16(__w, __w, __w, __w);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_set1_pi8(char __b)
-{
- return _mm_set_pi8(__b, __b, __b, __b, __b, __b, __b, __b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_setr_pi32(int __i1, int __i0)
-{
- return _mm_set_pi32(__i1, __i0);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_setr_pi16(short __w3, short __w2, short __w1, short __w0)
-{
- return _mm_set_pi16(__w3, __w2, __w1, __w0);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_setr_pi8(char __b7, char __b6, char __b5, char __b4, char __b3, char __b2,
- char __b1, char __b0)
-{
- return _mm_set_pi8(__b7, __b6, __b5, __b4, __b3, __b2, __b1, __b0);
-}
-
-
-/* Aliases for compatibility. */
-#define _m_empty _mm_empty
-#define _m_from_int _mm_cvtsi32_si64
-#define _m_to_int _mm_cvtsi64_si32
-#define _m_packsswb _mm_packs_pi16
-#define _m_packssdw _mm_packs_pi32
-#define _m_packuswb _mm_packs_pu16
-#define _m_punpckhbw _mm_unpackhi_pi8
-#define _m_punpckhwd _mm_unpackhi_pi16
-#define _m_punpckhdq _mm_unpackhi_pi32
-#define _m_punpcklbw _mm_unpacklo_pi8
-#define _m_punpcklwd _mm_unpacklo_pi16
-#define _m_punpckldq _mm_unpacklo_pi32
-#define _m_paddb _mm_add_pi8
-#define _m_paddw _mm_add_pi16
-#define _m_paddd _mm_add_pi32
-#define _m_paddsb _mm_adds_pi8
-#define _m_paddsw _mm_adds_pi16
-#define _m_paddusb _mm_adds_pu8
-#define _m_paddusw _mm_adds_pu16
-#define _m_psubb _mm_sub_pi8
-#define _m_psubw _mm_sub_pi16
-#define _m_psubd _mm_sub_pi32
-#define _m_psubsb _mm_subs_pi8
-#define _m_psubsw _mm_subs_pi16
-#define _m_psubusb _mm_subs_pu8
-#define _m_psubusw _mm_subs_pu16
-#define _m_pmaddwd _mm_madd_pi16
-#define _m_pmulhw _mm_mulhi_pi16
-#define _m_pmullw _mm_mullo_pi16
-#define _m_psllw _mm_sll_pi16
-#define _m_psllwi _mm_slli_pi16
-#define _m_pslld _mm_sll_pi32
-#define _m_pslldi _mm_slli_pi32
-#define _m_psllq _mm_sll_si64
-#define _m_psllqi _mm_slli_si64
-#define _m_psraw _mm_sra_pi16
-#define _m_psrawi _mm_srai_pi16
-#define _m_psrad _mm_sra_pi32
-#define _m_psradi _mm_srai_pi32
-#define _m_psrlw _mm_srl_pi16
-#define _m_psrlwi _mm_srli_pi16
-#define _m_psrld _mm_srl_pi32
-#define _m_psrldi _mm_srli_pi32
-#define _m_psrlq _mm_srl_si64
-#define _m_psrlqi _mm_srli_si64
-#define _m_pand _mm_and_si64
-#define _m_pandn _mm_andnot_si64
-#define _m_por _mm_or_si64
-#define _m_pxor _mm_xor_si64
-#define _m_pcmpeqb _mm_cmpeq_pi8
-#define _m_pcmpeqw _mm_cmpeq_pi16
-#define _m_pcmpeqd _mm_cmpeq_pi32
-#define _m_pcmpgtb _mm_cmpgt_pi8
-#define _m_pcmpgtw _mm_cmpgt_pi16
-#define _m_pcmpgtd _mm_cmpgt_pi32
-
-#endif /* __MMX__ */
-
-#endif /* __MMINTRIN_H */
-
diff --git a/13/renderscript/clang-include/nmmintrin.h b/13/renderscript/clang-include/nmmintrin.h
deleted file mode 100644
index f12622d..0000000
--- a/13/renderscript/clang-include/nmmintrin.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*===---- nmmintrin.h - SSE4 intrinsics ------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef _NMMINTRIN_H
-#define _NMMINTRIN_H
-
-#ifndef __SSE4_2__
-#error "SSE4.2 instruction set not enabled"
-#else
-
-/* To match expectations of gcc we put the sse4.2 definitions into smmintrin.h,
- just include it now then. */
-#include <smmintrin.h>
-#endif /* __SSE4_2__ */
-#endif /* _NMMINTRIN_H */
diff --git a/13/renderscript/clang-include/pmmintrin.h b/13/renderscript/clang-include/pmmintrin.h
deleted file mode 100644
index 7ca386c..0000000
--- a/13/renderscript/clang-include/pmmintrin.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*===---- pmmintrin.h - SSE3 intrinsics ------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __PMMINTRIN_H
-#define __PMMINTRIN_H
-
-#ifndef __SSE3__
-#error "SSE3 instruction set not enabled"
-#else
-
-#include <emmintrin.h>
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_lddqu_si128(__m128i const *p)
-{
- return (__m128i)__builtin_ia32_lddqu((char const *)p);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_addsub_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_addsubps(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_hadd_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_haddps(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_hsub_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_hsubps(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_movehdup_ps(__m128 a)
-{
- return __builtin_shufflevector(a, a, 1, 1, 3, 3);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_moveldup_ps(__m128 a)
-{
- return __builtin_shufflevector(a, a, 0, 0, 2, 2);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_addsub_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_addsubpd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_hadd_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_haddpd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_hsub_pd(__m128d a, __m128d b)
-{
- return __builtin_ia32_hsubpd(a, b);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_loaddup_pd(double const *dp)
-{
- return (__m128d){ *dp, *dp };
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_movedup_pd(__m128d a)
-{
- return __builtin_shufflevector(a, a, 0, 0);
-}
-
-#define _MM_DENORMALS_ZERO_ON (0x0040)
-#define _MM_DENORMALS_ZERO_OFF (0x0000)
-
-#define _MM_DENORMALS_ZERO_MASK (0x0040)
-
-#define _MM_GET_DENORMALS_ZERO_MODE() (_mm_getcsr() & _MM_DENORMALS_ZERO_MASK)
-#define _MM_SET_DENORMALS_ZERO_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_DENORMALS_ZERO_MASK) | (x)))
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_monitor(void const *p, unsigned extensions, unsigned hints)
-{
- __builtin_ia32_monitor((void *)p, extensions, hints);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_mwait(unsigned extensions, unsigned hints)
-{
- __builtin_ia32_mwait(extensions, hints);
-}
-
-#endif /* __SSE3__ */
-
-#endif /* __PMMINTRIN_H */
diff --git a/13/renderscript/clang-include/smmintrin.h b/13/renderscript/clang-include/smmintrin.h
deleted file mode 100644
index 2b8b321..0000000
--- a/13/renderscript/clang-include/smmintrin.h
+++ /dev/null
@@ -1,452 +0,0 @@
-/*===---- smmintrin.h - SSE4 intrinsics ------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef _SMMINTRIN_H
-#define _SMMINTRIN_H
-
-#ifndef __SSE4_1__
-#error "SSE4.1 instruction set not enabled"
-#else
-
-#include <tmmintrin.h>
-
-/* SSE4 Rounding macros. */
-#define _MM_FROUND_TO_NEAREST_INT 0x00
-#define _MM_FROUND_TO_NEG_INF 0x01
-#define _MM_FROUND_TO_POS_INF 0x02
-#define _MM_FROUND_TO_ZERO 0x03
-#define _MM_FROUND_CUR_DIRECTION 0x04
-
-#define _MM_FROUND_RAISE_EXC 0x00
-#define _MM_FROUND_NO_EXC 0x08
-
-#define _MM_FROUND_NINT (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_NEAREST_INT)
-#define _MM_FROUND_FLOOR (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_NEG_INF)
-#define _MM_FROUND_CEIL (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_POS_INF)
-#define _MM_FROUND_TRUNC (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_ZERO)
-#define _MM_FROUND_RINT (_MM_FROUND_RAISE_EXC | _MM_FROUND_CUR_DIRECTION)
-#define _MM_FROUND_NEARBYINT (_MM_FROUND_NO_EXC | _MM_FROUND_CUR_DIRECTION)
-
-#define _mm_ceil_ps(X) _mm_round_ps((X), _MM_FROUND_CEIL)
-#define _mm_ceil_pd(X) _mm_round_pd((X), _MM_FROUND_CEIL)
-#define _mm_ceil_ss(X, Y) _mm_round_ss((X), (Y), _MM_FROUND_CEIL)
-#define _mm_ceil_sd(X, Y) _mm_round_sd((X), (Y), _MM_FROUND_CEIL)
-
-#define _mm_floor_ps(X) _mm_round_ps((X), _MM_FROUND_FLOOR)
-#define _mm_floor_pd(X) _mm_round_pd((X), _MM_FROUND_FLOOR)
-#define _mm_floor_ss(X, Y) _mm_round_ss((X), (Y), _MM_FROUND_FLOOR)
-#define _mm_floor_sd(X, Y) _mm_round_sd((X), (Y), _MM_FROUND_FLOOR)
-
-#define _mm_round_ps(X, Y) __builtin_ia32_roundps((X), (Y))
-#define _mm_round_ss(X, Y, M) __builtin_ia32_roundss((X), (Y), (M))
-#define _mm_round_pd(X, M) __builtin_ia32_roundpd((X), (M))
-#define _mm_round_sd(X, Y, M) __builtin_ia32_roundsd((X), (Y), (M))
-
-/* SSE4 Packed Blending Intrinsics. */
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_blend_pd (__m128d __V1, __m128d __V2, const int __M)
-{
- return (__m128d) __builtin_ia32_blendpd ((__v2df)__V1, (__v2df)__V2, __M);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_blend_ps (__m128 __V1, __m128 __V2, const int __M)
-{
- return (__m128) __builtin_ia32_blendps ((__v4sf)__V1, (__v4sf)__V2, __M);
-}
-
-static __inline__ __m128d __attribute__((__always_inline__, __nodebug__))
-_mm_blendv_pd (__m128d __V1, __m128d __V2, __m128d __M)
-{
- return (__m128d) __builtin_ia32_blendvpd ((__v2df)__V1, (__v2df)__V2,
- (__v2df)__M);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_blendv_ps (__m128 __V1, __m128 __V2, __m128 __M)
-{
- return (__m128) __builtin_ia32_blendvps ((__v4sf)__V1, (__v4sf)__V2,
- (__v4sf)__M);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_blendv_epi8 (__m128i __V1, __m128i __V2, __m128i __M)
-{
- return (__m128i) __builtin_ia32_pblendvb128 ((__v16qi)__V1, (__v16qi)__V2,
- (__v16qi)__M);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_blend_epi16 (__m128i __V1, __m128i __V2, const int __M)
-{
- return (__m128i) __builtin_ia32_pblendw128 ((__v8hi)__V1, (__v8hi)__V2, __M);
-}
-
-/* SSE4 Dword Multiply Instructions. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mullo_epi32 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) ((__v4si)__V1 * (__v4si)__V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mul_epi32 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pmuldq128 ((__v4si)__V1, (__v4si)__V2);
-}
-
-/* SSE4 Floating Point Dot Product Instructions. */
-#define _mm_dp_ps(X, Y, M) __builtin_ia32_dpps ((X), (Y), (M))
-#define _mm_dp_pd(X, Y, M) __builtin_ia32_dppd ((X), (Y), (M))
-
-/* SSE4 Streaming Load Hint Instruction. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_stream_load_si128 (__m128i *__V)
-{
- return (__m128i) __builtin_ia32_movntdqa ((__v2di *) __V);
-}
-
-/* SSE4 Packed Integer Min/Max Instructions. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_min_epi8 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pminsb128 ((__v16qi) __V1, (__v16qi) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_max_epi8 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pmaxsb128 ((__v16qi) __V1, (__v16qi) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_min_epu16 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pminuw128 ((__v8hi) __V1, (__v8hi) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_max_epu16 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pmaxuw128 ((__v8hi) __V1, (__v8hi) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_min_epi32 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pminsd128 ((__v4si) __V1, (__v4si) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_max_epi32 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pmaxsd128 ((__v4si) __V1, (__v4si) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_min_epu32 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pminud128((__v4si) __V1, (__v4si) __V2);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_max_epu32 (__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pmaxud128((__v4si) __V1, (__v4si) __V2);
-}
-
-/* SSE4 Insertion and Extraction from XMM Register Instructions. */
-#define _mm_insert_ps(X, Y, N) __builtin_ia32_insertps128((X), (Y), (N))
-#define _mm_extract_ps(X, N) (__extension__ \
- ({ union { int i; float f; } __t; \
- __v4sf __a = (__v4sf)(X); \
- __t.f = __a[N]; \
- __t.i;}))
-
-/* Miscellaneous insert and extract macros. */
-/* Extract a single-precision float from X at index N into D. */
-#define _MM_EXTRACT_FLOAT(D, X, N) (__extension__ ({ __v4sf __a = (__v4sf)(X); \
- (D) = __a[N]; }))
-
-/* Or together 2 sets of indexes (X and Y) with the zeroing bits (Z) to create
- an index suitable for _mm_insert_ps. */
-#define _MM_MK_INSERTPS_NDX(X, Y, Z) (((X) << 6) | ((Y) << 4) | (Z))
-
-/* Extract a float from X at index N into the first index of the return. */
-#define _MM_PICK_OUT_PS(X, N) _mm_insert_ps (_mm_setzero_ps(), (X), \
- _MM_MK_INSERTPS_NDX((N), 0, 0x0e))
-
-/* Insert int into packed integer array at index. */
-#define _mm_insert_epi8(X, I, N) (__extension__ ({ __v16qi __a = (__v16qi)(X); \
- __a[N] = I; \
- __a;}))
-#define _mm_insert_epi32(X, I, N) (__extension__ ({ __v4si __a = (__v4si)(X); \
- __a[N] = I; \
- __a;}))
-#ifdef __x86_64__
-#define _mm_insert_epi64(X, I, N) (__extension__ ({ __v2di __a = (__v2di)(X); \
- __a[N] = I; \
- __a;}))
-#endif /* __x86_64__ */
-
-/* Extract int from packed integer array at index. This returns the element
- * as a zero extended value, so it is unsigned.
- */
-#define _mm_extract_epi8(X, N) (__extension__ ({ __v16qi __a = (__v16qi)(X); \
- (unsigned char)__a[N];}))
-#define _mm_extract_epi32(X, N) (__extension__ ({ __v4si __a = (__v4si)(X); \
- (unsigned)__a[N];}))
-#ifdef __x86_64__
-#define _mm_extract_epi64(X, N) (__extension__ ({ __v2di __a = (__v2di)(X); \
- __a[N];}))
-#endif /* __x86_64 */
-
-/* SSE4 128-bit Packed Integer Comparisons. */
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_testz_si128(__m128i __M, __m128i __V)
-{
- return __builtin_ia32_ptestz128((__v2di)__M, (__v2di)__V);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_testc_si128(__m128i __M, __m128i __V)
-{
- return __builtin_ia32_ptestc128((__v2di)__M, (__v2di)__V);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_testnzc_si128(__m128i __M, __m128i __V)
-{
- return __builtin_ia32_ptestnzc128((__v2di)__M, (__v2di)__V);
-}
-
-#define _mm_test_all_ones(V) _mm_testc_si128((V), _mm_cmpeq_epi32((V), (V)))
-#define _mm_test_mix_ones_zeros(M, V) _mm_testnzc_si128((M), (V))
-#define _mm_test_all_zeros(M, V) _mm_testz_si128 ((V), (V))
-
-/* SSE4 64-bit Packed Integer Comparisons. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_epi64(__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_pcmpeqq((__v2di)__V1, (__v2di)__V2);
-}
-
-/* SSE4 Packed Integer Sign-Extension. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi8_epi16(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovsxbw128((__v16qi) __V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi8_epi32(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovsxbd128((__v16qi) __V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi8_epi64(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovsxbq128((__v16qi) __V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi16_epi32(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovsxwd128((__v8hi) __V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi16_epi64(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovsxwq128((__v8hi)__V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepi32_epi64(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovsxdq128((__v4si)__V);
-}
-
-/* SSE4 Packed Integer Zero-Extension. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepu8_epi16(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovzxbw128((__v16qi) __V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepu8_epi32(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovzxbd128((__v16qi)__V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepu8_epi64(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovzxbq128((__v16qi)__V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepu16_epi32(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovzxwd128((__v8hi)__V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepu16_epi64(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovzxwq128((__v8hi)__V);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cvtepu32_epi64(__m128i __V)
-{
- return (__m128i) __builtin_ia32_pmovzxdq128((__v4si)__V);
-}
-
-/* SSE4 Pack with Unsigned Saturation. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_packus_epi32(__m128i __V1, __m128i __V2)
-{
- return (__m128i) __builtin_ia32_packusdw128((__v4si)__V1, (__v4si)__V2);
-}
-
-/* SSE4 Multiple Packed Sums of Absolute Difference. */
-#define _mm_mpsadbw_epu8(X, Y, M) __builtin_ia32_mpsadbw128((X), (Y), (M))
-
-/* These definitions are normally in nmmintrin.h, but gcc puts them in here
- so we'll do the same. */
-#ifdef __SSE4_2__
-
-/* These specify the type of data that we're comparing. */
-#define _SIDD_UBYTE_OPS 0x00
-#define _SIDD_UWORD_OPS 0x01
-#define _SIDD_SBYTE_OPS 0x02
-#define _SIDD_SWORD_OPS 0x03
-
-/* These specify the type of comparison operation. */
-#define _SIDD_CMP_EQUAL_ANY 0x00
-#define _SIDD_CMP_RANGES 0x04
-#define _SIDD_CMP_EQUAL_EACH 0x08
-#define _SIDD_CMP_EQUAL_ORDERED 0x0c
-
-/* These macros specify the polarity of the operation. */
-#define _SIDD_POSITIVE_POLARITY 0x00
-#define _SIDD_NEGATIVE_POLARITY 0x10
-#define _SIDD_MASKED_POSITIVE_POLARITY 0x20
-#define _SIDD_MASKED_NEGATIVE_POLARITY 0x30
-
-/* These macros are used in _mm_cmpXstri() to specify the return. */
-#define _SIDD_LEAST_SIGNIFICANT 0x00
-#define _SIDD_MOST_SIGNIFICANT 0x40
-
-/* These macros are used in _mm_cmpXstri() to specify the return. */
-#define _SIDD_BIT_MASK 0x00
-#define _SIDD_UNIT_MASK 0x40
-
-/* SSE4.2 Packed Comparison Intrinsics. */
-#define _mm_cmpistrm(A, B, M) __builtin_ia32_pcmpistrm128((A), (B), (M))
-#define _mm_cmpistri(A, B, M) __builtin_ia32_pcmpistri128((A), (B), (M))
-
-#define _mm_cmpestrm(A, LA, B, LB, M) \
- __builtin_ia32_pcmpestrm128((A), (LA), (B), (LB), (M))
-#define _mm_cmpestri(X, LX, Y, LY, M) \
- __builtin_ia32_pcmpestri128((A), (LA), (B), (LB), (M))
-
-/* SSE4.2 Packed Comparison Intrinsics and EFlag Reading. */
-#define _mm_cmpistra(A, LA, B, LB, M) \
- __builtin_ia32_pcmpistria128((A), (LA), (B), (LB), (M))
-#define _mm_cmpistrc(A, LA, B, LB, M) \
- __builtin_ia32_pcmpistric128((A), (LA), (B), (LB), (M))
-#define _mm_cmpistro(A, LA, B, LB, M) \
- __builtin_ia32_pcmpistrio128((A), (LA), (B), (LB), (M))
-#define _mm_cmpistrs(A, LA, B, LB, M) \
- __builtin_ia32_pcmpistris128((A), (LA), (B), (LB), (M))
-#define _mm_cmpistrz(A, LA, B, LB, M) \
- __builtin_ia32_pcmpistriz128((A), (LA), (B), (LB), (M))
-
-#define _mm_cmpestra(A, LA, B, LB, M) \
- __builtin_ia32_pcmpestria128((A), (LA), (B), (LB), (M))
-#define _mm_cmpestrc(A, LA, B, LB, M) \
- __builtin_ia32_pcmpestric128((A), (LA), (B), (LB), (M))
-#define _mm_cmpestro(A, LA, B, LB, M) \
- __builtin_ia32_pcmpestrio128((A), (LA), (B), (LB), (M))
-#define _mm_cmpestrs(A, LA, B, LB, M) \
- __builtin_ia32_pcmpestris128((A), (LA), (B), (LB), (M))
-#define _mm_cmpestrz(A, LA, B, LB, M) \
- __builtin_ia32_pcmpestriz128((A), (LA), (B), (LB), (M))
-
-/* SSE4.2 Compare Packed Data -- Greater Than. */
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_epi64(__m128i __V1, __m128i __V2)
-{
- return __builtin_ia32_pcmpgtq((__v2di)__V1, (__v2di)__V2);
-}
-
-/* SSE4.2 Accumulate CRC32. */
-static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__))
-_mm_crc32_u8(unsigned int __C, unsigned char __D)
-{
- return __builtin_ia32_crc32qi(__C, __D);
-}
-
-static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__))
-_mm_crc32_u16(unsigned int __C, unsigned short __D)
-{
- return __builtin_ia32_crc32hi(__C, __D);
-}
-
-static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__))
-_mm_crc32_u32(unsigned int __C, unsigned int __D)
-{
- return __builtin_ia32_crc32si(__C, __D);
-}
-
-#ifdef __x86_64__
-static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__))
-_mm_crc32_u64(unsigned long long __C, unsigned long long __D)
-{
- return __builtin_ia32_crc32di(__C, __D);
-}
-#endif /* __x86_64__ */
-
-/* SSE4.2 Population Count. */
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_popcnt_u32(unsigned int __A)
-{
- return __builtin_popcount(__A);
-}
-
-#ifdef __x86_64__
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_popcnt_u64(unsigned long long __A)
-{
- return __builtin_popcountll(__A);
-}
-#endif /* __x86_64__ */
-
-#endif /* __SSE4_2__ */
-#endif /* __SSE4_1__ */
-
-#endif /* _SMMINTRIN_H */
diff --git a/13/renderscript/clang-include/stdarg.h b/13/renderscript/clang-include/stdarg.h
deleted file mode 100644
index c36ab12..0000000
--- a/13/renderscript/clang-include/stdarg.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*===---- stdarg.h - Variable argument handling ----------------------------===
- *
- * Copyright (c) 2008 Eli Friedman
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __STDARG_H
-#define __STDARG_H
-
-#ifndef _VA_LIST
-typedef __builtin_va_list va_list;
-#define _VA_LIST
-#endif
-#define va_start(ap, param) __builtin_va_start(ap, param)
-#define va_end(ap) __builtin_va_end(ap)
-#define va_arg(ap, type) __builtin_va_arg(ap, type)
-
-/* GCC always defines __va_copy, but does not define va_copy unless in c99 mode
- * or -ansi is not specified, since it was not part of C90.
- */
-#define __va_copy(d,s) __builtin_va_copy(d,s)
-
-#if __STDC_VERSION__ >= 199900L || !defined(__STRICT_ANSI__)
-#define va_copy(dest, src) __builtin_va_copy(dest, src)
-#endif
-
-/* Hack required to make standard headers work, at least on Ubuntu */
-#define __GNUC_VA_LIST 1
-typedef __builtin_va_list __gnuc_va_list;
-
-#endif /* __STDARG_H */
diff --git a/13/renderscript/clang-include/stdbool.h b/13/renderscript/clang-include/stdbool.h
deleted file mode 100644
index 0467893..0000000
--- a/13/renderscript/clang-include/stdbool.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*===---- stdbool.h - Standard header for booleans -------------------------===
- *
- * Copyright (c) 2008 Eli Friedman
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __STDBOOL_H
-#define __STDBOOL_H
-
-/* Don't define bool, true, and false in C++, except as a GNU extension. */
-#ifndef __cplusplus
-#define bool _Bool
-#define true 1
-#define false 0
-#elif defined(__GNUC__) && !defined(__STRICT_ANSI__)
-/* Define _Bool, bool, false, true as a GNU extension. */
-#define _Bool bool
-#define bool bool
-#define false false
-#define true true
-#endif
-
-#define __bool_true_false_are_defined 1
-
-#endif /* __STDBOOL_H */
diff --git a/13/renderscript/clang-include/stddef.h b/13/renderscript/clang-include/stddef.h
deleted file mode 100644
index 7cc0bc1..0000000
--- a/13/renderscript/clang-include/stddef.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/*===---- stddef.h - Basic type definitions --------------------------------===
- *
- * Copyright (c) 2008 Eli Friedman
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __STDDEF_H
-#define __STDDEF_H
-
-typedef __typeof__(((int*)0)-((int*)0)) ptrdiff_t;
-#ifndef _SIZE_T
-#define _SIZE_T
-typedef __typeof__(sizeof(int)) size_t;
-#endif
-#ifndef __cplusplus
-#ifndef _WCHAR_T
-#define _WCHAR_T
-typedef __WCHAR_TYPE__ wchar_t;
-#endif
-#endif
-
-#undef NULL
-#ifdef __cplusplus
-#undef __null // VC++ hack.
-#define NULL __null
-#else
-#define NULL ((void*)0)
-#endif
-
-#define offsetof(t, d) __builtin_offsetof(t, d)
-
-#endif /* __STDDEF_H */
-
-/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use
-__WINT_TYPE__ directly; accomodate both by requiring __need_wint_t */
-#if defined(__need_wint_t)
-#if !defined(_WINT_T)
-#define _WINT_T
-typedef __WINT_TYPE__ wint_t;
-#endif /* _WINT_T */
-#undef __need_wint_t
-#endif /* __need_wint_t */
diff --git a/13/renderscript/clang-include/stdint.h b/13/renderscript/clang-include/stdint.h
deleted file mode 100644
index 9498ed5..0000000
--- a/13/renderscript/clang-include/stdint.h
+++ /dev/null
@@ -1,654 +0,0 @@
-/*===---- stdint.h - Standard header for sized integer types --------------===*\
- *
- * Copyright (c) 2009 Chris Lattner
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
-\*===----------------------------------------------------------------------===*/
-
-#ifndef __CLANG_STDINT_H
-#define __CLANG_STDINT_H
-
-/* If we're hosted, fall back to the system's stdint.h, which might have
- * additional definitions.
- */
-#if __STDC_HOSTED__ && \
- defined(__has_include_next) && __has_include_next(<stdint.h>)
-# include_next <stdint.h>
-#else
-
-/* C99 7.18.1.1 Exact-width integer types.
- * C99 7.18.1.2 Minimum-width integer types.
- * C99 7.18.1.3 Fastest minimum-width integer types.
- *
- * The standard requires that exact-width type be defined for 8-, 16-, 32-, and
- * 64-bit types if they are implemented. Other exact width types are optional.
- * This implementation defines an exact-width types for every integer width
- * that is represented in the standard integer types.
- *
- * The standard also requires minimum-width types be defined for 8-, 16-, 32-,
- * and 64-bit widths regardless of whether there are corresponding exact-width
- * types.
- *
- * To accomodate targets that are missing types that are exactly 8, 16, 32, or
- * 64 bits wide, this implementation takes an approach of cascading
- * redefintions, redefining __int_leastN_t to successively smaller exact-width
- * types. It is therefore important that the types are defined in order of
- * descending widths.
- *
- * We currently assume that the minimum-width types and the fastest
- * minimum-width types are the same. This is allowed by the standard, but is
- * suboptimal.
- *
- * In violation of the standard, some targets do not implement a type that is
- * wide enough to represent all of the required widths (8-, 16-, 32-, 64-bit).
- * To accomodate these targets, a required minimum-width type is only
- * defined if there exists an exact-width type of equal or greater width.
- */
-
-#ifdef __INT64_TYPE__
-# ifndef __int8_t_defined /* glibc sys/types.h also defines int64_t*/
-typedef signed __INT64_TYPE__ int64_t;
-# endif /* __int8_t_defined */
-typedef unsigned __INT64_TYPE__ uint64_t;
-# define __int_least64_t int64_t
-# define __uint_least64_t uint64_t
-# define __int_least32_t int64_t
-# define __uint_least32_t uint64_t
-# define __int_least16_t int64_t
-# define __uint_least16_t uint64_t
-# define __int_least8_t int64_t
-# define __uint_least8_t uint64_t
-#endif /* __INT64_TYPE__ */
-
-#ifdef __int_least64_t
-typedef __int_least64_t int_least64_t;
-typedef __uint_least64_t uint_least64_t;
-typedef __int_least64_t int_fast64_t;
-typedef __uint_least64_t uint_fast64_t;
-#endif /* __int_least64_t */
-
-#ifdef __INT56_TYPE__
-typedef signed __INT56_TYPE__ int56_t;
-typedef unsigned __INT56_TYPE__ uint56_t;
-typedef int56_t int_least56_t;
-typedef uint56_t uint_least56_t;
-typedef int56_t int_fast56_t;
-typedef uint56_t uint_fast56_t;
-# define __int_least32_t int56_t
-# define __uint_least32_t uint56_t
-# define __int_least16_t int56_t
-# define __uint_least16_t uint56_t
-# define __int_least8_t int56_t
-# define __uint_least8_t uint56_t
-#endif /* __INT56_TYPE__ */
-
-
-#ifdef __INT48_TYPE__
-typedef signed __INT48_TYPE__ int48_t;
-typedef unsigned __INT48_TYPE__ uint48_t;
-typedef int48_t int_least48_t;
-typedef uint48_t uint_least48_t;
-typedef int48_t int_fast48_t;
-typedef uint48_t uint_fast48_t;
-# define __int_least32_t int48_t
-# define __uint_least32_t uint48_t
-# define __int_least16_t int48_t
-# define __uint_least16_t uint48_t
-# define __int_least8_t int48_t
-# define __uint_least8_t uint48_t
-#endif /* __INT48_TYPE__ */
-
-
-#ifdef __INT40_TYPE__
-typedef signed __INT40_TYPE__ int40_t;
-typedef unsigned __INT40_TYPE__ uint40_t;
-typedef int40_t int_least40_t;
-typedef uint40_t uint_least40_t;
-typedef int40_t int_fast40_t;
-typedef uint40_t uint_fast40_t;
-# define __int_least32_t int40_t
-# define __uint_least32_t uint40_t
-# define __int_least16_t int40_t
-# define __uint_least16_t uint40_t
-# define __int_least8_t int40_t
-# define __uint_least8_t uint40_t
-#endif /* __INT40_TYPE__ */
-
-
-#ifdef __INT32_TYPE__
-
-# ifndef __int8_t_defined /* glibc sys/types.h also defines int32_t*/
-typedef signed __INT32_TYPE__ int32_t;
-# endif /* __int8_t_defined */
-
-# ifndef __uint32_t_defined /* more glibc compatibility */
-# define __uint32_t_defined
-typedef unsigned __INT32_TYPE__ uint32_t;
-# endif /* __uint32_t_defined */
-
-# define __int_least32_t int32_t
-# define __uint_least32_t uint32_t
-# define __int_least16_t int32_t
-# define __uint_least16_t uint32_t
-# define __int_least8_t int32_t
-# define __uint_least8_t uint32_t
-#endif /* __INT32_TYPE__ */
-
-#ifdef __int_least32_t
-typedef __int_least32_t int_least32_t;
-typedef __uint_least32_t uint_least32_t;
-typedef __int_least32_t int_fast32_t;
-typedef __uint_least32_t uint_fast32_t;
-#endif /* __int_least32_t */
-
-#ifdef __INT24_TYPE__
-typedef signed __INT24_TYPE__ int24_t;
-typedef unsigned __INT24_TYPE__ uint24_t;
-typedef int24_t int_least24_t;
-typedef uint24_t uint_least24_t;
-typedef int24_t int_fast24_t;
-typedef uint24_t uint_fast24_t;
-# define __int_least16_t int24_t
-# define __uint_least16_t uint24_t
-# define __int_least8_t int24_t
-# define __uint_least8_t uint24_t
-#endif /* __INT24_TYPE__ */
-
-#ifdef __INT16_TYPE__
-#ifndef __int8_t_defined /* glibc sys/types.h also defines int16_t*/
-typedef signed __INT16_TYPE__ int16_t;
-#endif /* __int8_t_defined */
-typedef unsigned __INT16_TYPE__ uint16_t;
-# define __int_least16_t int16_t
-# define __uint_least16_t uint16_t
-# define __int_least8_t int16_t
-# define __uint_least8_t uint16_t
-#endif /* __INT16_TYPE__ */
-
-#ifdef __int_least16_t
-typedef __int_least16_t int_least16_t;
-typedef __uint_least16_t uint_least16_t;
-typedef __int_least16_t int_fast16_t;
-typedef __uint_least16_t uint_fast16_t;
-#endif /* __int_least16_t */
-
-
-#ifdef __INT8_TYPE__
-#ifndef __int8_t_defined /* glibc sys/types.h also defines int8_t*/
-typedef signed __INT8_TYPE__ int8_t;
-#endif /* __int8_t_defined */
-typedef unsigned __INT8_TYPE__ uint8_t;
-# define __int_least8_t int8_t
-# define __uint_least8_t uint8_t
-#endif /* __INT8_TYPE__ */
-
-#ifdef __int_least8_t
-typedef __int_least8_t int_least8_t;
-typedef __uint_least8_t uint_least8_t;
-typedef __int_least8_t int_fast8_t;
-typedef __uint_least8_t uint_fast8_t;
-#endif /* __int_least8_t */
-
-/* prevent glibc sys/types.h from defining conflicting types */
-#ifndef __int8_t_defined
-# define __int8_t_defined
-#endif /* __int8_t_defined */
-
-/* C99 7.18.1.4 Integer types capable of holding object pointers.
- */
-#define __stdint_join3(a,b,c) a ## b ## c
-
-#define __intn_t(n) __stdint_join3( int, n, _t)
-#define __uintn_t(n) __stdint_join3(uint, n, _t)
-
-#ifndef _INTPTR_T
-#ifndef __intptr_t_defined
-typedef __intn_t(__INTPTR_WIDTH__) intptr_t;
-#define __intptr_t_defined
-#define _INTPTR_T
-#endif
-#endif
-
-#ifndef _UINTPTR_T
-typedef __uintn_t(__INTPTR_WIDTH__) uintptr_t;
-#define _UINTPTR_T
-#endif
-
-/* C99 7.18.1.5 Greatest-width integer types.
- */
-typedef __INTMAX_TYPE__ intmax_t;
-typedef __UINTMAX_TYPE__ uintmax_t;
-
-/* C99 7.18.4 Macros for minimum-width integer constants.
- *
- * The standard requires that integer constant macros be defined for all the
- * minimum-width types defined above. As 8-, 16-, 32-, and 64-bit minimum-width
- * types are required, the corresponding integer constant macros are defined
- * here. This implementation also defines minimum-width types for every other
- * integer width that the target implements, so corresponding macros are
- * defined below, too.
- *
- * These macros are defined using the same successive-shrinking approach as
- * the type definitions above. It is likewise important that macros are defined
- * in order of decending width.
- *
- * Note that C++ should not check __STDC_CONSTANT_MACROS here, contrary to the
- * claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]).
- */
-
-#define __int_c_join(a, b) a ## b
-#define __int_c(v, suffix) __int_c_join(v, suffix)
-#define __uint_c(v, suffix) __int_c_join(v##U, suffix)
-
-
-#ifdef __INT64_TYPE__
-# ifdef __INT64_C_SUFFIX__
-# define __int64_c_suffix __INT64_C_SUFFIX__
-# define __int32_c_suffix __INT64_C_SUFFIX__
-# define __int16_c_suffix __INT64_C_SUFFIX__
-# define __int8_c_suffix __INT64_C_SUFFIX__
-# else
-# undef __int64_c_suffix
-# undef __int32_c_suffix
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT64_C_SUFFIX__ */
-#endif /* __INT64_TYPE__ */
-
-#ifdef __int_least64_t
-# ifdef __int64_c_suffix
-# define INT64_C(v) __int_c(v, __int64_c_suffix)
-# define UINT64_C(v) __uint_c(v, __int64_c_suffix)
-# else
-# define INT64_C(v) v
-# define UINT64_C(v) v ## U
-# endif /* __int64_c_suffix */
-#endif /* __int_least64_t */
-
-
-#ifdef __INT56_TYPE__
-# ifdef __INT56_C_SUFFIX__
-# define INT56_C(v) __int_c(v, __INT56_C_SUFFIX__)
-# define UINT56_C(v) __uint_c(v, __INT56_C_SUFFIX__)
-# define __int32_c_suffix __INT56_C_SUFFIX__
-# define __int16_c_suffix __INT56_C_SUFFIX__
-# define __int8_c_suffix __INT56_C_SUFFIX__
-# else
-# define INT56_C(v) v
-# define UINT56_C(v) v ## U
-# undef __int32_c_suffix
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT56_C_SUFFIX__ */
-#endif /* __INT56_TYPE__ */
-
-
-#ifdef __INT48_TYPE__
-# ifdef __INT48_C_SUFFIX__
-# define INT48_C(v) __int_c(v, __INT48_C_SUFFIX__)
-# define UINT48_C(v) __uint_c(v, __INT48_C_SUFFIX__)
-# define __int32_c_suffix __INT48_C_SUFFIX__
-# define __int16_c_suffix __INT48_C_SUFFIX__
-# define __int8_c_suffix __INT48_C_SUFFIX__
-# else
-# define INT48_C(v) v
-# define UINT48_C(v) v ## U
-# undef __int32_c_suffix
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT48_C_SUFFIX__ */
-#endif /* __INT48_TYPE__ */
-
-
-#ifdef __INT40_TYPE__
-# ifdef __INT40_C_SUFFIX__
-# define INT40_C(v) __int_c(v, __INT40_C_SUFFIX__)
-# define UINT40_C(v) __uint_c(v, __INT40_C_SUFFIX__)
-# define __int32_c_suffix __INT40_C_SUFFIX__
-# define __int16_c_suffix __INT40_C_SUFFIX__
-# define __int8_c_suffix __INT40_C_SUFFIX__
-# else
-# define INT40_C(v) v
-# define UINT40_C(v) v ## U
-# undef __int32_c_suffix
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT40_C_SUFFIX__ */
-#endif /* __INT40_TYPE__ */
-
-
-#ifdef __INT32_TYPE__
-# ifdef __INT32_C_SUFFIX__
-# define __int32_c_suffix __INT32_C_SUFFIX__
-# define __int16_c_suffix __INT32_C_SUFFIX__
-# define __int8_c_suffix __INT32_C_SUFFIX__
-#else
-# undef __int32_c_suffix
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT32_C_SUFFIX__ */
-#endif /* __INT32_TYPE__ */
-
-#ifdef __int_least32_t
-# ifdef __int32_c_suffix
-# define INT32_C(v) __int_c(v, __int32_c_suffix)
-# define UINT32_C(v) __uint_c(v, __int32_c_suffix)
-# else
-# define INT32_C(v) v
-# define UINT32_C(v) v ## U
-# endif /* __int32_c_suffix */
-#endif /* __int_least32_t */
-
-
-#ifdef __INT24_TYPE__
-# ifdef __INT24_C_SUFFIX__
-# define INT24_C(v) __int_c(v, __INT24_C_SUFFIX__)
-# define UINT24_C(v) __uint_c(v, __INT24_C_SUFFIX__)
-# define __int16_c_suffix __INT24_C_SUFFIX__
-# define __int8_c_suffix __INT24_C_SUFFIX__
-# else
-# define INT24_C(v) v
-# define UINT24_C(v) v ## U
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT24_C_SUFFIX__ */
-#endif /* __INT24_TYPE__ */
-
-
-#ifdef __INT16_TYPE__
-# ifdef __INT16_C_SUFFIX__
-# define __int16_c_suffix __INT16_C_SUFFIX__
-# define __int8_c_suffix __INT16_C_SUFFIX__
-#else
-# undef __int16_c_suffix
-# undef __int8_c_suffix
-# endif /* __INT16_C_SUFFIX__ */
-#endif /* __INT16_TYPE__ */
-
-#ifdef __int_least16_t
-# ifdef __int16_c_suffix
-# define INT16_C(v) __int_c(v, __int16_c_suffix)
-# define UINT16_C(v) __uint_c(v, __int16_c_suffix)
-# else
-# define INT16_C(v) v
-# define UINT16_C(v) v ## U
-# endif /* __int16_c_suffix */
-#endif /* __int_least16_t */
-
-
-#ifdef __INT8_TYPE__
-# ifdef __INT8_C_SUFFIX__
-# define __int8_c_suffix __INT8_C_SUFFIX__
-#else
-# undef __int8_c_suffix
-# endif /* __INT8_C_SUFFIX__ */
-#endif /* __INT8_TYPE__ */
-
-#ifdef __int_least8_t
-# ifdef __int8_c_suffix
-# define INT8_C(v) __int_c(v, __int8_c_suffix)
-# define UINT8_C(v) __uint_c(v, __int8_c_suffix)
-# else
-# define INT8_C(v) v
-# define UINT8_C(v) v ## U
-# endif /* __int8_c_suffix */
-#endif /* __int_least8_t */
-
-
-/* C99 7.18.2.1 Limits of exact-width integer types.
- * C99 7.18.2.2 Limits of minimum-width integer types.
- * C99 7.18.2.3 Limits of fastest minimum-width integer types.
- *
- * The presence of limit macros are completely optional in C99. This
- * implementation defines limits for all of the types (exact- and
- * minimum-width) that it defines above, using the limits of the minimum-width
- * type for any types that do not have exact-width representations.
- *
- * As in the type definitions, this section takes an approach of
- * successive-shrinking to determine which limits to use for the standard (8,
- * 16, 32, 64) bit widths when they don't have exact representations. It is
- * therefore important that the defintions be kept in order of decending
- * widths.
- *
- * Note that C++ should not check __STDC_LIMIT_MACROS here, contrary to the
- * claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]).
- */
-
-#ifdef __INT64_TYPE__
-# define INT64_MAX INT64_C( 9223372036854775807)
-# define INT64_MIN (-INT64_C( 9223372036854775807)-1)
-# define UINT64_MAX UINT64_C(18446744073709551615)
-# define __INT_LEAST64_MIN INT64_MIN
-# define __INT_LEAST64_MAX INT64_MAX
-# define __UINT_LEAST64_MAX UINT64_MAX
-# define __INT_LEAST32_MIN INT64_MIN
-# define __INT_LEAST32_MAX INT64_MAX
-# define __UINT_LEAST32_MAX UINT64_MAX
-# define __INT_LEAST16_MIN INT64_MIN
-# define __INT_LEAST16_MAX INT64_MAX
-# define __UINT_LEAST16_MAX UINT64_MAX
-# define __INT_LEAST8_MIN INT64_MIN
-# define __INT_LEAST8_MAX INT64_MAX
-# define __UINT_LEAST8_MAX UINT64_MAX
-#endif /* __INT64_TYPE__ */
-
-#ifdef __INT_LEAST64_MIN
-# define INT_LEAST64_MIN __INT_LEAST64_MIN
-# define INT_LEAST64_MAX __INT_LEAST64_MAX
-# define UINT_LEAST64_MAX __UINT_LEAST64_MAX
-# define INT_FAST64_MIN __INT_LEAST64_MIN
-# define INT_FAST64_MAX __INT_LEAST64_MAX
-# define UINT_FAST64_MAX __UINT_LEAST64_MAX
-#endif /* __INT_LEAST64_MIN */
-
-
-#ifdef __INT56_TYPE__
-# define INT56_MAX INT56_C(36028797018963967)
-# define INT56_MIN (-INT56_C(36028797018963967)-1)
-# define UINT56_MAX UINT56_C(72057594037927935)
-# define INT_LEAST56_MIN INT56_MIN
-# define INT_LEAST56_MAX INT56_MAX
-# define UINT_LEAST56_MAX UINT56_MAX
-# define INT_FAST56_MIN INT56_MIN
-# define INT_FAST56_MAX INT56_MAX
-# define UINT_FAST56_MAX UINT56_MAX
-# define __INT_LEAST32_MIN INT56_MIN
-# define __INT_LEAST32_MAX INT56_MAX
-# define __UINT_LEAST32_MAX UINT56_MAX
-# define __INT_LEAST16_MIN INT56_MIN
-# define __INT_LEAST16_MAX INT56_MAX
-# define __UINT_LEAST16_MAX UINT56_MAX
-# define __INT_LEAST8_MIN INT56_MIN
-# define __INT_LEAST8_MAX INT56_MAX
-# define __UINT_LEAST8_MAX UINT56_MAX
-#endif /* __INT56_TYPE__ */
-
-
-#ifdef __INT48_TYPE__
-# define INT48_MAX INT48_C(140737488355327)
-# define INT48_MIN (-INT48_C(140737488355327)-1)
-# define UINT48_MAX UINT48_C(281474976710655)
-# define INT_LEAST48_MIN INT48_MIN
-# define INT_LEAST48_MAX INT48_MAX
-# define UINT_LEAST48_MAX UINT48_MAX
-# define INT_FAST48_MIN INT48_MIN
-# define INT_FAST48_MAX INT48_MAX
-# define UINT_FAST48_MAX UINT48_MAX
-# define __INT_LEAST32_MIN INT48_MIN
-# define __INT_LEAST32_MAX INT48_MAX
-# define __UINT_LEAST32_MAX UINT48_MAX
-# define __INT_LEAST16_MIN INT48_MIN
-# define __INT_LEAST16_MAX INT48_MAX
-# define __UINT_LEAST16_MAX UINT48_MAX
-# define __INT_LEAST8_MIN INT48_MIN
-# define __INT_LEAST8_MAX INT48_MAX
-# define __UINT_LEAST8_MAX UINT48_MAX
-#endif /* __INT48_TYPE__ */
-
-
-#ifdef __INT40_TYPE__
-# define INT40_MAX INT40_C(549755813887)
-# define INT40_MIN (-INT40_C(549755813887)-1)
-# define UINT40_MAX UINT40_C(1099511627775)
-# define INT_LEAST40_MIN INT40_MIN
-# define INT_LEAST40_MAX INT40_MAX
-# define UINT_LEAST40_MAX UINT40_MAX
-# define INT_FAST40_MIN INT40_MIN
-# define INT_FAST40_MAX INT40_MAX
-# define UINT_FAST40_MAX UINT40_MAX
-# define __INT_LEAST32_MIN INT40_MIN
-# define __INT_LEAST32_MAX INT40_MAX
-# define __UINT_LEAST32_MAX UINT40_MAX
-# define __INT_LEAST16_MIN INT40_MIN
-# define __INT_LEAST16_MAX INT40_MAX
-# define __UINT_LEAST16_MAX UINT40_MAX
-# define __INT_LEAST8_MIN INT40_MIN
-# define __INT_LEAST8_MAX INT40_MAX
-# define __UINT_LEAST8_MAX UINT40_MAX
-#endif /* __INT40_TYPE__ */
-
-
-#ifdef __INT32_TYPE__
-# define INT32_MAX INT32_C(2147483647)
-# define INT32_MIN (-INT32_C(2147483647)-1)
-# define UINT32_MAX UINT32_C(4294967295)
-# define __INT_LEAST32_MIN INT32_MIN
-# define __INT_LEAST32_MAX INT32_MAX
-# define __UINT_LEAST32_MAX UINT32_MAX
-# define __INT_LEAST16_MIN INT32_MIN
-# define __INT_LEAST16_MAX INT32_MAX
-# define __UINT_LEAST16_MAX UINT32_MAX
-# define __INT_LEAST8_MIN INT32_MIN
-# define __INT_LEAST8_MAX INT32_MAX
-# define __UINT_LEAST8_MAX UINT32_MAX
-#endif /* __INT32_TYPE__ */
-
-#ifdef __INT_LEAST32_MIN
-# define INT_LEAST32_MIN __INT_LEAST32_MIN
-# define INT_LEAST32_MAX __INT_LEAST32_MAX
-# define UINT_LEAST32_MAX __UINT_LEAST32_MAX
-# define INT_FAST32_MIN __INT_LEAST32_MIN
-# define INT_FAST32_MAX __INT_LEAST32_MAX
-# define UINT_FAST32_MAX __UINT_LEAST32_MAX
-#endif /* __INT_LEAST32_MIN */
-
-
-#ifdef __INT24_TYPE__
-# define INT24_MAX INT24_C(8388607)
-# define INT24_MIN (-INT24_C(8388607)-1)
-# define UINT24_MAX UINT24_C(16777215)
-# define INT_LEAST24_MIN INT24_MIN
-# define INT_LEAST24_MAX INT24_MAX
-# define UINT_LEAST24_MAX UINT24_MAX
-# define INT_FAST24_MIN INT24_MIN
-# define INT_FAST24_MAX INT24_MAX
-# define UINT_FAST24_MAX UINT24_MAX
-# define __INT_LEAST16_MIN INT24_MIN
-# define __INT_LEAST16_MAX INT24_MAX
-# define __UINT_LEAST16_MAX UINT24_MAX
-# define __INT_LEAST8_MIN INT24_MIN
-# define __INT_LEAST8_MAX INT24_MAX
-# define __UINT_LEAST8_MAX UINT24_MAX
-#endif /* __INT24_TYPE__ */
-
-
-#ifdef __INT16_TYPE__
-#define INT16_MAX INT16_C(32767)
-#define INT16_MIN (-INT16_C(32767)-1)
-#define UINT16_MAX UINT16_C(65535)
-# define __INT_LEAST16_MIN INT16_MIN
-# define __INT_LEAST16_MAX INT16_MAX
-# define __UINT_LEAST16_MAX UINT16_MAX
-# define __INT_LEAST8_MIN INT16_MIN
-# define __INT_LEAST8_MAX INT16_MAX
-# define __UINT_LEAST8_MAX UINT16_MAX
-#endif /* __INT16_TYPE__ */
-
-#ifdef __INT_LEAST16_MIN
-# define INT_LEAST16_MIN __INT_LEAST16_MIN
-# define INT_LEAST16_MAX __INT_LEAST16_MAX
-# define UINT_LEAST16_MAX __UINT_LEAST16_MAX
-# define INT_FAST16_MIN __INT_LEAST16_MIN
-# define INT_FAST16_MAX __INT_LEAST16_MAX
-# define UINT_FAST16_MAX __UINT_LEAST16_MAX
-#endif /* __INT_LEAST16_MIN */
-
-
-#ifdef __INT8_TYPE__
-# define INT8_MAX INT8_C(127)
-# define INT8_MIN (-INT8_C(127)-1)
-# define UINT8_MAX UINT8_C(255)
-# define __INT_LEAST8_MIN INT8_MIN
-# define __INT_LEAST8_MAX INT8_MAX
-# define __UINT_LEAST8_MAX UINT8_MAX
-#endif /* __INT8_TYPE__ */
-
-#ifdef __INT_LEAST8_MIN
-# define INT_LEAST8_MIN __INT_LEAST8_MIN
-# define INT_LEAST8_MAX __INT_LEAST8_MAX
-# define UINT_LEAST8_MAX __UINT_LEAST8_MAX
-# define INT_FAST8_MIN __INT_LEAST8_MIN
-# define INT_FAST8_MAX __INT_LEAST8_MAX
-# define UINT_FAST8_MAX __UINT_LEAST8_MAX
-#endif /* __INT_LEAST8_MIN */
-
-/* C99 7.18.2.4 Limits of integer types capable of holding object pointers. */
-/* C99 7.18.3 Limits of other integer types. */
-#define __INTN_MIN(n) __stdint_join3( INT, n, _MIN)
-#define __INTN_MAX(n) __stdint_join3( INT, n, _MAX)
-#define __UINTN_MAX(n) __stdint_join3(UINT, n, _MAX)
-
-#define INTPTR_MIN __INTN_MIN(__INTPTR_WIDTH__)
-#define INTPTR_MAX __INTN_MAX(__INTPTR_WIDTH__)
-#define UINTPTR_MAX __UINTN_MAX(__INTPTR_WIDTH__)
-#define PTRDIFF_MIN __INTN_MIN(__PTRDIFF_WIDTH__)
-#define PTRDIFF_MAX __INTN_MAX(__PTRDIFF_WIDTH__)
-#define SIZE_MAX __UINTN_MAX(__SIZE_WIDTH__)
-
-/* C99 7.18.2.5 Limits of greatest-width integer types. */
-#define INTMAX_MIN __INTN_MIN(__INTMAX_WIDTH__)
-#define INTMAX_MAX __INTN_MAX(__INTMAX_WIDTH__)
-#define UINTMAX_MAX __UINTN_MAX(__INTMAX_WIDTH__)
-
-/* C99 7.18.3 Limits of other integer types. */
-#define SIG_ATOMIC_MIN __INTN_MIN(__SIG_ATOMIC_WIDTH__)
-#define SIG_ATOMIC_MAX __INTN_MAX(__SIG_ATOMIC_WIDTH__)
-#define WINT_MIN __INTN_MIN(__WINT_WIDTH__)
-#define WINT_MAX __INTN_MAX(__WINT_WIDTH__)
-
-/* FIXME: if we ever support a target with unsigned wchar_t, this should be
- * 0 .. Max.
- */
-#ifndef WCHAR_MAX
-#define WCHAR_MAX __INTN_MAX(__WCHAR_WIDTH__)
-#endif
-#ifndef WCHAR_MIN
-#define WCHAR_MIN __INTN_MIN(__WCHAR_WIDTH__)
-#endif
-
-/* 7.18.4.2 Macros for greatest-width integer constants. */
-#define __INTN_C(n, v) __stdint_join3( INT, n, _C(v))
-#define __UINTN_C(n, v) __stdint_join3(UINT, n, _C(v))
-
-#define INTMAX_C(v) __INTN_C(__INTMAX_WIDTH__, v)
-#define UINTMAX_C(v) __UINTN_C(__INTMAX_WIDTH__, v)
-
-#endif /* __STDC_HOSTED__ */
-#endif /* __CLANG_STDINT_H */
diff --git a/13/renderscript/clang-include/tgmath.h b/13/renderscript/clang-include/tgmath.h
deleted file mode 100644
index e1a0023..0000000
--- a/13/renderscript/clang-include/tgmath.h
+++ /dev/null
@@ -1,1358 +0,0 @@
-/*===---- tgmath.h - Standard header for type generic math ----------------===*\
- *
- * Copyright (c) 2009 Howard Hinnant
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
-\*===----------------------------------------------------------------------===*/
-
-#ifndef __TGMATH_H
-#define __TGMATH_H
-
-/* C99 7.22 Type-generic math <tgmath.h>. */
-#include <math.h>
-
-/* C++ handles type genericity with overloading in math.h. */
-#ifndef __cplusplus
-#include <complex.h>
-
-#define _TG_ATTRSp __attribute__((__overloadable__))
-#define _TG_ATTRS __attribute__((__overloadable__, __always_inline__))
-
-// promotion
-
-typedef void _Argument_type_is_not_arithmetic;
-static _Argument_type_is_not_arithmetic __tg_promote(...)
- __attribute__((__unavailable__,__overloadable__));
-static double _TG_ATTRSp __tg_promote(int);
-static double _TG_ATTRSp __tg_promote(unsigned int);
-static double _TG_ATTRSp __tg_promote(long);
-static double _TG_ATTRSp __tg_promote(unsigned long);
-static double _TG_ATTRSp __tg_promote(long long);
-static double _TG_ATTRSp __tg_promote(unsigned long long);
-static float _TG_ATTRSp __tg_promote(float);
-static double _TG_ATTRSp __tg_promote(double);
-static long double _TG_ATTRSp __tg_promote(long double);
-static float _Complex _TG_ATTRSp __tg_promote(float _Complex);
-static double _Complex _TG_ATTRSp __tg_promote(double _Complex);
-static long double _Complex _TG_ATTRSp __tg_promote(long double _Complex);
-
-#define __tg_promote1(__x) (__typeof__(__tg_promote(__x)))
-#define __tg_promote2(__x, __y) (__typeof__(__tg_promote(__x) + \
- __tg_promote(__y)))
-#define __tg_promote3(__x, __y, __z) (__typeof__(__tg_promote(__x) + \
- __tg_promote(__y) + \
- __tg_promote(__z)))
-
-// acos
-
-static float
- _TG_ATTRS
- __tg_acos(float __x) {return acosf(__x);}
-
-static double
- _TG_ATTRS
- __tg_acos(double __x) {return acos(__x);}
-
-static long double
- _TG_ATTRS
- __tg_acos(long double __x) {return acosl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_acos(float _Complex __x) {return cacosf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_acos(double _Complex __x) {return cacos(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_acos(long double _Complex __x) {return cacosl(__x);}
-
-#undef acos
-#define acos(__x) __tg_acos(__tg_promote1((__x))(__x))
-
-// asin
-
-static float
- _TG_ATTRS
- __tg_asin(float __x) {return asinf(__x);}
-
-static double
- _TG_ATTRS
- __tg_asin(double __x) {return asin(__x);}
-
-static long double
- _TG_ATTRS
- __tg_asin(long double __x) {return asinl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_asin(float _Complex __x) {return casinf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_asin(double _Complex __x) {return casin(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_asin(long double _Complex __x) {return casinl(__x);}
-
-#undef asin
-#define asin(__x) __tg_asin(__tg_promote1((__x))(__x))
-
-// atan
-
-static float
- _TG_ATTRS
- __tg_atan(float __x) {return atanf(__x);}
-
-static double
- _TG_ATTRS
- __tg_atan(double __x) {return atan(__x);}
-
-static long double
- _TG_ATTRS
- __tg_atan(long double __x) {return atanl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_atan(float _Complex __x) {return catanf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_atan(double _Complex __x) {return catan(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_atan(long double _Complex __x) {return catanl(__x);}
-
-#undef atan
-#define atan(__x) __tg_atan(__tg_promote1((__x))(__x))
-
-// acosh
-
-static float
- _TG_ATTRS
- __tg_acosh(float __x) {return acoshf(__x);}
-
-static double
- _TG_ATTRS
- __tg_acosh(double __x) {return acosh(__x);}
-
-static long double
- _TG_ATTRS
- __tg_acosh(long double __x) {return acoshl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_acosh(float _Complex __x) {return cacoshf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_acosh(double _Complex __x) {return cacosh(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_acosh(long double _Complex __x) {return cacoshl(__x);}
-
-#undef acosh
-#define acosh(__x) __tg_acosh(__tg_promote1((__x))(__x))
-
-// asinh
-
-static float
- _TG_ATTRS
- __tg_asinh(float __x) {return asinhf(__x);}
-
-static double
- _TG_ATTRS
- __tg_asinh(double __x) {return asinh(__x);}
-
-static long double
- _TG_ATTRS
- __tg_asinh(long double __x) {return asinhl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_asinh(float _Complex __x) {return casinhf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_asinh(double _Complex __x) {return casinh(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_asinh(long double _Complex __x) {return casinhl(__x);}
-
-#undef asinh
-#define asinh(__x) __tg_asinh(__tg_promote1((__x))(__x))
-
-// atanh
-
-static float
- _TG_ATTRS
- __tg_atanh(float __x) {return atanhf(__x);}
-
-static double
- _TG_ATTRS
- __tg_atanh(double __x) {return atanh(__x);}
-
-static long double
- _TG_ATTRS
- __tg_atanh(long double __x) {return atanhl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_atanh(float _Complex __x) {return catanhf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_atanh(double _Complex __x) {return catanh(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_atanh(long double _Complex __x) {return catanhl(__x);}
-
-#undef atanh
-#define atanh(__x) __tg_atanh(__tg_promote1((__x))(__x))
-
-// cos
-
-static float
- _TG_ATTRS
- __tg_cos(float __x) {return cosf(__x);}
-
-static double
- _TG_ATTRS
- __tg_cos(double __x) {return cos(__x);}
-
-static long double
- _TG_ATTRS
- __tg_cos(long double __x) {return cosl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_cos(float _Complex __x) {return ccosf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_cos(double _Complex __x) {return ccos(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_cos(long double _Complex __x) {return ccosl(__x);}
-
-#undef cos
-#define cos(__x) __tg_cos(__tg_promote1((__x))(__x))
-
-// sin
-
-static float
- _TG_ATTRS
- __tg_sin(float __x) {return sinf(__x);}
-
-static double
- _TG_ATTRS
- __tg_sin(double __x) {return sin(__x);}
-
-static long double
- _TG_ATTRS
- __tg_sin(long double __x) {return sinl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_sin(float _Complex __x) {return csinf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_sin(double _Complex __x) {return csin(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_sin(long double _Complex __x) {return csinl(__x);}
-
-#undef sin
-#define sin(__x) __tg_sin(__tg_promote1((__x))(__x))
-
-// tan
-
-static float
- _TG_ATTRS
- __tg_tan(float __x) {return tanf(__x);}
-
-static double
- _TG_ATTRS
- __tg_tan(double __x) {return tan(__x);}
-
-static long double
- _TG_ATTRS
- __tg_tan(long double __x) {return tanl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_tan(float _Complex __x) {return ctanf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_tan(double _Complex __x) {return ctan(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_tan(long double _Complex __x) {return ctanl(__x);}
-
-#undef tan
-#define tan(__x) __tg_tan(__tg_promote1((__x))(__x))
-
-// cosh
-
-static float
- _TG_ATTRS
- __tg_cosh(float __x) {return coshf(__x);}
-
-static double
- _TG_ATTRS
- __tg_cosh(double __x) {return cosh(__x);}
-
-static long double
- _TG_ATTRS
- __tg_cosh(long double __x) {return coshl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_cosh(float _Complex __x) {return ccoshf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_cosh(double _Complex __x) {return ccosh(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_cosh(long double _Complex __x) {return ccoshl(__x);}
-
-#undef cosh
-#define cosh(__x) __tg_cosh(__tg_promote1((__x))(__x))
-
-// sinh
-
-static float
- _TG_ATTRS
- __tg_sinh(float __x) {return sinhf(__x);}
-
-static double
- _TG_ATTRS
- __tg_sinh(double __x) {return sinh(__x);}
-
-static long double
- _TG_ATTRS
- __tg_sinh(long double __x) {return sinhl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_sinh(float _Complex __x) {return csinhf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_sinh(double _Complex __x) {return csinh(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_sinh(long double _Complex __x) {return csinhl(__x);}
-
-#undef sinh
-#define sinh(__x) __tg_sinh(__tg_promote1((__x))(__x))
-
-// tanh
-
-static float
- _TG_ATTRS
- __tg_tanh(float __x) {return tanhf(__x);}
-
-static double
- _TG_ATTRS
- __tg_tanh(double __x) {return tanh(__x);}
-
-static long double
- _TG_ATTRS
- __tg_tanh(long double __x) {return tanhl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_tanh(float _Complex __x) {return ctanhf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_tanh(double _Complex __x) {return ctanh(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_tanh(long double _Complex __x) {return ctanhl(__x);}
-
-#undef tanh
-#define tanh(__x) __tg_tanh(__tg_promote1((__x))(__x))
-
-// exp
-
-static float
- _TG_ATTRS
- __tg_exp(float __x) {return expf(__x);}
-
-static double
- _TG_ATTRS
- __tg_exp(double __x) {return exp(__x);}
-
-static long double
- _TG_ATTRS
- __tg_exp(long double __x) {return expl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_exp(float _Complex __x) {return cexpf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_exp(double _Complex __x) {return cexp(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_exp(long double _Complex __x) {return cexpl(__x);}
-
-#undef exp
-#define exp(__x) __tg_exp(__tg_promote1((__x))(__x))
-
-// log
-
-static float
- _TG_ATTRS
- __tg_log(float __x) {return logf(__x);}
-
-static double
- _TG_ATTRS
- __tg_log(double __x) {return log(__x);}
-
-static long double
- _TG_ATTRS
- __tg_log(long double __x) {return logl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_log(float _Complex __x) {return clogf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_log(double _Complex __x) {return clog(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_log(long double _Complex __x) {return clogl(__x);}
-
-#undef log
-#define log(__x) __tg_log(__tg_promote1((__x))(__x))
-
-// pow
-
-static float
- _TG_ATTRS
- __tg_pow(float __x, float __y) {return powf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_pow(double __x, double __y) {return pow(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_pow(long double __x, long double __y) {return powl(__x, __y);}
-
-static float _Complex
- _TG_ATTRS
- __tg_pow(float _Complex __x, float _Complex __y) {return cpowf(__x, __y);}
-
-static double _Complex
- _TG_ATTRS
- __tg_pow(double _Complex __x, double _Complex __y) {return cpow(__x, __y);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_pow(long double _Complex __x, long double _Complex __y)
- {return cpowl(__x, __y);}
-
-#undef pow
-#define pow(__x, __y) __tg_pow(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// sqrt
-
-static float
- _TG_ATTRS
- __tg_sqrt(float __x) {return sqrtf(__x);}
-
-static double
- _TG_ATTRS
- __tg_sqrt(double __x) {return sqrt(__x);}
-
-static long double
- _TG_ATTRS
- __tg_sqrt(long double __x) {return sqrtl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_sqrt(float _Complex __x) {return csqrtf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_sqrt(double _Complex __x) {return csqrt(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_sqrt(long double _Complex __x) {return csqrtl(__x);}
-
-#undef sqrt
-#define sqrt(__x) __tg_sqrt(__tg_promote1((__x))(__x))
-
-// fabs
-
-static float
- _TG_ATTRS
- __tg_fabs(float __x) {return fabsf(__x);}
-
-static double
- _TG_ATTRS
- __tg_fabs(double __x) {return fabs(__x);}
-
-static long double
- _TG_ATTRS
- __tg_fabs(long double __x) {return fabsl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_fabs(float _Complex __x) {return cabsf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_fabs(double _Complex __x) {return cabs(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_fabs(long double _Complex __x) {return cabsl(__x);}
-
-#undef fabs
-#define fabs(__x) __tg_fabs(__tg_promote1((__x))(__x))
-
-// atan2
-
-static float
- _TG_ATTRS
- __tg_atan2(float __x, float __y) {return atan2f(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_atan2(double __x, double __y) {return atan2(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_atan2(long double __x, long double __y) {return atan2l(__x, __y);}
-
-#undef atan2
-#define atan2(__x, __y) __tg_atan2(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// cbrt
-
-static float
- _TG_ATTRS
- __tg_cbrt(float __x) {return cbrtf(__x);}
-
-static double
- _TG_ATTRS
- __tg_cbrt(double __x) {return cbrt(__x);}
-
-static long double
- _TG_ATTRS
- __tg_cbrt(long double __x) {return cbrtl(__x);}
-
-#undef cbrt
-#define cbrt(__x) __tg_cbrt(__tg_promote1((__x))(__x))
-
-// ceil
-
-static float
- _TG_ATTRS
- __tg_ceil(float __x) {return ceilf(__x);}
-
-static double
- _TG_ATTRS
- __tg_ceil(double __x) {return ceil(__x);}
-
-static long double
- _TG_ATTRS
- __tg_ceil(long double __x) {return ceill(__x);}
-
-#undef ceil
-#define ceil(__x) __tg_ceil(__tg_promote1((__x))(__x))
-
-// copysign
-
-static float
- _TG_ATTRS
- __tg_copysign(float __x, float __y) {return copysignf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_copysign(double __x, double __y) {return copysign(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_copysign(long double __x, long double __y) {return copysignl(__x, __y);}
-
-#undef copysign
-#define copysign(__x, __y) __tg_copysign(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// erf
-
-static float
- _TG_ATTRS
- __tg_erf(float __x) {return erff(__x);}
-
-static double
- _TG_ATTRS
- __tg_erf(double __x) {return erf(__x);}
-
-static long double
- _TG_ATTRS
- __tg_erf(long double __x) {return erfl(__x);}
-
-#undef erf
-#define erf(__x) __tg_erf(__tg_promote1((__x))(__x))
-
-// erfc
-
-static float
- _TG_ATTRS
- __tg_erfc(float __x) {return erfcf(__x);}
-
-static double
- _TG_ATTRS
- __tg_erfc(double __x) {return erfc(__x);}
-
-static long double
- _TG_ATTRS
- __tg_erfc(long double __x) {return erfcl(__x);}
-
-#undef erfc
-#define erfc(__x) __tg_erfc(__tg_promote1((__x))(__x))
-
-// exp2
-
-static float
- _TG_ATTRS
- __tg_exp2(float __x) {return exp2f(__x);}
-
-static double
- _TG_ATTRS
- __tg_exp2(double __x) {return exp2(__x);}
-
-static long double
- _TG_ATTRS
- __tg_exp2(long double __x) {return exp2l(__x);}
-
-#undef exp2
-#define exp2(__x) __tg_exp2(__tg_promote1((__x))(__x))
-
-// expm1
-
-static float
- _TG_ATTRS
- __tg_expm1(float __x) {return expm1f(__x);}
-
-static double
- _TG_ATTRS
- __tg_expm1(double __x) {return expm1(__x);}
-
-static long double
- _TG_ATTRS
- __tg_expm1(long double __x) {return expm1l(__x);}
-
-#undef expm1
-#define expm1(__x) __tg_expm1(__tg_promote1((__x))(__x))
-
-// fdim
-
-static float
- _TG_ATTRS
- __tg_fdim(float __x, float __y) {return fdimf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_fdim(double __x, double __y) {return fdim(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_fdim(long double __x, long double __y) {return fdiml(__x, __y);}
-
-#undef fdim
-#define fdim(__x, __y) __tg_fdim(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// floor
-
-static float
- _TG_ATTRS
- __tg_floor(float __x) {return floorf(__x);}
-
-static double
- _TG_ATTRS
- __tg_floor(double __x) {return floor(__x);}
-
-static long double
- _TG_ATTRS
- __tg_floor(long double __x) {return floorl(__x);}
-
-#undef floor
-#define floor(__x) __tg_floor(__tg_promote1((__x))(__x))
-
-// fma
-
-static float
- _TG_ATTRS
- __tg_fma(float __x, float __y, float __z)
- {return fmaf(__x, __y, __z);}
-
-static double
- _TG_ATTRS
- __tg_fma(double __x, double __y, double __z)
- {return fma(__x, __y, __z);}
-
-static long double
- _TG_ATTRS
- __tg_fma(long double __x,long double __y, long double __z)
- {return fmal(__x, __y, __z);}
-
-#undef fma
-#define fma(__x, __y, __z) \
- __tg_fma(__tg_promote3((__x), (__y), (__z))(__x), \
- __tg_promote3((__x), (__y), (__z))(__y), \
- __tg_promote3((__x), (__y), (__z))(__z))
-
-// fmax
-
-static float
- _TG_ATTRS
- __tg_fmax(float __x, float __y) {return fmaxf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_fmax(double __x, double __y) {return fmax(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_fmax(long double __x, long double __y) {return fmaxl(__x, __y);}
-
-#undef fmax
-#define fmax(__x, __y) __tg_fmax(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// fmin
-
-static float
- _TG_ATTRS
- __tg_fmin(float __x, float __y) {return fminf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_fmin(double __x, double __y) {return fmin(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_fmin(long double __x, long double __y) {return fminl(__x, __y);}
-
-#undef fmin
-#define fmin(__x, __y) __tg_fmin(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// fmod
-
-static float
- _TG_ATTRS
- __tg_fmod(float __x, float __y) {return fmodf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_fmod(double __x, double __y) {return fmod(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_fmod(long double __x, long double __y) {return fmodl(__x, __y);}
-
-#undef fmod
-#define fmod(__x, __y) __tg_fmod(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// frexp
-
-static float
- _TG_ATTRS
- __tg_frexp(float __x, int* __y) {return frexpf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_frexp(double __x, int* __y) {return frexp(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_frexp(long double __x, int* __y) {return frexpl(__x, __y);}
-
-#undef frexp
-#define frexp(__x, __y) __tg_frexp(__tg_promote1((__x))(__x), __y)
-
-// hypot
-
-static float
- _TG_ATTRS
- __tg_hypot(float __x, float __y) {return hypotf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_hypot(double __x, double __y) {return hypot(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_hypot(long double __x, long double __y) {return hypotl(__x, __y);}
-
-#undef hypot
-#define hypot(__x, __y) __tg_hypot(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// ilogb
-
-static int
- _TG_ATTRS
- __tg_ilogb(float __x) {return ilogbf(__x);}
-
-static int
- _TG_ATTRS
- __tg_ilogb(double __x) {return ilogb(__x);}
-
-static int
- _TG_ATTRS
- __tg_ilogb(long double __x) {return ilogbl(__x);}
-
-#undef ilogb
-#define ilogb(__x) __tg_ilogb(__tg_promote1((__x))(__x))
-
-// ldexp
-
-static float
- _TG_ATTRS
- __tg_ldexp(float __x, int __y) {return ldexpf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_ldexp(double __x, int __y) {return ldexp(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_ldexp(long double __x, int __y) {return ldexpl(__x, __y);}
-
-#undef ldexp
-#define ldexp(__x, __y) __tg_ldexp(__tg_promote1((__x))(__x), __y)
-
-// lgamma
-
-static float
- _TG_ATTRS
- __tg_lgamma(float __x) {return lgammaf(__x);}
-
-static double
- _TG_ATTRS
- __tg_lgamma(double __x) {return lgamma(__x);}
-
-static long double
- _TG_ATTRS
- __tg_lgamma(long double __x) {return lgammal(__x);}
-
-#undef lgamma
-#define lgamma(__x) __tg_lgamma(__tg_promote1((__x))(__x))
-
-// llrint
-
-static long long
- _TG_ATTRS
- __tg_llrint(float __x) {return llrintf(__x);}
-
-static long long
- _TG_ATTRS
- __tg_llrint(double __x) {return llrint(__x);}
-
-static long long
- _TG_ATTRS
- __tg_llrint(long double __x) {return llrintl(__x);}
-
-#undef llrint
-#define llrint(__x) __tg_llrint(__tg_promote1((__x))(__x))
-
-// llround
-
-static long long
- _TG_ATTRS
- __tg_llround(float __x) {return llroundf(__x);}
-
-static long long
- _TG_ATTRS
- __tg_llround(double __x) {return llround(__x);}
-
-static long long
- _TG_ATTRS
- __tg_llround(long double __x) {return llroundl(__x);}
-
-#undef llround
-#define llround(__x) __tg_llround(__tg_promote1((__x))(__x))
-
-// log10
-
-static float
- _TG_ATTRS
- __tg_log10(float __x) {return log10f(__x);}
-
-static double
- _TG_ATTRS
- __tg_log10(double __x) {return log10(__x);}
-
-static long double
- _TG_ATTRS
- __tg_log10(long double __x) {return log10l(__x);}
-
-#undef log10
-#define log10(__x) __tg_log10(__tg_promote1((__x))(__x))
-
-// log1p
-
-static float
- _TG_ATTRS
- __tg_log1p(float __x) {return log1pf(__x);}
-
-static double
- _TG_ATTRS
- __tg_log1p(double __x) {return log1p(__x);}
-
-static long double
- _TG_ATTRS
- __tg_log1p(long double __x) {return log1pl(__x);}
-
-#undef log1p
-#define log1p(__x) __tg_log1p(__tg_promote1((__x))(__x))
-
-// log2
-
-static float
- _TG_ATTRS
- __tg_log2(float __x) {return log2f(__x);}
-
-static double
- _TG_ATTRS
- __tg_log2(double __x) {return log2(__x);}
-
-static long double
- _TG_ATTRS
- __tg_log2(long double __x) {return log2l(__x);}
-
-#undef log2
-#define log2(__x) __tg_log2(__tg_promote1((__x))(__x))
-
-// lrint
-
-static long
- _TG_ATTRS
- __tg_lrint(float __x) {return lrintf(__x);}
-
-static long
- _TG_ATTRS
- __tg_lrint(double __x) {return lrint(__x);}
-
-static long
- _TG_ATTRS
- __tg_lrint(long double __x) {return lrintl(__x);}
-
-#undef lrint
-#define lrint(__x) __tg_lrint(__tg_promote1((__x))(__x))
-
-// lround
-
-static long
- _TG_ATTRS
- __tg_lround(float __x) {return lroundf(__x);}
-
-static long
- _TG_ATTRS
- __tg_lround(double __x) {return lround(__x);}
-
-static long
- _TG_ATTRS
- __tg_lround(long double __x) {return lroundl(__x);}
-
-#undef lround
-#define lround(__x) __tg_lround(__tg_promote1((__x))(__x))
-
-// nearbyint
-
-static float
- _TG_ATTRS
- __tg_nearbyint(float __x) {return nearbyintf(__x);}
-
-static double
- _TG_ATTRS
- __tg_nearbyint(double __x) {return nearbyint(__x);}
-
-static long double
- _TG_ATTRS
- __tg_nearbyint(long double __x) {return nearbyintl(__x);}
-
-#undef nearbyint
-#define nearbyint(__x) __tg_nearbyint(__tg_promote1((__x))(__x))
-
-// nextafter
-
-static float
- _TG_ATTRS
- __tg_nextafter(float __x, float __y) {return nextafterf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_nextafter(double __x, double __y) {return nextafter(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_nextafter(long double __x, long double __y) {return nextafterl(__x, __y);}
-
-#undef nextafter
-#define nextafter(__x, __y) __tg_nextafter(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// nexttoward
-
-static float
- _TG_ATTRS
- __tg_nexttoward(float __x, float __y) {return nexttowardf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_nexttoward(double __x, double __y) {return nexttoward(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_nexttoward(long double __x, long double __y) {return nexttowardl(__x, __y);}
-
-#undef nexttoward
-#define nexttoward(__x, __y) __tg_nexttoward(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// remainder
-
-static float
- _TG_ATTRS
- __tg_remainder(float __x, float __y) {return remainderf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_remainder(double __x, double __y) {return remainder(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_remainder(long double __x, long double __y) {return remainderl(__x, __y);}
-
-#undef remainder
-#define remainder(__x, __y) __tg_remainder(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y))
-
-// remquo
-
-static float
- _TG_ATTRS
- __tg_remquo(float __x, float __y, int* __z)
- {return remquof(__x, __y, __z);}
-
-static double
- _TG_ATTRS
- __tg_remquo(double __x, double __y, int* __z)
- {return remquo(__x, __y, __z);}
-
-static long double
- _TG_ATTRS
- __tg_remquo(long double __x,long double __y, int* __z)
- {return remquol(__x, __y, __z);}
-
-#undef remquo
-#define remquo(__x, __y, __z) \
- __tg_remquo(__tg_promote2((__x), (__y))(__x), \
- __tg_promote2((__x), (__y))(__y), \
- (__z))
-
-// rint
-
-static float
- _TG_ATTRS
- __tg_rint(float __x) {return rintf(__x);}
-
-static double
- _TG_ATTRS
- __tg_rint(double __x) {return rint(__x);}
-
-static long double
- _TG_ATTRS
- __tg_rint(long double __x) {return rintl(__x);}
-
-#undef rint
-#define rint(__x) __tg_rint(__tg_promote1((__x))(__x))
-
-// round
-
-static float
- _TG_ATTRS
- __tg_round(float __x) {return roundf(__x);}
-
-static double
- _TG_ATTRS
- __tg_round(double __x) {return round(__x);}
-
-static long double
- _TG_ATTRS
- __tg_round(long double __x) {return roundl(__x);}
-
-#undef round
-#define round(__x) __tg_round(__tg_promote1((__x))(__x))
-
-// scalbn
-
-static float
- _TG_ATTRS
- __tg_scalbn(float __x, int __y) {return scalbnf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_scalbn(double __x, int __y) {return scalbn(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_scalbn(long double __x, int __y) {return scalbnl(__x, __y);}
-
-#undef scalbn
-#define scalbn(__x, __y) __tg_scalbn(__tg_promote1((__x))(__x), __y)
-
-// scalbln
-
-static float
- _TG_ATTRS
- __tg_scalbln(float __x, long __y) {return scalblnf(__x, __y);}
-
-static double
- _TG_ATTRS
- __tg_scalbln(double __x, long __y) {return scalbln(__x, __y);}
-
-static long double
- _TG_ATTRS
- __tg_scalbln(long double __x, long __y) {return scalblnl(__x, __y);}
-
-#undef scalbln
-#define scalbln(__x, __y) __tg_scalbln(__tg_promote1((__x))(__x), __y)
-
-// tgamma
-
-static float
- _TG_ATTRS
- __tg_tgamma(float __x) {return tgammaf(__x);}
-
-static double
- _TG_ATTRS
- __tg_tgamma(double __x) {return tgamma(__x);}
-
-static long double
- _TG_ATTRS
- __tg_tgamma(long double __x) {return tgammal(__x);}
-
-#undef tgamma
-#define tgamma(__x) __tg_tgamma(__tg_promote1((__x))(__x))
-
-// trunc
-
-static float
- _TG_ATTRS
- __tg_trunc(float __x) {return truncf(__x);}
-
-static double
- _TG_ATTRS
- __tg_trunc(double __x) {return trunc(__x);}
-
-static long double
- _TG_ATTRS
- __tg_trunc(long double __x) {return truncl(__x);}
-
-#undef trunc
-#define trunc(__x) __tg_trunc(__tg_promote1((__x))(__x))
-
-// carg
-
-static float
- _TG_ATTRS
- __tg_carg(float __x) {return atan2f(0.F, __x);}
-
-static double
- _TG_ATTRS
- __tg_carg(double __x) {return atan2(0., __x);}
-
-static long double
- _TG_ATTRS
- __tg_carg(long double __x) {return atan2l(0.L, __x);}
-
-static float
- _TG_ATTRS
- __tg_carg(float _Complex __x) {return cargf(__x);}
-
-static double
- _TG_ATTRS
- __tg_carg(double _Complex __x) {return carg(__x);}
-
-static long double
- _TG_ATTRS
- __tg_carg(long double _Complex __x) {return cargl(__x);}
-
-#undef carg
-#define carg(__x) __tg_carg(__tg_promote1((__x))(__x))
-
-// cimag
-
-static float
- _TG_ATTRS
- __tg_cimag(float __x) {return 0;}
-
-static double
- _TG_ATTRS
- __tg_cimag(double __x) {return 0;}
-
-static long double
- _TG_ATTRS
- __tg_cimag(long double __x) {return 0;}
-
-static float
- _TG_ATTRS
- __tg_cimag(float _Complex __x) {return cimagf(__x);}
-
-static double
- _TG_ATTRS
- __tg_cimag(double _Complex __x) {return cimag(__x);}
-
-static long double
- _TG_ATTRS
- __tg_cimag(long double _Complex __x) {return cimagl(__x);}
-
-#undef cimag
-#define cimag(__x) __tg_cimag(__tg_promote1((__x))(__x))
-
-// conj
-
-static float _Complex
- _TG_ATTRS
- __tg_conj(float __x) {return __x;}
-
-static double _Complex
- _TG_ATTRS
- __tg_conj(double __x) {return __x;}
-
-static long double _Complex
- _TG_ATTRS
- __tg_conj(long double __x) {return __x;}
-
-static float _Complex
- _TG_ATTRS
- __tg_conj(float _Complex __x) {return conjf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_conj(double _Complex __x) {return conj(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_conj(long double _Complex __x) {return conjl(__x);}
-
-#undef conj
-#define conj(__x) __tg_conj(__tg_promote1((__x))(__x))
-
-// cproj
-
-static float _Complex
- _TG_ATTRS
- __tg_cproj(float __x) {return cprojf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_cproj(double __x) {return cproj(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_cproj(long double __x) {return cprojl(__x);}
-
-static float _Complex
- _TG_ATTRS
- __tg_cproj(float _Complex __x) {return cprojf(__x);}
-
-static double _Complex
- _TG_ATTRS
- __tg_cproj(double _Complex __x) {return cproj(__x);}
-
-static long double _Complex
- _TG_ATTRS
- __tg_cproj(long double _Complex __x) {return cprojl(__x);}
-
-#undef cproj
-#define cproj(__x) __tg_cproj(__tg_promote1((__x))(__x))
-
-// creal
-
-static float _Complex
- _TG_ATTRS
- __tg_creal(float __x) {return __x;}
-
-static double _Complex
- _TG_ATTRS
- __tg_creal(double __x) {return __x;}
-
-static long double _Complex
- _TG_ATTRS
- __tg_creal(long double __x) {return __x;}
-
-static float
- _TG_ATTRS
- __tg_creal(float _Complex __x) {return crealf(__x);}
-
-static double
- _TG_ATTRS
- __tg_creal(double _Complex __x) {return creal(__x);}
-
-static long double
- _TG_ATTRS
- __tg_creal(long double _Complex __x) {return creall(__x);}
-
-#undef creal
-#define creal(__x) __tg_creal(__tg_promote1((__x))(__x))
-
-#undef _TG_ATTRSp
-#undef _TG_ATTRS
-
-#endif /* __cplusplus */
-#endif /* __TGMATH_H */
diff --git a/13/renderscript/clang-include/tmmintrin.h b/13/renderscript/clang-include/tmmintrin.h
deleted file mode 100644
index 07fea1c..0000000
--- a/13/renderscript/clang-include/tmmintrin.h
+++ /dev/null
@@ -1,218 +0,0 @@
-/*===---- tmmintrin.h - SSSE3 intrinsics -----------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __TMMINTRIN_H
-#define __TMMINTRIN_H
-
-#ifndef __SSSE3__
-#error "SSSE3 instruction set not enabled"
-#else
-
-#include <pmmintrin.h>
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_abs_pi8(__m64 a)
-{
- return (__m64)__builtin_ia32_pabsb((__v8qi)a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_abs_epi8(__m128i a)
-{
- return (__m128i)__builtin_ia32_pabsb128((__v16qi)a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_abs_pi16(__m64 a)
-{
- return (__m64)__builtin_ia32_pabsw((__v4hi)a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_abs_epi16(__m128i a)
-{
- return (__m128i)__builtin_ia32_pabsw128((__v8hi)a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_abs_pi32(__m64 a)
-{
- return (__m64)__builtin_ia32_pabsd((__v2si)a);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_abs_epi32(__m128i a)
-{
- return (__m128i)__builtin_ia32_pabsd128((__v4si)a);
-}
-
-#define _mm_alignr_epi8(a, b, n) (__builtin_ia32_palignr128((a), (b), (n)))
-#define _mm_alignr_pi8(a, b, n) (__builtin_ia32_palignr((a), (b), (n)))
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_hadd_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_phaddw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_hadd_epi32(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_phaddd128((__v4si)a, (__v4si)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_hadd_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_phaddw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_hadd_pi32(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_phaddd((__v2si)a, (__v2si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_hadds_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_phaddsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_hadds_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_phaddsw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_hsub_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_phsubw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_hsub_epi32(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_phsubd128((__v4si)a, (__v4si)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_hsub_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_phsubw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_hsub_pi32(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_phsubd((__v2si)a, (__v2si)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_hsubs_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_phsubsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_hsubs_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_phsubsw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_maddubs_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmaddubsw128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_maddubs_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pmaddubsw((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_mulhrs_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pmulhrsw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_mulhrs_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pmulhrsw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_shuffle_epi8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_pshufb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_shuffle_pi8(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pshufb((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sign_epi8(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psignb128((__v16qi)a, (__v16qi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sign_epi16(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psignw128((__v8hi)a, (__v8hi)b);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_sign_epi32(__m128i a, __m128i b)
-{
- return (__m128i)__builtin_ia32_psignd128((__v4si)a, (__v4si)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sign_pi8(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_psignb((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sign_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_psignw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sign_pi32(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_psignd((__v2si)a, (__v2si)b);
-}
-
-#endif /* __SSSE3__ */
-
-#endif /* __TMMINTRIN_H */
diff --git a/13/renderscript/clang-include/varargs.h b/13/renderscript/clang-include/varargs.h
deleted file mode 100644
index b5477d0..0000000
--- a/13/renderscript/clang-include/varargs.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*===---- varargs.h - Variable argument handling -------------------------------------===
-*
-* Permission is hereby granted, free of charge, to any person obtaining a copy
-* of this software and associated documentation files (the "Software"), to deal
-* in the Software without restriction, including without limitation the rights
-* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-* copies of the Software, and to permit persons to whom the Software is
-* furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included in
-* all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-* THE SOFTWARE.
-*
-*===-----------------------------------------------------------------------===
-*/
-#ifndef __VARARGS_H
-#define __VARARGS_H
- #error "Please use <stdarg.h> instead of <varargs.h>"
-#endif
diff --git a/13/renderscript/clang-include/wmmintrin.h b/13/renderscript/clang-include/wmmintrin.h
deleted file mode 100644
index 6b2e468..0000000
--- a/13/renderscript/clang-include/wmmintrin.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*===---- wmmintrin.h - AES intrinsics ------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef _WMMINTRIN_H
-#define _WMMINTRIN_H
-
-#if !defined (__AES__)
-# error "AES instructions not enabled"
-#else
-
-#include <smmintrin.h>
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_aesenc_si128(__m128i __V, __m128i __R)
-{
- return (__m128i)__builtin_ia32_aesenc128(__V, __R);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_aesenclast_si128(__m128i __V, __m128i __R)
-{
- return (__m128i)__builtin_ia32_aesenclast128(__V, __R);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_aesdec_si128(__m128i __V, __m128i __R)
-{
- return (__m128i)__builtin_ia32_aesdec128(__V, __R);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_aesdeclast_si128(__m128i __V, __m128i __R)
-{
- return (__m128i)__builtin_ia32_aesdeclast128(__V, __R);
-}
-
-static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-_mm_aesimc_si128(__m128i __V)
-{
- return (__m128i)__builtin_ia32_aesimc128(__V);
-}
-
-#define _mm_aeskeygenassist_si128(C, R) \
- __builtin_ia32_aeskeygenassist128((C), (R))
-
-#endif /* __AES__ */
-#endif /* _WMMINTRIN_H */
diff --git a/13/renderscript/clang-include/x86intrin.h b/13/renderscript/clang-include/x86intrin.h
deleted file mode 100644
index e5e7a6a..0000000
--- a/13/renderscript/clang-include/x86intrin.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*===---- x86intrin.h - X86 intrinsics -------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __X86INTRIN_H
-#define __X86INTRIN_H
-
-#include <immintrin.h>
-
-// FIXME: SSE4A, 3dNOW, FMA4, XOP, LWP, ABM, POPCNT
-
-#endif /* __X86INTRIN_H */
diff --git a/13/renderscript/clang-include/xmmintrin.h b/13/renderscript/clang-include/xmmintrin.h
deleted file mode 100644
index 6f270f8..0000000
--- a/13/renderscript/clang-include/xmmintrin.h
+++ /dev/null
@@ -1,963 +0,0 @@
-/*===---- xmmintrin.h - SSE intrinsics -------------------------------------===
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- *
- *===-----------------------------------------------------------------------===
- */
-
-#ifndef __XMMINTRIN_H
-#define __XMMINTRIN_H
-
-#ifndef __SSE__
-#error "SSE instruction set not enabled"
-#else
-
-#include <mmintrin.h>
-
-typedef int __v4si __attribute__((__vector_size__(16)));
-typedef float __v4sf __attribute__((__vector_size__(16)));
-typedef float __m128 __attribute__((__vector_size__(16)));
-
-#include <mm_malloc.h>
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_add_ss(__m128 a, __m128 b)
-{
- a[0] += b[0];
- return a;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_add_ps(__m128 a, __m128 b)
-{
- return a + b;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_sub_ss(__m128 a, __m128 b)
-{
- a[0] -= b[0];
- return a;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_sub_ps(__m128 a, __m128 b)
-{
- return a - b;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_mul_ss(__m128 a, __m128 b)
-{
- a[0] *= b[0];
- return a;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_mul_ps(__m128 a, __m128 b)
-{
- return a * b;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_div_ss(__m128 a, __m128 b)
-{
- a[0] /= b[0];
- return a;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_div_ps(__m128 a, __m128 b)
-{
- return a / b;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_sqrt_ss(__m128 a)
-{
- return __builtin_ia32_sqrtss(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_sqrt_ps(__m128 a)
-{
- return __builtin_ia32_sqrtps(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_rcp_ss(__m128 a)
-{
- return __builtin_ia32_rcpss(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_rcp_ps(__m128 a)
-{
- return __builtin_ia32_rcpps(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_rsqrt_ss(__m128 a)
-{
- return __builtin_ia32_rsqrtss(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_rsqrt_ps(__m128 a)
-{
- return __builtin_ia32_rsqrtps(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_min_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_minss(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_min_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_minps(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_max_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_maxss(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_max_ps(__m128 a, __m128 b)
-{
- return __builtin_ia32_maxps(a, b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_and_ps(__m128 a, __m128 b)
-{
- return (__m128)((__v4si)a & (__v4si)b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_andnot_ps(__m128 a, __m128 b)
-{
- return (__m128)(~(__v4si)a & (__v4si)b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_or_ps(__m128 a, __m128 b)
-{
- return (__m128)((__v4si)a | (__v4si)b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_xor_ps(__m128 a, __m128 b)
-{
- return (__m128)((__v4si)a ^ (__v4si)b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 0);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpeq_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 0);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 1);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmplt_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 1);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmple_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 2);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmple_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 2);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(b, a, 1);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpgt_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(b, a, 1);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpge_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(b, a, 2);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpge_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(b, a, 2);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpneq_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 4);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpneq_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 4);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnlt_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnlt_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnle_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 6);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnle_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 6);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpngt_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(b, a, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpngt_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(b, a, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnge_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(b, a, 6);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpnge_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(b, a, 6);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpord_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 7);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpord_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 7);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpunord_ss(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpss(a, b, 3);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cmpunord_ps(__m128 a, __m128 b)
-{
- return (__m128)__builtin_ia32_cmpps(a, b, 3);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comieq_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_comieq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comilt_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_comilt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comile_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_comile(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comigt_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_comigt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comige_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_comige(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_comineq_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_comineq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomieq_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_ucomieq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomilt_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_ucomilt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomile_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_ucomile(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomigt_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_ucomigt(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomige_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_ucomige(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_ucomineq_ss(__m128 a, __m128 b)
-{
- return __builtin_ia32_ucomineq(a, b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvtss_si32(__m128 a)
-{
- return __builtin_ia32_cvtss2si(a);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvt_ss2si(__m128 a)
-{
- return _mm_cvtss_si32(a);
-}
-
-#ifdef __x86_64__
-
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_cvtss_si64(__m128 a)
-{
- return __builtin_ia32_cvtss2si64(a);
-}
-
-#endif
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtps_pi32(__m128 a)
-{
- return (__m64)__builtin_ia32_cvtps2pi(a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvt_ps2pi(__m128 a)
-{
- return _mm_cvtps_pi32(a);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvttss_si32(__m128 a)
-{
- return a[0];
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_cvtt_ss2si(__m128 a)
-{
- return _mm_cvttss_si32(a);
-}
-
-static __inline__ long long __attribute__((__always_inline__, __nodebug__))
-_mm_cvttss_si64(__m128 a)
-{
- return a[0];
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvttps_pi32(__m128 a)
-{
- return (__m64)__builtin_ia32_cvttps2pi(a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtt_ps2pi(__m128 a)
-{
- return _mm_cvttps_pi32(a);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi32_ss(__m128 a, int b)
-{
- a[0] = b;
- return a;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvt_si2ss(__m128 a, int b)
-{
- return _mm_cvtsi32_ss(a, b);
-}
-
-#ifdef __x86_64__
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtsi64_ss(__m128 a, long long b)
-{
- a[0] = b;
- return a;
-}
-
-#endif
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpi32_ps(__m128 a, __m64 b)
-{
- return __builtin_ia32_cvtpi2ps(a, (__v2si)b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvt_pi2ps(__m128 a, __m64 b)
-{
- return _mm_cvtpi32_ps(a, b);
-}
-
-static __inline__ float __attribute__((__always_inline__, __nodebug__))
-_mm_cvtss_f32(__m128 a)
-{
- return a[0];
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_loadh_pi(__m128 a, const __m64 *p)
-{
- __m128 b;
- b[0] = *(float*)p;
- b[1] = *((float*)p+1);
- return __builtin_shufflevector(a, b, 0, 1, 4, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_loadl_pi(__m128 a, const __m64 *p)
-{
- __m128 b;
- b[0] = *(float*)p;
- b[1] = *((float*)p+1);
- return __builtin_shufflevector(a, b, 4, 5, 2, 3);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_load_ss(const float *p)
-{
- return (__m128){ *p, 0, 0, 0 };
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_load1_ps(const float *p)
-{
- return (__m128){ *p, *p, *p, *p };
-}
-
-#define _mm_load_ps1(p) _mm_load1_ps(p)
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_load_ps(const float *p)
-{
- return *(__m128*)p;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_loadu_ps(const float *p)
-{
- return __builtin_ia32_loadups(p);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_loadr_ps(const float *p)
-{
- __m128 a = _mm_load_ps(p);
- return __builtin_shufflevector(a, a, 3, 2, 1, 0);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_set_ss(float w)
-{
- return (__m128){ w, 0, 0, 0 };
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_set1_ps(float w)
-{
- return (__m128){ w, w, w, w };
-}
-
-// Microsoft specific.
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_set_ps1(float w)
-{
- return _mm_set1_ps(w);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_set_ps(float z, float y, float x, float w)
-{
- return (__m128){ w, x, y, z };
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_setr_ps(float z, float y, float x, float w)
-{
- return (__m128){ z, y, x, w };
-}
-
-static __inline__ __m128 __attribute__((__always_inline__))
-_mm_setzero_ps(void)
-{
- return (__m128){ 0, 0, 0, 0 };
-}
-
-static __inline__ void __attribute__((__always_inline__))
-_mm_storeh_pi(__m64 *p, __m128 a)
-{
- __builtin_ia32_storehps((__v2si *)p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__))
-_mm_storel_pi(__m64 *p, __m128 a)
-{
- __builtin_ia32_storelps((__v2si *)p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__))
-_mm_store_ss(float *p, __m128 a)
-{
- *p = a[0];
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storeu_ps(float *p, __m128 a)
-{
- __builtin_ia32_storeups(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store1_ps(float *p, __m128 a)
-{
- a = __builtin_shufflevector(a, a, 0, 0, 0, 0);
- _mm_storeu_ps(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store_ps1(float *p, __m128 a)
-{
- return _mm_store1_ps(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_store_ps(float *p, __m128 a)
-{
- *(__m128 *)p = a;
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_storer_ps(float *p, __m128 a)
-{
- a = __builtin_shufflevector(a, a, 3, 2, 1, 0);
- _mm_store_ps(p, a);
-}
-
-#define _MM_HINT_T0 3
-#define _MM_HINT_T1 2
-#define _MM_HINT_T2 1
-#define _MM_HINT_NTA 0
-
-/* FIXME: We have to #define this because "sel" must be a constant integer, and
- Sema doesn't do any form of constant propagation yet. */
-
-#define _mm_prefetch(a, sel) (__builtin_prefetch((void *)(a), 0, sel))
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_stream_pi(__m64 *p, __m64 a)
-{
- __builtin_ia32_movntq(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_stream_ps(float *p, __m128 a)
-{
- __builtin_ia32_movntps(p, a);
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_sfence(void)
-{
- __builtin_ia32_sfence();
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_extract_pi16(__m64 a, int n)
-{
- __v4hi b = (__v4hi)a;
- return (unsigned short)b[n & 3];
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_insert_pi16(__m64 a, int d, int n)
-{
- __v4hi b = (__v4hi)a;
- b[n & 3] = d;
- return (__m64)b;
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_max_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pmaxsw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_max_pu8(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pmaxub((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_min_pi16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pminsw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_min_pu8(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pminub((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_movemask_pi8(__m64 a)
-{
- return __builtin_ia32_pmovmskb((__v8qi)a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_mulhi_pu16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pmulhuw((__v4hi)a, (__v4hi)b);
-}
-
-#define _mm_shuffle_pi16(a, n) \
- ((__m64)__builtin_ia32_pshufw(a, n))
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_maskmove_si64(__m64 d, __m64 n, char *p)
-{
- __builtin_ia32_maskmovq((__v8qi)d, (__v8qi)n, p);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_avg_pu8(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pavgb((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_avg_pu16(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_pavgw((__v4hi)a, (__v4hi)b);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_sad_pu8(__m64 a, __m64 b)
-{
- return (__m64)__builtin_ia32_psadbw((__v8qi)a, (__v8qi)b);
-}
-
-static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__))
-_mm_getcsr(void)
-{
- return __builtin_ia32_stmxcsr();
-}
-
-static __inline__ void __attribute__((__always_inline__, __nodebug__))
-_mm_setcsr(unsigned int i)
-{
- __builtin_ia32_ldmxcsr(i);
-}
-
-#define _mm_shuffle_ps(a, b, mask) \
- (__builtin_shufflevector((__v4sf)(a), (__v4sf)(b), \
- (mask) & 0x3, ((mask) & 0xc) >> 2, \
- (((mask) & 0x30) >> 4) + 4, \
- (((mask) & 0xc0) >> 6) + 4))
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_unpackhi_ps(__m128 a, __m128 b)
-{
- return __builtin_shufflevector(a, b, 2, 6, 3, 7);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_unpacklo_ps(__m128 a, __m128 b)
-{
- return __builtin_shufflevector(a, b, 0, 4, 1, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_move_ss(__m128 a, __m128 b)
-{
- return __builtin_shufflevector(a, b, 4, 1, 2, 3);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_movehl_ps(__m128 a, __m128 b)
-{
- return __builtin_shufflevector(a, b, 6, 7, 2, 3);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_movelh_ps(__m128 a, __m128 b)
-{
- return __builtin_shufflevector(a, b, 0, 1, 4, 5);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpi16_ps(__m64 a)
-{
- __m64 b, c;
- __m128 r;
-
- b = _mm_setzero_si64();
- b = _mm_cmpgt_pi16(b, a);
- c = _mm_unpackhi_pi16(a, b);
- r = _mm_setzero_ps();
- r = _mm_cvtpi32_ps(r, c);
- r = _mm_movelh_ps(r, r);
- c = _mm_unpacklo_pi16(a, b);
- r = _mm_cvtpi32_ps(r, c);
-
- return r;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpu16_ps(__m64 a)
-{
- __m64 b, c;
- __m128 r;
-
- b = _mm_setzero_si64();
- c = _mm_unpackhi_pi16(a, b);
- r = _mm_setzero_ps();
- r = _mm_cvtpi32_ps(r, c);
- r = _mm_movelh_ps(r, r);
- c = _mm_unpacklo_pi16(a, b);
- r = _mm_cvtpi32_ps(r, c);
-
- return r;
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpi8_ps(__m64 a)
-{
- __m64 b;
-
- b = _mm_setzero_si64();
- b = _mm_cmpgt_pi8(b, a);
- b = _mm_unpacklo_pi8(a, b);
-
- return _mm_cvtpi16_ps(b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpu8_ps(__m64 a)
-{
- __m64 b;
-
- b = _mm_setzero_si64();
- b = _mm_unpacklo_pi8(a, b);
-
- return _mm_cvtpi16_ps(b);
-}
-
-static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtpi32x2_ps(__m64 a, __m64 b)
-{
- __m128 c;
-
- c = _mm_setzero_ps();
- c = _mm_cvtpi32_ps(c, b);
- c = _mm_movelh_ps(c, c);
-
- return _mm_cvtpi32_ps(c, a);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtps_pi16(__m128 a)
-{
- __m64 b, c;
-
- b = _mm_cvtps_pi32(a);
- a = _mm_movehl_ps(a, a);
- c = _mm_cvtps_pi32(a);
-
- return _mm_packs_pi16(b, c);
-}
-
-static __inline__ __m64 __attribute__((__always_inline__, __nodebug__))
-_mm_cvtps_pi8(__m128 a)
-{
- __m64 b, c;
-
- b = _mm_cvtps_pi16(a);
- c = _mm_setzero_si64();
-
- return _mm_packs_pi16(b, c);
-}
-
-static __inline__ int __attribute__((__always_inline__, __nodebug__))
-_mm_movemask_ps(__m128 a)
-{
- return __builtin_ia32_movmskps(a);
-}
-
-#define _MM_SHUFFLE(z, y, x, w) (((z) << 6) | ((y) << 4) | ((x) << 2) | (w))
-
-#define _MM_EXCEPT_INVALID (0x0001)
-#define _MM_EXCEPT_DENORM (0x0002)
-#define _MM_EXCEPT_DIV_ZERO (0x0004)
-#define _MM_EXCEPT_OVERFLOW (0x0008)
-#define _MM_EXCEPT_UNDERFLOW (0x0010)
-#define _MM_EXCEPT_INEXACT (0x0020)
-#define _MM_EXCEPT_MASK (0x003f)
-
-#define _MM_MASK_INVALID (0x0080)
-#define _MM_MASK_DENORM (0x0100)
-#define _MM_MASK_DIV_ZERO (0x0200)
-#define _MM_MASK_OVERFLOW (0x0400)
-#define _MM_MASK_UNDERFLOW (0x0800)
-#define _MM_MASK_INEXACT (0x1000)
-#define _MM_MASK_MASK (0x1f80)
-
-#define _MM_ROUND_NEAREST (0x0000)
-#define _MM_ROUND_DOWN (0x2000)
-#define _MM_ROUND_UP (0x4000)
-#define _MM_ROUND_TOWARD_ZERO (0x6000)
-#define _MM_ROUND_MASK (0x6000)
-
-#define _MM_FLUSH_ZERO_MASK (0x8000)
-#define _MM_FLUSH_ZERO_ON (0x8000)
-#define _MM_FLUSH_ZERO_OFF (0x8000)
-
-#define _MM_GET_EXCEPTION_MASK() (_mm_getcsr() & _MM_MASK_MASK)
-#define _MM_GET_EXCEPTION_STATE() (_mm_getcsr() & _MM_EXCEPT_MASK)
-#define _MM_GET_FLUSH_ZERO_MODE() (_mm_getcsr() & _MM_FLUSH_ZERO_MASK)
-#define _MM_GET_ROUNDING_MODE() (_mm_getcsr() & _MM_ROUND_MASK)
-
-#define _MM_SET_EXCEPTION_MASK(x) (_mm_setcsr((_mm_getcsr() & ~_MM_MASK_MASK) | (x)))
-#define _MM_SET_EXCEPTION_STATE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_EXCEPT_MASK) | (x)))
-#define _MM_SET_FLUSH_ZERO_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_FLUSH_ZERO_MASK) | (x)))
-#define _MM_SET_ROUNDING_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_ROUND_MASK) | (x)))
-
-#define _MM_TRANSPOSE4_PS(row0, row1, row2, row3) \
-do { \
- __m128 tmp3, tmp2, tmp1, tmp0; \
- tmp0 = _mm_unpacklo_ps((row0), (row1)); \
- tmp2 = _mm_unpacklo_ps((row2), (row3)); \
- tmp1 = _mm_unpackhi_ps((row0), (row1)); \
- tmp3 = _mm_unpackhi_ps((row2), (row3)); \
- (row0) = _mm_movelh_ps(tmp0, tmp2); \
- (row1) = _mm_movehl_ps(tmp2, tmp0); \
- (row2) = _mm_movelh_ps(tmp1, tmp3); \
- (row3) = _mm_movehl_ps(tmp3, tmp1); \
-} while (0)
-
-/* Aliases for compatibility. */
-#define _m_pextrw _mm_extract_pi16
-#define _m_pinsrw _mm_insert_pi16
-#define _m_pmaxsw _mm_max_pi16
-#define _m_pmaxub _mm_max_pu8
-#define _m_pminsw _mm_min_pi16
-#define _m_pminub _mm_min_pu8
-#define _m_pmovmskb _mm_movemask_pi8
-#define _m_pmulhuw _mm_mulhi_pu16
-#define _m_pshufw _mm_shuffle_pi16
-#define _m_maskmovq _mm_maskmove_si64
-#define _m_pavgb _mm_avg_pu8
-#define _m_pavgw _mm_avg_pu16
-#define _m_psadbw _mm_sad_pu8
-#define _m_ _mm_
-#define _m_ _mm_
-
-/* Ugly hack for backwards-compatibility (compatible with gcc) */
-#ifdef __SSE2__
-#include <emmintrin.h>
-#endif
-
-#endif /* __SSE__ */
-
-#endif /* __XMMINTRIN_H */
diff --git a/13/renderscript/include/rs_cl.rsh b/13/renderscript/include/rs_cl.rsh
deleted file mode 100644
index d78e62e..0000000
--- a/13/renderscript/include/rs_cl.rsh
+++ /dev/null
@@ -1,449 +0,0 @@
-#ifndef __RS_CL_RSH__
-#define __RS_CL_RSH__
-
-#define _RS_RUNTIME extern
-
-// Conversions
-#define CVT_FUNC_2(typeout, typein) \
-_RS_RUNTIME typeout##2 __attribute__((overloadable)) \
- convert_##typeout##2(typein##2 v); \
-_RS_RUNTIME typeout##3 __attribute__((overloadable)) \
- convert_##typeout##3(typein##3 v); \
-_RS_RUNTIME typeout##4 __attribute__((overloadable)) \
- convert_##typeout##4(typein##4 v);
-
-
-#define CVT_FUNC(type) CVT_FUNC_2(type, uchar) \
- CVT_FUNC_2(type, char) \
- CVT_FUNC_2(type, ushort) \
- CVT_FUNC_2(type, short) \
- CVT_FUNC_2(type, uint) \
- CVT_FUNC_2(type, int) \
- CVT_FUNC_2(type, float)
-
-CVT_FUNC(char)
-CVT_FUNC(uchar)
-CVT_FUNC(short)
-CVT_FUNC(ushort)
-CVT_FUNC(int)
-CVT_FUNC(uint)
-CVT_FUNC(float)
-
-// Float ops, 6.11.2
-
-#define FN_FUNC_FN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) fnc(float2 v); \
-_RS_RUNTIME float3 __attribute__((overloadable)) fnc(float3 v); \
-_RS_RUNTIME float4 __attribute__((overloadable)) fnc(float4 v);
-
-#define IN_FUNC_FN(fnc) \
-_RS_RUNTIME int2 __attribute__((overloadable)) fnc(float2 v); \
-_RS_RUNTIME int3 __attribute__((overloadable)) fnc(float3 v); \
-_RS_RUNTIME int4 __attribute__((overloadable)) fnc(float4 v);
-
-#define FN_FUNC_FN_FN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) fnc(float2 v1, float2 v2); \
-_RS_RUNTIME float3 __attribute__((overloadable)) fnc(float3 v1, float3 v2); \
-_RS_RUNTIME float4 __attribute__((overloadable)) fnc(float4 v1, float4 v2);
-
-#define FN_FUNC_FN_F(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) fnc(float2 v1, float v2); \
-_RS_RUNTIME float3 __attribute__((overloadable)) fnc(float3 v1, float v2); \
-_RS_RUNTIME float4 __attribute__((overloadable)) fnc(float4 v1, float v2);
-
-#define FN_FUNC_FN_IN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) fnc(float2 v1, int2 v2); \
-_RS_RUNTIME float3 __attribute__((overloadable)) fnc(float3 v1, int3 v2); \
-_RS_RUNTIME float4 __attribute__((overloadable)) fnc(float4 v1, int4 v2); \
-
-#define FN_FUNC_FN_I(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) fnc(float2 v1, int v2); \
-_RS_RUNTIME float3 __attribute__((overloadable)) fnc(float3 v1, int v2); \
-_RS_RUNTIME float4 __attribute__((overloadable)) fnc(float4 v1, int v2);
-
-#define FN_FUNC_FN_PFN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) \
- fnc(float2 v1, float2 *v2); \
-_RS_RUNTIME float3 __attribute__((overloadable)) \
- fnc(float3 v1, float3 *v2); \
-_RS_RUNTIME float4 __attribute__((overloadable)) \
- fnc(float4 v1, float4 *v2);
-
-#define FN_FUNC_FN_PIN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) fnc(float2 v1, int2 *v2); \
-_RS_RUNTIME float3 __attribute__((overloadable)) fnc(float3 v1, int3 *v2); \
-_RS_RUNTIME float4 __attribute__((overloadable)) fnc(float4 v1, int4 *v2);
-
-#define FN_FUNC_FN_FN_FN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) \
- fnc(float2 v1, float2 v2, float2 v3); \
-_RS_RUNTIME float3 __attribute__((overloadable)) \
- fnc(float3 v1, float3 v2, float3 v3); \
-_RS_RUNTIME float4 __attribute__((overloadable)) \
- fnc(float4 v1, float4 v2, float4 v3);
-
-#define FN_FUNC_FN_FN_PIN(fnc) \
-_RS_RUNTIME float2 __attribute__((overloadable)) \
- fnc(float2 v1, float2 v2, int2 *v3); \
-_RS_RUNTIME float3 __attribute__((overloadable)) \
- fnc(float3 v1, float3 v2, int3 *v3); \
-_RS_RUNTIME float4 __attribute__((overloadable)) \
- fnc(float4 v1, float4 v2, int4 *v3);
-
-
-extern float __attribute__((overloadable)) acos(float);
-FN_FUNC_FN(acos)
-
-extern float __attribute__((overloadable)) acosh(float);
-FN_FUNC_FN(acosh)
-
-_RS_RUNTIME float __attribute__((overloadable)) acospi(float v);
-
-
-FN_FUNC_FN(acospi)
-
-extern float __attribute__((overloadable)) asin(float);
-FN_FUNC_FN(asin)
-
-extern float __attribute__((overloadable)) asinh(float);
-FN_FUNC_FN(asinh)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) asinpi(float v);
-FN_FUNC_FN(asinpi)
-
-extern float __attribute__((overloadable)) atan(float);
-FN_FUNC_FN(atan)
-
-extern float __attribute__((overloadable)) atan2(float, float);
-FN_FUNC_FN_FN(atan2)
-
-extern float __attribute__((overloadable)) atanh(float);
-FN_FUNC_FN(atanh)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) atanpi(float v);
-FN_FUNC_FN(atanpi)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) atan2pi(float y, float x);
-FN_FUNC_FN_FN(atan2pi)
-
-extern float __attribute__((overloadable)) cbrt(float);
-FN_FUNC_FN(cbrt)
-
-extern float __attribute__((overloadable)) ceil(float);
-FN_FUNC_FN(ceil)
-
-extern float __attribute__((overloadable)) copysign(float, float);
-FN_FUNC_FN_FN(copysign)
-
-extern float __attribute__((overloadable)) cos(float);
-FN_FUNC_FN(cos)
-
-extern float __attribute__((overloadable)) cosh(float);
-FN_FUNC_FN(cosh)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) cospi(float v);
-FN_FUNC_FN(cospi)
-
-extern float __attribute__((overloadable)) erfc(float);
-FN_FUNC_FN(erfc)
-
-extern float __attribute__((overloadable)) erf(float);
-FN_FUNC_FN(erf)
-
-extern float __attribute__((overloadable)) exp(float);
-FN_FUNC_FN(exp)
-
-extern float __attribute__((overloadable)) exp2(float);
-FN_FUNC_FN(exp2)
-
-extern float __attribute__((overloadable)) pow(float, float);
-
-_RS_RUNTIME float __attribute__((overloadable)) exp10(float v);
-FN_FUNC_FN(exp10)
-
-extern float __attribute__((overloadable)) expm1(float);
-FN_FUNC_FN(expm1)
-
-extern float __attribute__((overloadable)) fabs(float);
-FN_FUNC_FN(fabs)
-
-extern float __attribute__((overloadable)) fdim(float, float);
-FN_FUNC_FN_FN(fdim)
-
-extern float __attribute__((overloadable)) floor(float);
-FN_FUNC_FN(floor)
-
-extern float __attribute__((overloadable)) fma(float, float, float);
-FN_FUNC_FN_FN_FN(fma)
-
-extern float __attribute__((overloadable)) fmax(float, float);
-FN_FUNC_FN_FN(fmax);
-FN_FUNC_FN_F(fmax);
-
-extern float __attribute__((overloadable)) fmin(float, float);
-FN_FUNC_FN_FN(fmin);
-FN_FUNC_FN_F(fmin);
-
-extern float __attribute__((overloadable)) fmod(float, float);
-FN_FUNC_FN_FN(fmod)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) fract(float v, float *iptr);
-FN_FUNC_FN_PFN(fract)
-
-extern float __attribute__((overloadable)) frexp(float, int *);
-FN_FUNC_FN_PIN(frexp)
-
-extern float __attribute__((overloadable)) hypot(float, float);
-FN_FUNC_FN_FN(hypot)
-
-extern int __attribute__((overloadable)) ilogb(float);
-IN_FUNC_FN(ilogb)
-
-extern float __attribute__((overloadable)) ldexp(float, int);
-FN_FUNC_FN_IN(ldexp)
-FN_FUNC_FN_I(ldexp)
-
-extern float __attribute__((overloadable)) lgamma(float);
-FN_FUNC_FN(lgamma)
-extern float __attribute__((overloadable)) lgamma(float, int*);
-FN_FUNC_FN_PIN(lgamma)
-
-extern float __attribute__((overloadable)) log(float);
-FN_FUNC_FN(log)
-
-
-extern float __attribute__((overloadable)) log10(float);
-FN_FUNC_FN(log10)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) log2(float v);
-FN_FUNC_FN(log2)
-
-extern float __attribute__((overloadable)) log1p(float);
-FN_FUNC_FN(log1p)
-
-extern float __attribute__((overloadable)) logb(float);
-FN_FUNC_FN(logb)
-
-extern float __attribute__((overloadable)) mad(float, float, float);
-FN_FUNC_FN_FN_FN(mad)
-
-extern float __attribute__((overloadable)) modf(float, float *);
-FN_FUNC_FN_PFN(modf);
-
-//extern float __attribute__((overloadable)) nan(uint);
-
-extern float __attribute__((overloadable)) nextafter(float, float);
-FN_FUNC_FN_FN(nextafter)
-
-FN_FUNC_FN_FN(pow)
-
-_RS_RUNTIME float __attribute__((overloadable)) pown(float v, int p);
-_RS_RUNTIME float2 __attribute__((overloadable)) pown(float2 v, int2 p);
-_RS_RUNTIME float3 __attribute__((overloadable)) pown(float3 v, int3 p);
-_RS_RUNTIME float4 __attribute__((overloadable)) pown(float4 v, int4 p);
-
-_RS_RUNTIME float __attribute__((overloadable)) powr(float v, float p);
-_RS_RUNTIME float2 __attribute__((overloadable)) powr(float2 v, float2 p);
-_RS_RUNTIME float3 __attribute__((overloadable)) powr(float3 v, float3 p);
-_RS_RUNTIME float4 __attribute__((overloadable)) powr(float4 v, float4 p);
-
-extern float __attribute__((overloadable)) remainder(float, float);
-FN_FUNC_FN_FN(remainder)
-
-extern float __attribute__((overloadable)) remquo(float, float, int *);
-FN_FUNC_FN_FN_PIN(remquo)
-
-extern float __attribute__((overloadable)) rint(float);
-FN_FUNC_FN(rint)
-
-
-_RS_RUNTIME float __attribute__((overloadable)) rootn(float v, int r);
-_RS_RUNTIME float2 __attribute__((overloadable)) rootn(float2 v, int2 r);
-_RS_RUNTIME float3 __attribute__((overloadable)) rootn(float3 v, int3 r);
-_RS_RUNTIME float4 __attribute__((overloadable)) rootn(float4 v, int4 r);
-
-
-extern float __attribute__((overloadable)) round(float);
-FN_FUNC_FN(round)
-
-
-extern float __attribute__((overloadable)) sqrt(float);
-_RS_RUNTIME float __attribute__((overloadable)) rsqrt(float v);
-FN_FUNC_FN(rsqrt)
-
-extern float __attribute__((overloadable)) sin(float);
-FN_FUNC_FN(sin)
-
-_RS_RUNTIME float __attribute__((overloadable)) sincos(float v, float *cosptr);
-_RS_RUNTIME float2 __attribute__((overloadable)) sincos(float2 v, float2 *cosptr);
-_RS_RUNTIME float3 __attribute__((overloadable)) sincos(float3 v, float3 *cosptr);
-_RS_RUNTIME float4 __attribute__((overloadable)) sincos(float4 v, float4 *cosptr);
-
-extern float __attribute__((overloadable)) sinh(float);
-FN_FUNC_FN(sinh)
-
-_RS_RUNTIME float __attribute__((overloadable)) sinpi(float v);
-FN_FUNC_FN(sinpi)
-
-FN_FUNC_FN(sqrt)
-
-extern float __attribute__((overloadable)) tan(float);
-FN_FUNC_FN(tan)
-
-extern float __attribute__((overloadable)) tanh(float);
-FN_FUNC_FN(tanh)
-
-_RS_RUNTIME float __attribute__((overloadable)) tanpi(float v);
-FN_FUNC_FN(tanpi)
-
-
-extern float __attribute__((overloadable)) tgamma(float);
-FN_FUNC_FN(tgamma)
-
-extern float __attribute__((overloadable)) trunc(float);
-FN_FUNC_FN(trunc)
-
-// Int ops (partial), 6.11.3
-
-#define XN_FUNC_YN(typeout, fnc, typein) \
-extern typeout __attribute__((overloadable)) fnc(typein); \
-_RS_RUNTIME typeout##2 __attribute__((overloadable)) fnc(typein##2 v); \
-_RS_RUNTIME typeout##3 __attribute__((overloadable)) fnc(typein##3 v); \
-_RS_RUNTIME typeout##4 __attribute__((overloadable)) fnc(typein##4 v);
-
-#define UIN_FUNC_IN(fnc) \
-XN_FUNC_YN(uchar, fnc, char) \
-XN_FUNC_YN(ushort, fnc, short) \
-XN_FUNC_YN(uint, fnc, int)
-
-#define IN_FUNC_IN(fnc) \
-XN_FUNC_YN(uchar, fnc, uchar) \
-XN_FUNC_YN(char, fnc, char) \
-XN_FUNC_YN(ushort, fnc, ushort) \
-XN_FUNC_YN(short, fnc, short) \
-XN_FUNC_YN(uint, fnc, uint) \
-XN_FUNC_YN(int, fnc, int)
-
-
-#define XN_FUNC_XN_XN_BODY(type, fnc, body) \
-_RS_RUNTIME type __attribute__((overloadable)) \
- fnc(type v1, type v2); \
-_RS_RUNTIME type##2 __attribute__((overloadable)) \
- fnc(type##2 v1, type##2 v2); \
-_RS_RUNTIME type##3 __attribute__((overloadable)) \
- fnc(type##3 v1, type##3 v2); \
-_RS_RUNTIME type##4 __attribute__((overloadable)) \
- fnc(type##4 v1, type##4 v2);
-
-#define IN_FUNC_IN_IN_BODY(fnc, body) \
-XN_FUNC_XN_XN_BODY(uchar, fnc, body) \
-XN_FUNC_XN_XN_BODY(char, fnc, body) \
-XN_FUNC_XN_XN_BODY(ushort, fnc, body) \
-XN_FUNC_XN_XN_BODY(short, fnc, body) \
-XN_FUNC_XN_XN_BODY(uint, fnc, body) \
-XN_FUNC_XN_XN_BODY(int, fnc, body) \
-XN_FUNC_XN_XN_BODY(float, fnc, body)
-
-UIN_FUNC_IN(abs)
-IN_FUNC_IN(clz)
-
-IN_FUNC_IN_IN_BODY(min, (v1 < v2 ? v1 : v2))
-FN_FUNC_FN_F(min)
-
-IN_FUNC_IN_IN_BODY(max, (v1 > v2 ? v1 : v2))
-FN_FUNC_FN_F(max)
-
-// 6.11.4
-
-_RS_RUNTIME float __attribute__((overloadable)) clamp(float amount, float low, float high);
-_RS_RUNTIME float2 __attribute__((overloadable)) clamp(float2 amount, float2 low, float2 high);
-_RS_RUNTIME float3 __attribute__((overloadable)) clamp(float3 amount, float3 low, float3 high);
-_RS_RUNTIME float4 __attribute__((overloadable)) clamp(float4 amount, float4 low, float4 high);
-_RS_RUNTIME float2 __attribute__((overloadable)) clamp(float2 amount, float low, float high);
-_RS_RUNTIME float3 __attribute__((overloadable)) clamp(float3 amount, float low, float high);
-_RS_RUNTIME float4 __attribute__((overloadable)) clamp(float4 amount, float low, float high);
-
-_RS_RUNTIME float __attribute__((overloadable)) degrees(float radians);
-FN_FUNC_FN(degrees)
-
-_RS_RUNTIME float __attribute__((overloadable)) mix(float start, float stop, float amount);
-_RS_RUNTIME float2 __attribute__((overloadable)) mix(float2 start, float2 stop, float2 amount);
-_RS_RUNTIME float3 __attribute__((overloadable)) mix(float3 start, float3 stop, float3 amount);
-_RS_RUNTIME float4 __attribute__((overloadable)) mix(float4 start, float4 stop, float4 amount);
-_RS_RUNTIME float2 __attribute__((overloadable)) mix(float2 start, float2 stop, float amount);
-_RS_RUNTIME float3 __attribute__((overloadable)) mix(float3 start, float3 stop, float amount);
-_RS_RUNTIME float4 __attribute__((overloadable)) mix(float4 start, float4 stop, float amount);
-
-_RS_RUNTIME float __attribute__((overloadable)) radians(float degrees);
-FN_FUNC_FN(radians)
-
-_RS_RUNTIME float __attribute__((overloadable)) step(float edge, float v);
-_RS_RUNTIME float2 __attribute__((overloadable)) step(float2 edge, float2 v);
-_RS_RUNTIME float3 __attribute__((overloadable)) step(float3 edge, float3 v);
-_RS_RUNTIME float4 __attribute__((overloadable)) step(float4 edge, float4 v);
-_RS_RUNTIME float2 __attribute__((overloadable)) step(float2 edge, float v);
-_RS_RUNTIME float3 __attribute__((overloadable)) step(float3 edge, float v);
-_RS_RUNTIME float4 __attribute__((overloadable)) step(float4 edge, float v);
-
-extern float __attribute__((overloadable)) smoothstep(float, float, float);
-extern float2 __attribute__((overloadable)) smoothstep(float2, float2, float2);
-extern float3 __attribute__((overloadable)) smoothstep(float3, float3, float3);
-extern float4 __attribute__((overloadable)) smoothstep(float4, float4, float4);
-extern float2 __attribute__((overloadable)) smoothstep(float, float, float2);
-extern float3 __attribute__((overloadable)) smoothstep(float, float, float3);
-extern float4 __attribute__((overloadable)) smoothstep(float, float, float4);
-
-_RS_RUNTIME float __attribute__((overloadable)) sign(float v);
-FN_FUNC_FN(sign)
-
-// 6.11.5
-_RS_RUNTIME float3 __attribute__((overloadable)) cross(float3 lhs, float3 rhs);
-
-_RS_RUNTIME float4 __attribute__((overloadable)) cross(float4 lhs, float4 rhs);
-
-_RS_RUNTIME float __attribute__((overloadable)) dot(float lhs, float rhs);
-_RS_RUNTIME float __attribute__((overloadable)) dot(float2 lhs, float2 rhs);
-_RS_RUNTIME float __attribute__((overloadable)) dot(float3 lhs, float3 rhs);
-_RS_RUNTIME float __attribute__((overloadable)) dot(float4 lhs, float4 rhs);
-
-_RS_RUNTIME float __attribute__((overloadable)) length(float v);
-_RS_RUNTIME float __attribute__((overloadable)) length(float2 v);
-_RS_RUNTIME float __attribute__((overloadable)) length(float3 v);
-_RS_RUNTIME float __attribute__((overloadable)) length(float4 v);
-
-_RS_RUNTIME float __attribute__((overloadable)) distance(float lhs, float rhs);
-_RS_RUNTIME float __attribute__((overloadable)) distance(float2 lhs, float2 rhs);
-_RS_RUNTIME float __attribute__((overloadable)) distance(float3 lhs, float3 rhs);
-_RS_RUNTIME float __attribute__((overloadable)) distance(float4 lhs, float4 rhs);
-
-_RS_RUNTIME float __attribute__((overloadable)) normalize(float v);
-_RS_RUNTIME float2 __attribute__((overloadable)) normalize(float2 v);
-_RS_RUNTIME float3 __attribute__((overloadable)) normalize(float3 v);
-_RS_RUNTIME float4 __attribute__((overloadable)) normalize(float4 v);
-
-#undef CVT_FUNC
-#undef CVT_FUNC_2
-#undef FN_FUNC_FN
-#undef IN_FUNC_FN
-#undef FN_FUNC_FN_FN
-#undef FN_FUNC_FN_F
-#undef FN_FUNC_FN_IN
-#undef FN_FUNC_FN_I
-#undef FN_FUNC_FN_PFN
-#undef FN_FUNC_FN_PIN
-#undef FN_FUNC_FN_FN_FN
-#undef FN_FUNC_FN_FN_PIN
-#undef XN_FUNC_YN
-#undef UIN_FUNC_IN
-#undef IN_FUNC_IN
-#undef XN_FUNC_XN_XN_BODY
-#undef IN_FUNC_IN_IN_BODY
-#undef _RS_RUNTIME
-
-#endif
diff --git a/13/renderscript/include/rs_core.rsh b/13/renderscript/include/rs_core.rsh
deleted file mode 100644
index 4768bbe..0000000
--- a/13/renderscript/include/rs_core.rsh
+++ /dev/null
@@ -1,560 +0,0 @@
-#ifndef __RS_CORE_RSH__
-#define __RS_CORE_RSH__
-
-#define _RS_RUNTIME extern
-
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, float);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, float, float);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, float, float, float);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, float, float, float, float);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, double);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, const rs_matrix4x4 *);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, const rs_matrix3x3 *);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, const rs_matrix2x2 *);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, int);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, uint);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, long);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, unsigned long);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, long long);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, unsigned long long);
-/**
- * Debug function. Prints a string and value to the log.
- */
-extern void __attribute__((overloadable))
- rsDebug(const char *, const void *);
-#define RS_DEBUG(a) rsDebug(#a, a)
-#define RS_DEBUG_MARKER rsDebug(__FILE__, __LINE__)
-
-
-/**
- * Debug function. Prints a string and value to the log.
- */
-_RS_RUNTIME void __attribute__((overloadable)) rsDebug(const char *s, float2 v);
-/**
- * Debug function. Prints a string and value to the log.
- */
-_RS_RUNTIME void __attribute__((overloadable)) rsDebug(const char *s, float3 v);
-/**
- * Debug function. Prints a string and value to the log.
- */
-_RS_RUNTIME void __attribute__((overloadable)) rsDebug(const char *s, float4 v);
-
-
-/**
- * Pack floating point (0-1) RGB values into a uchar4. The alpha component is
- * set to 255 (1.0).
- *
- * @param r
- * @param g
- * @param b
- *
- * @return uchar4
- */
-_RS_RUNTIME uchar4 __attribute__((overloadable)) rsPackColorTo8888(float r, float g, float b);
-
-/**
- * Pack floating point (0-1) RGBA values into a uchar4.
- *
- * @param r
- * @param g
- * @param b
- * @param a
- *
- * @return uchar4
- */
-_RS_RUNTIME uchar4 __attribute__((overloadable)) rsPackColorTo8888(float r, float g, float b, float a);
-
-/**
- * Pack floating point (0-1) RGB values into a uchar4. The alpha component is
- * set to 255 (1.0).
- *
- * @param color
- *
- * @return uchar4
- */
-_RS_RUNTIME uchar4 __attribute__((overloadable)) rsPackColorTo8888(float3 color);
-
-/**
- * Pack floating point (0-1) RGBA values into a uchar4.
- *
- * @param color
- *
- * @return uchar4
- */
-_RS_RUNTIME uchar4 __attribute__((overloadable)) rsPackColorTo8888(float4 color);
-
-/**
- * Unpack a uchar4 color to float4. The resulting float range will be (0-1).
- *
- * @param c
- *
- * @return float4
- */
-_RS_RUNTIME float4 rsUnpackColor8888(uchar4 c);
-
-
-/////////////////////////////////////////////////////
-// Matrix ops
-/////////////////////////////////////////////////////
-
-/**
- * Set one element of a matrix.
- *
- * @param m The matrix to be set
- * @param row
- * @param col
- * @param v
- *
- * @return void
- */
-_RS_RUNTIME void __attribute__((overloadable))
-rsMatrixSet(rs_matrix4x4 *m, uint32_t row, uint32_t col, float v);
-_RS_RUNTIME void __attribute__((overloadable))
-rsMatrixSet(rs_matrix3x3 *m, uint32_t row, uint32_t col, float v);
-_RS_RUNTIME void __attribute__((overloadable))
-rsMatrixSet(rs_matrix2x2 *m, uint32_t row, uint32_t col, float v);
-
-/**
- * Get one element of a matrix.
- *
- * @param m The matrix to read from
- * @param row
- * @param col
- *
- * @return float
- */
-_RS_RUNTIME float __attribute__((overloadable))
-rsMatrixGet(const rs_matrix4x4 *m, uint32_t row, uint32_t col);
-_RS_RUNTIME float __attribute__((overloadable))
-rsMatrixGet(const rs_matrix3x3 *m, uint32_t row, uint32_t col);
-_RS_RUNTIME float __attribute__((overloadable))
-rsMatrixGet(const rs_matrix2x2 *m, uint32_t row, uint32_t col);
-
-/**
- * Set the elements of a matrix to the identity matrix.
- *
- * @param m
- */
-extern void __attribute__((overloadable)) rsMatrixLoadIdentity(rs_matrix4x4 *m);
-extern void __attribute__((overloadable)) rsMatrixLoadIdentity(rs_matrix3x3 *m);
-extern void __attribute__((overloadable)) rsMatrixLoadIdentity(rs_matrix2x2 *m);
-
-/**
- * Set the elements of a matrix from an array of floats.
- *
- * @param m
- */
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix4x4 *m, const float *v);
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix3x3 *m, const float *v);
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix2x2 *m, const float *v);
-
-/**
- * Set the elements of a matrix from another matrix.
- *
- * @param m
- */
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix4x4 *m, const rs_matrix4x4 *v);
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix4x4 *m, const rs_matrix3x3 *v);
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix4x4 *m, const rs_matrix2x2 *v);
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix3x3 *m, const rs_matrix3x3 *v);
-extern void __attribute__((overloadable)) rsMatrixLoad(rs_matrix2x2 *m, const rs_matrix2x2 *v);
-
-/**
- * Load a rotation matrix.
- *
- * @param m
- * @param rot
- * @param x
- * @param y
- * @param z
- */
-extern void __attribute__((overloadable))
-rsMatrixLoadRotate(rs_matrix4x4 *m, float rot, float x, float y, float z);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadScale(rs_matrix4x4 *m, float x, float y, float z);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadTranslate(rs_matrix4x4 *m, float x, float y, float z);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadMultiply(rs_matrix4x4 *m, const rs_matrix4x4 *lhs, const rs_matrix4x4 *rhs);
-
-extern void __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix4x4 *m, const rs_matrix4x4 *rhs);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadMultiply(rs_matrix3x3 *m, const rs_matrix3x3 *lhs, const rs_matrix3x3 *rhs);
-
-extern void __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix3x3 *m, const rs_matrix3x3 *rhs);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadMultiply(rs_matrix2x2 *m, const rs_matrix2x2 *lhs, const rs_matrix2x2 *rhs);
-
-extern void __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix2x2 *m, const rs_matrix2x2 *rhs);
-
-extern void __attribute__((overloadable))
-rsMatrixRotate(rs_matrix4x4 *m, float rot, float x, float y, float z);
-
-extern void __attribute__((overloadable))
-rsMatrixScale(rs_matrix4x4 *m, float x, float y, float z);
-
-extern void __attribute__((overloadable))
-rsMatrixTranslate(rs_matrix4x4 *m, float x, float y, float z);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadOrtho(rs_matrix4x4 *m, float left, float right, float bottom, float top, float near, float far);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadFrustum(rs_matrix4x4 *m, float left, float right, float bottom, float top, float near, float far);
-
-extern void __attribute__((overloadable))
-rsMatrixLoadPerspective(rs_matrix4x4* m, float fovy, float aspect, float near, float far);
-
-_RS_RUNTIME float4 __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix4x4 *m, float4 in);
-
-_RS_RUNTIME float4 __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix4x4 *m, float3 in);
-
-_RS_RUNTIME float4 __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix4x4 *m, float2 in);
-
-_RS_RUNTIME float3 __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix3x3 *m, float3 in);
-
-_RS_RUNTIME float3 __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix3x3 *m, float2 in);
-
-_RS_RUNTIME float2 __attribute__((overloadable))
-rsMatrixMultiply(rs_matrix2x2 *m, float2 in);
-
-// Returns true if the matrix was successfully inversed
-extern bool __attribute__((overloadable)) rsMatrixInverse(rs_matrix4x4 *m);
-extern bool __attribute__((overloadable)) rsMatrixInverseTranspose(rs_matrix4x4 *m);
-extern void __attribute__((overloadable)) rsMatrixTranspose(rs_matrix4x4 *m);
-extern void __attribute__((overloadable)) rsMatrixTranspose(rs_matrix3x3 *m);
-extern void __attribute__((overloadable)) rsMatrixTranspose(rs_matrix2x2 *m);
-
-/////////////////////////////////////////////////////
-// quaternion ops
-/////////////////////////////////////////////////////
-
-static void __attribute__((overloadable))
-rsQuaternionSet(rs_quaternion *q, float w, float x, float y, float z) {
- q->w = w;
- q->x = x;
- q->y = y;
- q->z = z;
-}
-
-static void __attribute__((overloadable))
-rsQuaternionSet(rs_quaternion *q, const rs_quaternion *rhs) {
- q->w = rhs->w;
- q->x = rhs->x;
- q->y = rhs->y;
- q->z = rhs->z;
-}
-
-static void __attribute__((overloadable))
-rsQuaternionMultiply(rs_quaternion *q, float s) {
- q->w *= s;
- q->x *= s;
- q->y *= s;
- q->z *= s;
-}
-
-static void __attribute__((overloadable))
-rsQuaternionMultiply(rs_quaternion *q, const rs_quaternion *rhs) {
- q->w = -q->x*rhs->x - q->y*rhs->y - q->z*rhs->z + q->w*rhs->w;
- q->x = q->x*rhs->w + q->y*rhs->z - q->z*rhs->y + q->w*rhs->x;
- q->y = -q->x*rhs->z + q->y*rhs->w + q->z*rhs->x + q->w*rhs->y;
- q->z = q->x*rhs->y - q->y*rhs->x + q->z*rhs->w + q->w*rhs->z;
-}
-
-static void
-rsQuaternionAdd(rs_quaternion *q, const rs_quaternion *rhs) {
- q->w *= rhs->w;
- q->x *= rhs->x;
- q->y *= rhs->y;
- q->z *= rhs->z;
-}
-
-static void
-rsQuaternionLoadRotateUnit(rs_quaternion *q, float rot, float x, float y, float z) {
- rot *= (float)(M_PI / 180.0f) * 0.5f;
- float c = cos(rot);
- float s = sin(rot);
-
- q->w = c;
- q->x = x * s;
- q->y = y * s;
- q->z = z * s;
-}
-
-static void
-rsQuaternionLoadRotate(rs_quaternion *q, float rot, float x, float y, float z) {
- const float len = x*x + y*y + z*z;
- if (len != 1) {
- const float recipLen = 1.f / sqrt(len);
- x *= recipLen;
- y *= recipLen;
- z *= recipLen;
- }
- rsQuaternionLoadRotateUnit(q, rot, x, y, z);
-}
-
-static void
-rsQuaternionConjugate(rs_quaternion *q) {
- q->x = -q->x;
- q->y = -q->y;
- q->z = -q->z;
-}
-
-static float
-rsQuaternionDot(const rs_quaternion *q0, const rs_quaternion *q1) {
- return q0->w*q1->w + q0->x*q1->x + q0->y*q1->y + q0->z*q1->z;
-}
-
-static void
-rsQuaternionNormalize(rs_quaternion *q) {
- const float len = rsQuaternionDot(q, q);
- if (len != 1) {
- const float recipLen = 1.f / sqrt(len);
- rsQuaternionMultiply(q, recipLen);
- }
-}
-
-static void
-rsQuaternionSlerp(rs_quaternion *q, const rs_quaternion *q0, const rs_quaternion *q1, float t) {
- if (t <= 0.0f) {
- rsQuaternionSet(q, q0);
- return;
- }
- if (t >= 1.0f) {
- rsQuaternionSet(q, q1);
- return;
- }
-
- rs_quaternion tempq0, tempq1;
- rsQuaternionSet(&tempq0, q0);
- rsQuaternionSet(&tempq1, q1);
-
- float angle = rsQuaternionDot(q0, q1);
- if (angle < 0) {
- rsQuaternionMultiply(&tempq0, -1.0f);
- angle *= -1.0f;
- }
-
- float scale, invScale;
- if (angle + 1.0f > 0.05f) {
- if (1.0f - angle >= 0.05f) {
- float theta = acos(angle);
- float invSinTheta = 1.0f / sin(theta);
- scale = sin(theta * (1.0f - t)) * invSinTheta;
- invScale = sin(theta * t) * invSinTheta;
- } else {
- scale = 1.0f - t;
- invScale = t;
- }
- } else {
- rsQuaternionSet(&tempq1, tempq0.z, -tempq0.y, tempq0.x, -tempq0.w);
- scale = sin(M_PI * (0.5f - t));
- invScale = sin(M_PI * t);
- }
-
- rsQuaternionSet(q, tempq0.w*scale + tempq1.w*invScale, tempq0.x*scale + tempq1.x*invScale,
- tempq0.y*scale + tempq1.y*invScale, tempq0.z*scale + tempq1.z*invScale);
-}
-
-static void rsQuaternionGetMatrixUnit(rs_matrix4x4 *m, const rs_quaternion *q) {
- float x2 = 2.0f * q->x * q->x;
- float y2 = 2.0f * q->y * q->y;
- float z2 = 2.0f * q->z * q->z;
- float xy = 2.0f * q->x * q->y;
- float wz = 2.0f * q->w * q->z;
- float xz = 2.0f * q->x * q->z;
- float wy = 2.0f * q->w * q->y;
- float wx = 2.0f * q->w * q->x;
- float yz = 2.0f * q->y * q->z;
-
- m->m[0] = 1.0f - y2 - z2;
- m->m[1] = xy - wz;
- m->m[2] = xz + wy;
- m->m[3] = 0.0f;
-
- m->m[4] = xy + wz;
- m->m[5] = 1.0f - x2 - z2;
- m->m[6] = yz - wx;
- m->m[7] = 0.0f;
-
- m->m[8] = xz - wy;
- m->m[9] = yz - wx;
- m->m[10] = 1.0f - x2 - y2;
- m->m[11] = 0.0f;
-
- m->m[12] = 0.0f;
- m->m[13] = 0.0f;
- m->m[14] = 0.0f;
- m->m[15] = 1.0f;
-}
-
-/////////////////////////////////////////////////////
-// utility funcs
-/////////////////////////////////////////////////////
-__inline__ static void __attribute__((overloadable, always_inline))
-rsExtractFrustumPlanes(const rs_matrix4x4 *modelViewProj,
- float4 *left, float4 *right,
- float4 *top, float4 *bottom,
- float4 *near, float4 *far) {
- // x y z w = a b c d in the plane equation
- left->x = modelViewProj->m[3] + modelViewProj->m[0];
- left->y = modelViewProj->m[7] + modelViewProj->m[4];
- left->z = modelViewProj->m[11] + modelViewProj->m[8];
- left->w = modelViewProj->m[15] + modelViewProj->m[12];
-
- right->x = modelViewProj->m[3] - modelViewProj->m[0];
- right->y = modelViewProj->m[7] - modelViewProj->m[4];
- right->z = modelViewProj->m[11] - modelViewProj->m[8];
- right->w = modelViewProj->m[15] - modelViewProj->m[12];
-
- top->x = modelViewProj->m[3] - modelViewProj->m[1];
- top->y = modelViewProj->m[7] - modelViewProj->m[5];
- top->z = modelViewProj->m[11] - modelViewProj->m[9];
- top->w = modelViewProj->m[15] - modelViewProj->m[13];
-
- bottom->x = modelViewProj->m[3] + modelViewProj->m[1];
- bottom->y = modelViewProj->m[7] + modelViewProj->m[5];
- bottom->z = modelViewProj->m[11] + modelViewProj->m[9];
- bottom->w = modelViewProj->m[15] + modelViewProj->m[13];
-
- near->x = modelViewProj->m[3] + modelViewProj->m[2];
- near->y = modelViewProj->m[7] + modelViewProj->m[6];
- near->z = modelViewProj->m[11] + modelViewProj->m[10];
- near->w = modelViewProj->m[15] + modelViewProj->m[14];
-
- far->x = modelViewProj->m[3] - modelViewProj->m[2];
- far->y = modelViewProj->m[7] - modelViewProj->m[6];
- far->z = modelViewProj->m[11] - modelViewProj->m[10];
- far->w = modelViewProj->m[15] - modelViewProj->m[14];
-
- float len = length(left->xyz);
- *left /= len;
- len = length(right->xyz);
- *right /= len;
- len = length(top->xyz);
- *top /= len;
- len = length(bottom->xyz);
- *bottom /= len;
- len = length(near->xyz);
- *near /= len;
- len = length(far->xyz);
- *far /= len;
-}
-
-__inline__ static bool __attribute__((overloadable, always_inline))
-rsIsSphereInFrustum(float4 *sphere,
- float4 *left, float4 *right,
- float4 *top, float4 *bottom,
- float4 *near, float4 *far) {
-
- float distToCenter = dot(left->xyz, sphere->xyz) + left->w;
- if (distToCenter < -sphere->w) {
- return false;
- }
- distToCenter = dot(right->xyz, sphere->xyz) + right->w;
- if (distToCenter < -sphere->w) {
- return false;
- }
- distToCenter = dot(top->xyz, sphere->xyz) + top->w;
- if (distToCenter < -sphere->w) {
- return false;
- }
- distToCenter = dot(bottom->xyz, sphere->xyz) + bottom->w;
- if (distToCenter < -sphere->w) {
- return false;
- }
- distToCenter = dot(near->xyz, sphere->xyz) + near->w;
- if (distToCenter < -sphere->w) {
- return false;
- }
- distToCenter = dot(far->xyz, sphere->xyz) + far->w;
- if (distToCenter < -sphere->w) {
- return false;
- }
- return true;
-}
-
-
-/////////////////////////////////////////////////////
-// int ops
-/////////////////////////////////////////////////////
-
-_RS_RUNTIME uint __attribute__((overloadable, always_inline)) rsClamp(uint amount, uint low, uint high);
-_RS_RUNTIME int __attribute__((overloadable, always_inline)) rsClamp(int amount, int low, int high);
-_RS_RUNTIME ushort __attribute__((overloadable, always_inline)) rsClamp(ushort amount, ushort low, ushort high);
-_RS_RUNTIME short __attribute__((overloadable, always_inline)) rsClamp(short amount, short low, short high);
-_RS_RUNTIME uchar __attribute__((overloadable, always_inline)) rsClamp(uchar amount, uchar low, uchar high);
-_RS_RUNTIME char __attribute__((overloadable, always_inline)) rsClamp(char amount, char low, char high);
-
-#undef _RS_RUNTIME
-
-#endif
diff --git a/13/renderscript/include/rs_graphics.rsh b/13/renderscript/include/rs_graphics.rsh
deleted file mode 100644
index 67ffc3d..0000000
--- a/13/renderscript/include/rs_graphics.rsh
+++ /dev/null
@@ -1,252 +0,0 @@
-#ifndef __RS_GRAPHICS_RSH__
-#define __RS_GRAPHICS_RSH__
-
-
-/**
- * Bind a new ProgramFragment to the rendering context.
- *
- * @param pf
- */
-extern void __attribute__((overloadable))
- rsgBindProgramFragment(rs_program_fragment pf);
-
-/**
- * Bind a new ProgramStore to the rendering context.
- *
- * @param ps
- */
-extern void __attribute__((overloadable))
- rsgBindProgramStore(rs_program_store ps);
-
-/**
- * Bind a new ProgramVertex to the rendering context.
- *
- * @param pv
- */
-extern void __attribute__((overloadable))
- rsgBindProgramVertex(rs_program_vertex pv);
-
-/**
- * Bind a new ProgramRaster to the rendering context.
- *
- * @param pr
- */
-extern void __attribute__((overloadable))
- rsgBindProgramRaster(rs_program_raster pr);
-
-/**
- * Bind a new Sampler object to a ProgramFragment. The sampler will
- * operate on the texture bound at the matching slot.
- *
- * @param slot
- */
-extern void __attribute__((overloadable))
- rsgBindSampler(rs_program_fragment, uint slot, rs_sampler);
-
-/**
- * Bind a new Allocation object to a ProgramFragment. The
- * Allocation must be a valid texture for the Program. The sampling
- * of the texture will be controled by the Sampler bound at the
- * matching slot.
- *
- * @param slot
- */
-extern void __attribute__((overloadable))
- rsgBindTexture(rs_program_fragment, uint slot, rs_allocation);
-
-
-extern void __attribute__((overloadable))
- rsgProgramVertexLoadProjectionMatrix(const rs_matrix4x4 *);
-extern void __attribute__((overloadable))
- rsgProgramVertexLoadModelMatrix(const rs_matrix4x4 *);
-extern void __attribute__((overloadable))
- rsgProgramVertexLoadTextureMatrix(const rs_matrix4x4 *);
-
-extern void __attribute__((overloadable))
- rsgProgramVertexGetProjectionMatrix(rs_matrix4x4 *);
-
-/**
- * Set the constant color for a fixed function emulation program.
- *
- * @param pf
- * @param r
- * @param g
- * @param b
- * @param a
- */
-extern void __attribute__((overloadable))
- rsgProgramFragmentConstantColor(rs_program_fragment pf, float r, float g, float b, float a);
-
-/**
- * Get the width of the current rendering surface.
- *
- * @return uint
- */
-extern uint __attribute__((overloadable))
- rsgGetWidth(void);
-
-/**
- * Get the height of the current rendering surface.
- *
- * @return uint
- */
-extern uint __attribute__((overloadable))
- rsgGetHeight(void);
-
-
-/**
- * Sync the contents of an allocation from its SCRIPT memory space to its HW
- * memory spaces.
- *
- * @param alloc
- */
-extern void __attribute__((overloadable))
- rsgAllocationSyncAll(rs_allocation alloc);
-
-/**
- * Low performance utility function for drawing a simple rectangle. Not
- * intended for drawing large quantities of geometry.
- *
- * @param x1
- * @param y1
- * @param x2
- * @param y2
- * @param z
- */
-extern void __attribute__((overloadable))
- rsgDrawRect(float x1, float y1, float x2, float y2, float z);
-
-/**
- * Low performance utility function for drawing a simple quad. Not intended for
- * drawing large quantities of geometry.
- *
- * @param x1
- * @param y1
- * @param z1
- * @param x2
- * @param y2
- * @param z2
- * @param x3
- * @param y3
- * @param z3
- * @param x4
- * @param y4
- * @param z4
- */
-extern void __attribute__((overloadable))
- rsgDrawQuad(float x1, float y1, float z1,
- float x2, float y2, float z2,
- float x3, float y3, float z3,
- float x4, float y4, float z4);
-
-
-/**
- * Low performance utility function for drawing a textured quad. Not intended
- * for drawing large quantities of geometry.
- *
- * @param x1
- * @param y1
- * @param z1
- * @param u1
- * @param v1
- * @param x2
- * @param y2
- * @param z2
- * @param u2
- * @param v2
- * @param x3
- * @param y3
- * @param z3
- * @param u3
- * @param v3
- * @param x4
- * @param y4
- * @param z4
- * @param u4
- * @param v4
- */
-extern void __attribute__((overloadable))
- rsgDrawQuadTexCoords(float x1, float y1, float z1, float u1, float v1,
- float x2, float y2, float z2, float u2, float v2,
- float x3, float y3, float z3, float u3, float v3,
- float x4, float y4, float z4, float u4, float v4);
-
-
-/**
- * Low performance function for drawing rectangles in screenspace. This
- * function uses the default passthough ProgramVertex. Any bound ProgramVertex
- * is ignored. This function has considerable overhead and should not be used
- * for drawing in shipping applications.
- *
- * @param x
- * @param y
- * @param z
- * @param w
- * @param h
- */
-extern void __attribute__((overloadable))
- rsgDrawSpriteScreenspace(float x, float y, float z, float w, float h);
-
-/**
- * Draw a mesh of geometry using the current context state. The whole mesh is
- * rendered.
- *
- * @param ism
- */
-extern void __attribute__((overloadable))
- rsgDrawMesh(rs_mesh ism);
-extern void __attribute__((overloadable))
- rsgDrawMesh(rs_mesh ism, uint primitiveIndex);
-extern void __attribute__((overloadable))
- rsgDrawMesh(rs_mesh ism, uint primitiveIndex, uint start, uint len);
-
-/**
- * Clears the rendering surface to the specified color.
- *
- * @param r
- * @param g
- * @param b
- * @param a
- */
-extern void __attribute__((overloadable))
- rsgClearColor(float r, float g, float b, float a);
-
-/**
- * Clears the depth suface to the specified value.
- *
- */
-extern void __attribute__((overloadable))
- rsgClearDepth(float value);
-
-extern void __attribute__((overloadable))
- rsgDrawText(const char *, int x, int y);
-extern void __attribute__((overloadable))
- rsgDrawText(rs_allocation, int x, int y);
-extern void __attribute__((overloadable))
- rsgBindFont(rs_font);
-extern void __attribute__((overloadable))
- rsgFontColor(float, float, float, float);
-// Returns the bounding box of the text relative to (0, 0)
-// Any of left, right, top, bottom could be NULL
-extern void __attribute__((overloadable))
- rsgMeasureText(const char *, int *left, int *right, int *top, int *bottom);
-extern void __attribute__((overloadable))
- rsgMeasureText(rs_allocation, int *left, int *right, int *top, int *bottom);
-
-extern void __attribute__((overloadable))
- rsgMeshComputeBoundingBox(rs_mesh mesh, float *minX, float *minY, float *minZ,
- float *maxX, float *maxY, float *maxZ);
-__inline__ static void __attribute__((overloadable, always_inline))
-rsgMeshComputeBoundingBox(rs_mesh mesh, float3 *bBoxMin, float3 *bBoxMax) {
- float x1, y1, z1, x2, y2, z2;
- rsgMeshComputeBoundingBox(mesh, &x1, &y1, &z1, &x2, &y2, &z2);
- bBoxMin->x = x1;
- bBoxMin->y = y1;
- bBoxMin->z = z1;
- bBoxMax->x = x2;
- bBoxMax->y = y2;
- bBoxMax->z = z2;
-}
-
-#endif
-
diff --git a/13/renderscript/include/rs_math.rsh b/13/renderscript/include/rs_math.rsh
deleted file mode 100644
index 6e3cfdb..0000000
--- a/13/renderscript/include/rs_math.rsh
+++ /dev/null
@@ -1,209 +0,0 @@
-#ifndef __RS_MATH_RSH__
-#define __RS_MATH_RSH__
-
-/**
- * Copy reference to the specified object.
- *
- * @param dst
- * @param src
- */
-extern void __attribute__((overloadable))
- rsSetObject(rs_element *dst, rs_element src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_type *dst, rs_type src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_allocation *dst, rs_allocation src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_sampler *dst, rs_sampler src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_script *dst, rs_script src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_mesh *dst, rs_mesh src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_program_fragment *dst, rs_program_fragment src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_program_vertex *dst, rs_program_vertex src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_program_raster *dst, rs_program_raster src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_program_store *dst, rs_program_store src);
-extern void __attribute__((overloadable))
- rsSetObject(rs_font *dst, rs_font src);
-
-/**
- * Sets the object to NULL.
- *
- * @return bool
- */
-extern void __attribute__((overloadable))
- rsClearObject(rs_element *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_type *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_allocation *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_sampler *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_script *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_mesh *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_program_fragment *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_program_vertex *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_program_raster *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_program_store *dst);
-extern void __attribute__((overloadable))
- rsClearObject(rs_font *dst);
-
-/**
- * Tests if the object is valid. Returns true if the object is valid, false if
- * it is NULL.
- *
- * @return bool
- */
-extern bool __attribute__((overloadable))
- rsIsObject(rs_element);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_type);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_allocation);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_sampler);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_script);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_mesh);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_program_fragment);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_program_vertex);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_program_raster);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_program_store);
-extern bool __attribute__((overloadable))
- rsIsObject(rs_font);
-
-
-/**
- * Returns the Allocation for a given pointer. The pointer should point within
- * a valid allocation. The results are undefined if the pointer is not from a
- * valid allocation.
- */
-extern rs_allocation __attribute__((overloadable))
- rsGetAllocation(const void *);
-
-/**
- * Query the dimension of an allocation.
- *
- * @return uint32_t The X dimension of the allocation.
- */
-extern uint32_t __attribute__((overloadable))
- rsAllocationGetDimX(rs_allocation);
-
-/**
- * Query the dimension of an allocation.
- *
- * @return uint32_t The Y dimension of the allocation.
- */
-extern uint32_t __attribute__((overloadable))
- rsAllocationGetDimY(rs_allocation);
-
-/**
- * Query the dimension of an allocation.
- *
- * @return uint32_t The Z dimension of the allocation.
- */
-extern uint32_t __attribute__((overloadable))
- rsAllocationGetDimZ(rs_allocation);
-
-/**
- * Query an allocation for the presence of more than one LOD.
- *
- * @return uint32_t Returns 1 if more than one LOD is present, 0 otherwise.
- */
-extern uint32_t __attribute__((overloadable))
- rsAllocationGetDimLOD(rs_allocation);
-
-/**
- * Query an allocation for the presence of more than one face.
- *
- * @return uint32_t Returns 1 if more than one face is present, 0 otherwise.
- */
-extern uint32_t __attribute__((overloadable))
- rsAllocationGetDimFaces(rs_allocation);
-
-// Extract a single element from an allocation.
-extern const void * __attribute__((overloadable))
- rsGetElementAt(rs_allocation, uint32_t x);
-extern const void * __attribute__((overloadable))
- rsGetElementAt(rs_allocation, uint32_t x, uint32_t y);
-extern const void * __attribute__((overloadable))
- rsGetElementAt(rs_allocation, uint32_t x, uint32_t y, uint32_t z);
-
-// Return a random value between 0 (or min_value) and max_malue.
-extern int __attribute__((overloadable))
- rsRand(int max_value);
-extern int __attribute__((overloadable))
- rsRand(int min_value, int max_value);
-extern float __attribute__((overloadable))
- rsRand(float max_value);
-extern float __attribute__((overloadable))
- rsRand(float min_value, float max_value);
-
-// return the fractional part of a float
-// min(v - ((int)floor(v)), 0x1.fffffep-1f);
-extern float __attribute__((overloadable))
- rsFrac(float);
-
-// Send a message back to the client. Will not block and returns true
-// if the message was sendable and false if the fifo was full.
-// A message ID is required. Data payload is optional.
-extern bool __attribute__((overloadable))
- rsSendToClient(int cmdID);
-extern bool __attribute__((overloadable))
- rsSendToClient(int cmdID, const void *data, uint len);
-
-// Send a message back to the client, blocking until the message is queued.
-// A message ID is required. Data payload is optional.
-extern void __attribute__((overloadable))
- rsSendToClientBlocking(int cmdID);
-extern void __attribute__((overloadable))
- rsSendToClientBlocking(int cmdID, const void *data, uint len);
-
-
-// Script to Script
-enum rs_for_each_strategy {
- RS_FOR_EACH_STRATEGY_SERIAL,
- RS_FOR_EACH_STRATEGY_DONT_CARE,
- RS_FOR_EACH_STRATEGY_DST_LINEAR,
- RS_FOR_EACH_STRATEGY_TILE_SMALL,
- RS_FOR_EACH_STRATEGY_TILE_MEDIUM,
- RS_FOR_EACH_STRATEGY_TILE_LARGE
-};
-
-typedef struct rs_script_call {
- enum rs_for_each_strategy strategy;
- uint32_t xStart;
- uint32_t xEnd;
- uint32_t yStart;
- uint32_t yEnd;
- uint32_t zStart;
- uint32_t zEnd;
- uint32_t arrayStart;
- uint32_t arrayEnd;
-} rs_script_call_t;
-
-extern void __attribute__((overloadable))
- rsForEach(rs_script script, rs_allocation input,
- rs_allocation output, const void * usrData);
-
-extern void __attribute__((overloadable))
- rsForEach(rs_script script, rs_allocation input,
- rs_allocation output, const void * usrData,
- const rs_script_call_t *);
-
-#endif
diff --git a/13/renderscript/include/rs_time.rsh b/13/renderscript/include/rs_time.rsh
deleted file mode 100644
index f1abed6..0000000
--- a/13/renderscript/include/rs_time.rsh
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef __RS_TIME_RSH__
-#define __RS_TIME_RSH__
-
-typedef int rs_time_t;
-
-typedef struct {
- int tm_sec;
- int tm_min;
- int tm_hour;
- int tm_mday;
- int tm_mon;
- int tm_year;
- int tm_wday;
- int tm_yday;
- int tm_isdst;
-} rs_tm;
-
-extern rs_time_t __attribute__((overloadable))
- rsTime(rs_time_t *timer);
-
-extern rs_tm * __attribute__((overloadable))
- rsLocaltime(rs_tm *local, const rs_time_t *timer);
-
-// Return the current system clock in milliseconds
-extern int64_t __attribute__((overloadable))
- rsUptimeMillis(void);
-
-// Return the current system clock in nanoseconds
-extern int64_t __attribute__((overloadable))
- rsUptimeNanos(void);
-
-// Return the time in seconds since function was last called in this script.
-extern float __attribute__((overloadable))
- rsGetDt(void);
-
-#endif
diff --git a/13/renderscript/include/rs_types.rsh b/13/renderscript/include/rs_types.rsh
deleted file mode 100644
index a010096..0000000
--- a/13/renderscript/include/rs_types.rsh
+++ /dev/null
@@ -1,80 +0,0 @@
-#ifndef __RS_TYPES_RSH__
-#define __RS_TYPES_RSH__
-
-#define M_PI 3.14159265358979323846264338327950288f /* pi */
-
-#include "stdbool.h"
-typedef char int8_t;
-typedef short int16_t;
-typedef int int32_t;
-typedef long long int64_t;
-
-typedef unsigned char uint8_t;
-typedef unsigned short uint16_t;
-typedef unsigned int uint32_t;
-typedef unsigned long long uint64_t;
-
-typedef uint8_t uchar;
-typedef uint16_t ushort;
-typedef uint32_t uint;
-typedef uint64_t ulong;
-
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_element;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_type;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_allocation;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_sampler;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_script;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_mesh;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_program_fragment;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_program_vertex;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_program_raster;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_program_store;
-typedef struct { const int* const p; } __attribute__((packed, aligned(4))) rs_font;
-
-
-typedef float float2 __attribute__((ext_vector_type(2)));
-typedef float float3 __attribute__((ext_vector_type(3)));
-typedef float float4 __attribute__((ext_vector_type(4)));
-
-typedef uchar uchar2 __attribute__((ext_vector_type(2)));
-typedef uchar uchar3 __attribute__((ext_vector_type(3)));
-typedef uchar uchar4 __attribute__((ext_vector_type(4)));
-
-typedef ushort ushort2 __attribute__((ext_vector_type(2)));
-typedef ushort ushort3 __attribute__((ext_vector_type(3)));
-typedef ushort ushort4 __attribute__((ext_vector_type(4)));
-
-typedef uint uint2 __attribute__((ext_vector_type(2)));
-typedef uint uint3 __attribute__((ext_vector_type(3)));
-typedef uint uint4 __attribute__((ext_vector_type(4)));
-
-typedef char char2 __attribute__((ext_vector_type(2)));
-typedef char char3 __attribute__((ext_vector_type(3)));
-typedef char char4 __attribute__((ext_vector_type(4)));
-
-typedef short short2 __attribute__((ext_vector_type(2)));
-typedef short short3 __attribute__((ext_vector_type(3)));
-typedef short short4 __attribute__((ext_vector_type(4)));
-
-typedef int int2 __attribute__((ext_vector_type(2)));
-typedef int int3 __attribute__((ext_vector_type(3)));
-typedef int int4 __attribute__((ext_vector_type(4)));
-
-
-typedef struct {
- float m[16];
-} rs_matrix4x4;
-
-typedef struct {
- float m[9];
-} rs_matrix3x3;
-
-typedef struct {
- float m[4];
-} rs_matrix2x2;
-
-typedef float4 rs_quaternion;
-
-#define RS_PACKED __attribute__((packed, aligned(4)))
-
-#endif