https://llvm.org/bugs/show_bug.cgi?id=24540
Bug ID: 24540 Summary: [powerpc-ubuntu] build failed with -maltivec option Product: new-bugs Version: 3.7 Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P Component: new bugs Assignee: unassignedb...@nondot.org Reporter: kanaga...@yahoo.ca CC: llvm-bugs@lists.llvm.org Classification: Unclassified I am using the latest LLVM/Clang Version: llc -version = LLVM (http://llvm.org/): LLVM version 3.8.0svn Optimized build with assertions. Built Aug 21 2015 (11:35:26). Default target: powerpc64le-unknown-linux-gnu Host CPU: pwr8 Registered Targets: ppc32 - PowerPC 32 ppc64 - PowerPC 64 ppc64le - PowerPC 64 LE clang --version = clang version 3.8.0 (trunk 245701) When include the -maltivec in the compiler option i am seeing the following build error: In file included from <built-in>:332: In file included from <command line>:6: /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:122:35: error: passing '__vector long long' (vector of 1 'long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(long long)))) long long' (vector of 2 'long long' values) return __builtin_altivec_vmaxsd(__a, -__a); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:134:59: error: excess elements in vector initializer vector unsigned long long __res = { 0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFF }; ^~~~~~~~~~~~~~~~~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:401:36: error: passing '__vector __int128' (vector of 1 '__int128' value) to parameter of incompatible type '__attribute__((__vector_size__(1 * sizeof(unsigned __int128)))) unsigned __int128' (vector of 1 'unsigned __int128' value) return __builtin_altivec_vaddcuq(__a, __b); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:624:37: error: passing '__vector __int128' (vector of 1 '__int128' value) to parameter of incompatible type '__attribute__((__vector_size__(1 * sizeof(unsigned __int128)))) unsigned __int128' (vector of 1 'unsigned __int128' value) return __builtin_altivec_vaddeuqm(__a, __b, __c); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:637:36: error: passing '__vector __int128' (vector of 1 '__int128' value) to parameter of incompatible type '__attribute__((__vector_size__(1 * sizeof(unsigned __int128)))) unsigned __int128' (vector of 1 'unsigned __int128' value) return __builtin_altivec_vaddcuq(__a, __b); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:650:37: error: passing '__vector __int128' (vector of 1 '__int128' value) to parameter of incompatible type '__attribute__((__vector_size__(1 * sizeof(unsigned __int128)))) unsigned __int128' (vector of 1 'unsigned __int128' value) return __builtin_altivec_vaddecuq(__a, __b, __c); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1489:60: error: passing '__vector long long' (vector of 1 'long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(long long)))) long long' (vector of 2 'long long' values) return (vector bool long long)__builtin_altivec_vcmpequd(__a, __b); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1495:7: error: passing '__vector long long' (vector of 1 'long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(long long)))) long long' (vector of 2 'long long' values) (vector long long)__a, (vector long long)__b); ^~~~~~~~~~~~~~~~~~~~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1511:10: error: invalid conversion between vector type '__vector __bool unsigned long long' (vector of 1 'unsigned long long' value) and '__attribute__((__vector_size__(2 * sizeof(unsigned long long)))) unsigned long long' (vector of 2 'unsigned long long' values) of different size return (vector bool long long)__builtin_vsx_xvcmpeqdp(__a, __b); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1529:10: error: invalid conversion between vector type '__vector __bool unsigned long long' (vector of 1 'unsigned long long' value) and '__attribute__((__vector_size__(2 * sizeof(unsigned long long)))) unsigned long long' (vector of 2 'unsigned long long' values) of different size return (vector bool long long)__builtin_vsx_xvcmpgedp(__a, __b); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1592:60: error: passing '__vector long long' (vector of 1 'long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(long long)))) long long' (vector of 2 'long long' values) return (vector bool long long)__builtin_altivec_vcmpgtsd(__a, __b); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1597:60: error: passing '__vector unsigned long long' (vector of 1 'unsigned long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(unsigned long long)))) unsigned long long' (vector of 2 'unsigned long long' values) return (vector bool long long)__builtin_altivec_vcmpgtud(__a, __b); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1613:10: error: invalid conversion between vector type '__vector __bool unsigned long long' (vector of 1 'unsigned long long' value) and '__attribute__((__vector_size__(2 * sizeof(unsigned long long)))) unsigned long long' (vector of 2 'unsigned long long' values) of different size return (vector bool long long)__builtin_vsx_xvcmpgtdp(__a, __b); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1748:34: error: passing '__vector signed char' (vector of 16 'signed char' values) to parameter of incompatible type '__attribute__((__vector_size__(16 * sizeof(unsigned char)))) unsigned char' (vector of 16 'unsigned char' values) return __builtin_altivec_vclzb(__a); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1754:34: error: passing '__vector short' (vector of 8 'short' values) to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(unsigned short)))) unsigned short' (vector of 8 'unsigned short' values) return __builtin_altivec_vclzh(__a); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1760:34: error: passing '__vector int' (vector of 4 'int' values) to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(unsigned int)))) unsigned int' (vector of 4 'unsigned int' values) return __builtin_altivec_vclzw(__a); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1767:34: error: passing '__vector long long' (vector of 1 'long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(unsigned long long)))) unsigned long long' (vector of 2 'unsigned long long' values) return __builtin_altivec_vclzd(__a); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:1771:34: error: passing '__vector unsigned long long' (vector of 1 'unsigned long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(unsigned long long)))) unsigned long long' (vector of 2 'unsigned long long' values) return __builtin_altivec_vclzd(__a); ^~~ /home/kajank/compiler/llvm/Release+Asserts/bin/../lib/clang/3.8.0/include/altivec.h:2962:35: error: passing '__vector long long' (vector of 1 'long long' value) to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(long long)))) long long' (vector of 2 'long long' values) return __builtin_altivec_vmaxsd(__a, __b); ^~~ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. makefile:3: recipe for target 'kernel.ocl' failed make: *** [kernel.ocl] Error 1 -=------------------------------------------------------------------------ Let me know if you need any additional information: OpenCL kernel is very simple, I only wanted to test the -maltivec option using it. -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ llvm-bugs mailing list llvm-bugs@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs