Граф коммитов

250 Коммитов

Автор SHA1 Сообщение Дата
Oscar Fuentes be7025e300 CMake: updated list of installable header files. PR9321.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126572 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-27 13:33:31 +00:00
Oscar Fuentes a3f787c32b Put targets on folders, if the IDE supports the feature.
Requires CMake 2.8.3 or newer.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126094 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-20 22:06:44 +00:00
Oscar Fuentes c8da1ecaf5 New function for tablegenning: clang_tablegen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126093 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-20 22:06:32 +00:00
Anton Yartsev 64ce733f60 Optimized IR for vec_splat
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120610 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-01 21:59:31 +00:00
Chandler Carruth 7acb953031 Undo part of my previous commit to mm_malloc.h, going back to the use of
stdlib.h. There were numerous problems with forward declaring 'malloc' and
'free', but the most important is that these are reserved by POSIX and may be
implemented via a function-like macro.

As suggested by Dale Johannesen, I'm instead guarding the only include of this
in our builtin headers with __STDC_HOSTED__, and I've removed the include of
the header from the test suite. I'll discuss with folks whether we want to have
a hosted section of the test suite or not, and add it (and perhaps other tests)
back there if that's the direction.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119958 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-22 08:06:31 +00:00
Anton Yartsev e19df18399 turned pointers into pointers to const in function parameters in all functions/builtins accepting pointers to a const-qualified type according to PIM and "Language Extensions for CBEA"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119376 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 20:09:36 +00:00
Chandler Carruth ac21a21a49 Futher reduce the includes of our builtin headers, and teach limits.h to avoid
include_next when not hosted or unavailable. This follows the pattern in
stdint.h and allows these headers to work even in a freestanding configuration
without a standard library.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119343 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 10:07:43 +00:00
Douglas Gregor 105716ecab Fix CMake installation of arm_neon.h
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116835 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-19 18:06:10 +00:00
NAKAMURA Takumi 51f56fc36e lib/Headers/stddef.h: wint_t should be defined whenever <stddef.h> is included with __need_wint_t.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116794 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-19 03:42:41 +00:00
Eric Christopher 87a34fd801 From scratch rewrite of mm_malloc.h.
Patch by Matthew Beaumont-Gay!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116771 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-18 23:38:51 +00:00
Anton Yartsev 44270d6abf support for AltiVec extensions from the Cell architecture
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116478 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-14 14:37:46 +00:00
Douglas Gregor d1e6fdb4c5 Eliminate CIndexer::getClangPath(), since libclang no longer depends
on the presence of a 'clang' executable. Simplify
CIndexer::getClangResourcesPath() a bit.

Patch up the CMake makefiles to install headers into two locations in
the build tree, for those silly cases where 'clang' will end up
looking into the wrong build directory for headers.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116260 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-11 23:17:59 +00:00
Chris Lattner 69993392d2 the mmx intrinsic for pshufw should map to the IR intrinsic, not
to a shufflevector.  Otherwise it doesn't turn into a pshufw.
This bug was introduced in the mmx rewrite.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115423 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02 21:32:59 +00:00
Chris Lattner fcb0b2587d __builtin_ia32_psrldqi128 too
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115301 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01 06:58:49 +00:00
Chris Lattner 8a72034e41 the second argument to __builtin_ia32_pslldqi128 must be an immediate,
so it needs to be called from a macro, not a function.  This is a necessary
but insufficient step towards fixing PR8221


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115299 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-01 06:52:23 +00:00
Dale Johannesen d47e262935 Clang part of MMX rewrite (goes with 115243).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115244 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-30 23:57:50 +00:00
Douglas Gregor 593770b4ba Define _Bool, bool, true, and false macros in <stdbool.h> when we're
in a GNU-compatible C++ dialect. Fixes <rdar://problem/8477819>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115028 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-29 04:57:11 +00:00
Bill Wendling 28cab383fd Accidentally committed some temporary changes on my branch when reverting patches.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114936 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-28 01:28:56 +00:00
Bill Wendling 2a674e8e44 Temporarily revert 114929 114925 114924 114921. It looked like they (or at least
one of them) was causing a series of failures:

http://google1.osuosl.org:8011/builders/clang-x86_64-darwin10-selfhost/builds/4518

svn merge -c -114929 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114929 into '.':
U    include/clang/Sema/Sema.h
U    include/clang/AST/DeclCXX.h
U    lib/Sema/SemaDeclCXX.cpp
U    lib/Sema/SemaTemplateInstantiateDecl.cpp
U    lib/Sema/SemaDecl.cpp
U    lib/Sema/SemaTemplateInstantiate.cpp
U    lib/AST/DeclCXX.cpp
svn merge -c -114925 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114925 into '.':
G    include/clang/AST/DeclCXX.h
G    lib/Sema/SemaDeclCXX.cpp
G    lib/AST/DeclCXX.cpp
svn merge -c -114924 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114924 into '.':
G    include/clang/AST/DeclCXX.h
G    lib/Sema/SemaDeclCXX.cpp
G    lib/Sema/SemaDecl.cpp
G    lib/AST/DeclCXX.cpp
U    lib/AST/ASTContext.cpp
svn merge -c -114921 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114921 into '.':
G    include/clang/AST/DeclCXX.h
G    lib/Sema/SemaDeclCXX.cpp
G    lib/Sema/SemaDecl.cpp
G    lib/AST/DeclCXX.cpp



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114933 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-28 01:09:49 +00:00
Anton Yartsev 3ed3272a54 formatted everything to fit within 80 columns
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114249 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18 00:39:16 +00:00
Chris Lattner 6d6370ee10 fix PR7192 by defining wchar_t in a more conventional way. The
type of L"x" can change based on command line arguments.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113127 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-05 23:29:49 +00:00
Chris Lattner 551f37c692 fix incorrect MM_HINT_ definitions, PR8011
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112283 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-27 20:10:06 +00:00
Eric Christopher faf9404ae2 Move some type defines from smmintrin.h to emmintrin.h to match where
gcc defines them.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112146 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-26 02:09:25 +00:00
Nick Lewycky b76495673a Add x86intrin.h which is generic x86 intrinsics for more than just Intel. Thus
far, this just #include's immintrin.h for compatibility.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111785 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-22 20:38:05 +00:00
Benjamin Kramer 01b57e362a Disallow direct inclusion of avxintrin.h. Users should include immintrin.h instead. This matches GCC's behavior.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111692 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 23:00:03 +00:00
Benjamin Kramer 033b7b327e Add immintrin meta header.
- This is the official way to get AVX intrinsics, we might want to disallow
  direct inclusion of avxintrin.h, just like GCC does.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111660 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 18:04:07 +00:00
Chris Lattner 3a70f86144 alphabeticalize
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111654 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 17:24:02 +00:00
Chris Lattner 46c25ef266 hopefully unbreak the msvc buildbot.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111653 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 17:23:33 +00:00
Benjamin Kramer 0930b6e6c8 Fix header comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111645 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 16:47:17 +00:00
Chris Lattner d6b84b9455 fix some vector extractions to return properly zero extended values
(instead of sign extending) to match ICC.  GCC is changing this in 
a series of their own PRs (e.g. 41323).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111637 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20 16:08:33 +00:00
Anton Yartsev a4f235b7ca support for predicates with bool/pixel arguments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111515 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19 11:57:49 +00:00
Anton Yartsev a2fc0f54d6 support for the rest of AltiVec functions with bool/pixel arguments and return values (except predicates)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111511 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19 03:21:36 +00:00
Anton Yartsev f54dbfdd16 support for vec_perm and all dependent functions (vec_mergeh, vec_mergel, vec_pack, vec_sld, vec_splat) with bool/pixel arguments and return values
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111509 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-19 03:00:09 +00:00
Anton Yartsev 05e3555b21 support for vec_add, vec_adds, vec_and, vec_andc with bool arguments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111141 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-16 16:22:12 +00:00
Anton Yartsev a816ec8338 first test commit
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110941 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-12 18:51:55 +00:00
Bruno Cardoso Lopes 70141c2d11 Fix define inserting a comma :)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110839 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 18:45:43 +00:00
Bruno Cardoso Lopes 7fc3702694 Remove 256-bit cast built-ins and make the AVX intrinsic call llvm __builtin_shufflevector with the appropriate arguments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110771 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 02:14:38 +00:00
Bruno Cardoso Lopes f0e96c9258 Remove 256-bit unpack built-ins and make the AVX intrinsic call llvm __builtin_shufflevector with the appropriate arguments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110768 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 01:43:24 +00:00
Bruno Cardoso Lopes b33aa0f7df Remove 256-bit shuffle built-ins and make the AVX intrinsic call llvm __builtin_shufflevector with the appropriate arguments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110766 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-11 01:17:34 +00:00
Bruno Cardoso Lopes 4a5496bdd5 Make replicate intrinsics use shufflevector instead of dup builtins, also remove the dup builtins
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110646 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-10 02:23:54 +00:00
Chandler Carruth 6b6fe28b3c Fix a few more typos. Amusingly, GCC made the same mistake around version 3.2.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110546 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-08 08:44:32 +00:00
Chandler Carruth d74e3988fb Fix some typos I made when adding alternate intrinsic names.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110545 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-08 08:30:05 +00:00
Bruno Cardoso Lopes da6adc4354 Fix AVX 256-bit intrinsics headers by using the right cast type while dealing with logical ops
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110389 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-05 23:04:58 +00:00
Bruno Cardoso Lopes b8727e5143 Logical AVX instrinsics can be matched directly, no need to use builtins here.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110271 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 22:56:42 +00:00
Bruno Cardoso Lopes 55db5b8744 Add AVX intrinsics header
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110253 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-04 22:03:36 +00:00
Chris Lattner 863e7189dc add a hack for visual studio, fixing PR7796
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110161 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-03 22:13:56 +00:00
Chandler Carruth fa38c81b67 Add alternate names for x86 SIMD intrinsics. These aren't as common, but show
up enough to be worth supporting properly. Fixes PR7674.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109086 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-22 06:47:28 +00:00
Daniel Dunbar af1879141c build: Make sure arm_neon.h gets installed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109073 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-22 01:19:36 +00:00
Eli Friedman b085f79e4f PR7588: Fix the _mm_shufflehi_epi16 macro. (The issue was an oversight
involving operator precedence.)



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107902 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-08 20:09:45 +00:00
Daniel Dunbar 96d38c100d Headers: Change [u]intmax_t to be defined in terms of __[U]INTMAX_TYPE__, instead of intN_t.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107254 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-30 06:30:50 +00:00