summaryrefslogtreecommitdiffstats
path: root/clang/test
Commit message (Collapse)AuthorAgeFilesLines
...
* [CUDA] Allow function overloads in CUDA based on host/device attributes.Artem Belevich2015-09-222-0/+531
| | | | | | | | | | | | | | | | | | | The patch makes it possible to parse CUDA files that contain host/device functions with identical signatures, but different attributes without having to physically split source into host-only and device-only parts. This change is needed in order to parse CUDA header files that have a lot of name clashes with standard include files. Gory details are in design doc here: https://goo.gl/EXnymm Feel free to leave comments there or in this review thread. This feature is controlled with CC1 option -fcuda-target-overloads and is disabled by default. Differential Revision: http://reviews.llvm.org/D12453 llvm-svn: 248295
* [CUDA] Add implicit __attribute__((used)) to all __global__ functions.Artem Belevich2015-09-221-0/+15
| | | | | | | | | | This makes sure that we emit kernels that were instantiated from the host code and which would never be explicitly referenced by anything else on device side. Differential Revision: http://reviews.llvm.org/D11666 llvm-svn: 248293
* [mips] Added support for using the command line options -Wa,-msoft-float and ↵Daniel Sanders2015-09-221-0/+25
| | | | | | | | | | | | | | -Wa,-mhard-float. Patch by Scott Egerton. Reviewers: vkalintiris, dsanders Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D12600 llvm-svn: 248276
* Add bug number to FIXME comment.Nico Weber2015-09-221-1/+1
| | | | llvm-svn: 248235
* ms Intrin.h: Fix __movsw's and __stosw's inline asm.Nico Weber2015-09-221-2/+34
| | | | | | | | | | | Before, clang's internal assembler would reject the inline asm in clang's Intrin.h. To make sure this doesn't happen for other Intrin.h functions using __asm__ blocks, add 32-bit and 64-bit codegen tests for Intrin.h. Sadly, these tests discovered that __readcr3 and __writecr3 have bad implementations in 64-bit builds. This will have to be fixed in a follow-up. llvm-svn: 248234
* Remove attributes minsize and optsize, which conflict with optnone.Akira Hatanaka2015-09-211-0/+18
| | | | | | | | | | | This commit fixes an assert that is triggered when optnone is being added to an IR function that is already marked with minsize and optsize. rdar://problem/22723716 Differential Revision: http://reviews.llvm.org/D13004 llvm-svn: 248191
* Add a belated testcase for the skeleton CU behavior in r248062.Adrian Prantl2015-09-211-2/+20
| | | | llvm-svn: 248185
* Debug Info: When building a module, emit skeleton CUs for imported modules.Adrian Prantl2015-09-211-0/+15
| | | | llvm-svn: 248184
* Revert "[ARM] Handle +t2dsp feature as an ArchExtKind in ARMTargetParser.def"James Molloy2015-09-211-14/+12
| | | | | | | | This was committed without the code review (http://reviews.llvm.org/D12938) being approved. This reverts commit r248154. llvm-svn: 248173
* Fix assertion in inline assembler IR genAlexander Musman2015-09-211-0/+12
| | | | | | | Several inputs may not refer to one output constraint in inline assembler insertions, clang was failing on assertion on such test case. llvm-svn: 248158
* [ARM] Handle +t2dsp feature as an ArchExtKind in ARMTargetParser.defArtyom Skrobov2015-09-211-12/+14
| | | | | | | | | | | | | | | | Currently, the availability of DSP instructions (ACLE 6.4.7) is handled in a hand-rolled tricky condition block in lib/Basic/Targets.cpp, with a FIXME: attached. http://reviews.llvm.org/D12937 moved the handling of +t2dsp over to ARMTargetParser.def in LLVM, to be in line with other architecture extensions. This is the corresponding patch to clang, to clear the FIXME: and update the tests. Differential Revision: http://reviews.llvm.org/D12938 llvm-svn: 248154
* clang/test/Modules/DebugInfoSubmodules.c REQUIRES asserts due to -debug-only.NAKAMURA Takumi2015-09-211-0/+1
| | | | llvm-svn: 248142
* Module debugging: Support submodules in the PCM/PCH debug info.Adrian Prantl2015-09-204-0/+32
| | | | llvm-svn: 248127
* [X86][SSE] Replace 128-bit SSE41 PMOVSX intrinsics with native IRSimon Pilgrim2015-09-192-12/+6
| | | | | | | | | | 128-bit vector integer sign extensions correctly lower to the pmovsx instructions even for debug builds. This patch removes the builtins and reimplements the _mm_cvtepi*_epi* intrinsics __using builtin_shufflevector (to extract the bottom most subvector) and __builtin_convertvector (to actually perform the sign extension). Differential Revision: http://reviews.llvm.org/D12835 llvm-svn: 248092
* [Modules] More descriptive diagnostics for misplaced import directiveSerge Pavlov2015-09-1911-12/+49
| | | | | | | | | | If an import directive was put into wrong context, the error message was obscure, complaining on misbalanced braces. To get more descriptive messages, annotation tokens related to modules are processed where they must not be seen. Differential Revision: http://reviews.llvm.org/D11844 llvm-svn: 248085
* Add test that we correctly allow some non-letter unicode characters inRichard Smith2015-09-191-1/+10
| | | | | | identifiers, and extend existing test to also cover C++. llvm-svn: 248079
* [Static Analyzer] Fixed a false positive case in DynamicTypeChecker when ↵Gabor Horvath2015-09-181-0/+10
| | | | | | dealing with forward declarations. llvm-svn: 248065
* Split off the binary literal warning into a subgroup of C++14 warningsRichard Trieu2015-09-181-0/+5
| | | | | | | | | Binary literals predate C++14, but they are listed as a C++14 extension since this was the first time they were standardized in the language. Move the warning into a subgroup so it can be selectively disabled when checking for other C++14 features. llvm-svn: 248064
* Relax the test to get it passing with windows paths.Rafael Espindola2015-09-181-1/+1
| | | | llvm-svn: 248051
* Analyzer: Fix a crasher in UbigraphVizIsmail Pazarbasi2015-09-181-0/+7
| | | | | | | | | | | | | | | Summary: Name `Out` refers to the parameter. It is moved into the member `Out` in ctor-init. Dereferencing null pointer will crash clang, if user passes '-analyzer-viz-egraph-ubigraph' argument. Reviewers: zaks.anna, krememek Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D12119 llvm-svn: 248050
* [Static Analyzer] General type checker based on dynamic type information.Gabor Horvath2015-09-182-219/+429
| | | | | | Differential Revision: http://reviews.llvm.org/D12973 llvm-svn: 248041
* Handle lld not being found in PATH.Rafael Espindola2015-09-181-1/+1
| | | | llvm-svn: 248035
* clang-cl: Don't warn on /bigobj flagNico Weber2015-09-181-0/+1
| | | | | | | | | | LLVM r217812 made it so that clang-cl implicitly creates bigobj files when needed, independent of this flag. It looks like cl has this flag to produce obj flags compatible with MSVS 2003's linker by default, something we don't care about. Since clang-cl always has /bigobj behavior, don't warn that the flag is unused, just ignore it silently. llvm-svn: 248034
* Yet another try at fixing this at every bot.Rafael Espindola2015-09-181-2/+2
| | | | | | This time handle " and - after clang and lld. llvm-svn: 248033
* Relax this test further to pass in other bots.Rafael Espindola2015-09-181-4/+2
| | | | | | | | | The problem this time was the /clang matching the InstalledDir line. Now we just use regular expressions which are more flexible, if a bit less readable, than CHECK+CHECK-SAME. llvm-svn: 248031
* Fix test to pass when the directory name has lld in it.Rafael Espindola2015-09-181-5/+4
| | | | | | | | | | | | | | | CHECK-LABEL assumes that there is only one occurrence of the match. The output looks like: clang version 3.8.0 (trunk 247999) .... /path/to/build/dir/bin/clang-3.8 .... If the path contains lld, the second CHECK-LABEL matches it and we fail since there is no -cc1as between clang and lld. llvm-svn: 248029
* [analyzer] A fix for substraction of an integer from a pointer.Gabor Horvath2015-09-181-0/+17
| | | | | | | | Patch by Artem Dergachev! Differential Revision: http://reviews.llvm.org/D12725 llvm-svn: 248021
* [Static Analyzer] Use generics related information to infer dynamic types.Gabor Horvath2015-09-181-1/+0
| | | | | | Differential Revision: http://reviews.llvm.org/D12916 llvm-svn: 248002
* Suppress amdgpu-toolchain.c for targeting ps4, for now. Investigating.NAKAMURA Takumi2015-09-181-1/+1
| | | | llvm-svn: 248000
* amdgpu-toolchain.c: Add a probe line temporally. Will revert later.NAKAMURA Takumi2015-09-181-0/+1
| | | | llvm-svn: 247997
* clang/test/lit.cfg: *-ps4 doesn't have appropriate driver yet. Mark it as ↵NAKAMURA Takumi2015-09-181-1/+1
| | | | | | "non-clang-driver". llvm-svn: 247977
* [OPENMP 4.0] Add 'if' clause for 'cancel' directive.Alexey Bataev2015-09-183-6/+86
| | | | | | Add parsing, sema analysis and codegen for 'if' clause in 'cancel' directive. llvm-svn: 247976
* Fix for assertion fail for pragma weak on typedef.Alexander Musman2015-09-181-2/+4
| | | | | | | | | | Example: typedef int __td3; #pragma weak td3 = __td3 Differential Revision: http://reviews.llvm.org/D12904 llvm-svn: 247975
* [Concepts] Moving tests to match the corresponding section of the TSNathan Wilson2015-09-181-0/+0
| | | | llvm-svn: 247966
* clang/test/Driver/myriad-toolchain.c: Tweak for DOSish path.NAKAMURA Takumi2015-09-181-1/+1
| | | | llvm-svn: 247959
* [Myriad]: add "<sysroot>/include" to standard search pathDouglas Katzman2015-09-171-0/+9
| | | | llvm-svn: 247948
* Support __builtin_ms_va_list.Charles Davis2015-09-179-9/+267
| | | | | | | | | | | | | | | | | | Summary: This change adds support for `__builtin_ms_va_list`, a GCC extension for variadic `ms_abi` functions. The existing `__builtin_va_list` support is inadequate for this because `va_list` is defined differently in the Win64 ABI vs. the System V/AMD64 ABI. Depends on D1622. Reviewers: rsmith, rnk, rjmccall CC: cfe-commits Differential Revision: http://reviews.llvm.org/D1623 llvm-svn: 247941
* [Shave]: Rename test file from 'shave-' to 'myriad-'Douglas Katzman2015-09-171-0/+0
| | | | llvm-svn: 247926
* [Shave]: Drive sparc-myriad-elf-ld directly rather than via gcc.Douglas Katzman2015-09-172-5/+18
| | | | | | Differential Revision: http://reviews.llvm.org/D12541 llvm-svn: 247924
* Use the MSVC SEH personalities on MingwReid Kleckner2015-09-171-0/+10
| | | | | | | | Mingw generally wraps an old copy of msvcrt.dll which has these personalities, so things should work out, or so I hear. I haven't tested it. llvm-svn: 247902
* re-apply r.247881Asaf Badouh2015-09-171-0/+576
| | | | | | fixed the tests. llvm-svn: 247892
* revert r.247881 due to tests failuresAsaf Badouh2015-09-171-577/+0
| | | | llvm-svn: 247883
* Appease clang/test/CodeGen/avx512dq-builtins.c for -Asserts, for now.NAKAMURA Takumi2015-09-171-0/+1
| | | | llvm-svn: 247882
* [X86][AVX512DQ] add new intrinsicsAsaf Badouh2015-09-171-0/+577
| | | | | | | | | | | | convert i64 to FP and vice versa reduceps & reducepd rangeps & rangepd all in their 512bit versions Differential Revision: http://reviews.llvm.org/D11716 llvm-svn: 247881
* [Static Analyzer] Generics Checker: When an ObjC method returns a ↵Gabor Horvath2015-09-161-575/+1103
| | | | | | | | specialized object, track it properly. Differential Revision: http://reviews.llvm.org/D12889 llvm-svn: 247861
* [analyzer] Add generateErrorNode() APIs to CheckerContext.Devin Coughlin2015-09-162-1/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The analyzer trims unnecessary nodes from the exploded graph before reporting path diagnostics. However, in some cases it can trim all nodes (including the error node), leading to an assertion failure (see https://llvm.org/bugs/show_bug.cgi?id=24184). This commit addresses the issue by adding two new APIs to CheckerContext to explicitly create error nodes. Unless the client provides a custom tag, these APIs tag the node with the checker's tag -- preventing it from being trimmed. The generateErrorNode() method creates a sink error node, while generateNonFatalErrorNode() creates an error node for a path that should continue being explored. The intent is that one of these two methods should be used whenever a checker creates an error node. This commit updates the checkers to use these APIs. These APIs (unlike addTransition() and generateSink()) do not take an explicit Pred node. This is because there are not any error nodes in the checkers that were created with an explicit different than the default (the CheckerContext's Pred node). It also changes generateSink() to require state and pred nodes (previously these were optional) to reduce confusion. Additionally, there were several cases where checkers did check whether a generated node could be null; we now explicitly check for null in these places. This commit also includes a test case written by Ying Yi as part of http://reviews.llvm.org/D12163 (that patch originally addressed this issue but was reverted because it introduced false positive regressions). Differential Revision: http://reviews.llvm.org/D12780 llvm-svn: 247859
* [WinEH] Pass the catch adjectives to catchpad directlyReid Kleckner2015-09-163-47/+51
| | | | | | | | | This avoids building a fake LLVM IR global variable just to ferry an i32 down into LLVM codegen. It also puts a nail in the coffin of using MS ABI C++ EH with landingpads, since now we'll assert in the lpad code when flags are present. llvm-svn: 247843
* [modules] Fix a corner case in the macro override rules: properly handle ↵Richard Smith2015-09-161-1/+5
| | | | | | overridden leaf module macros. llvm-svn: 247765
* Implementation and testing for poisoning vtableNaomi Musgrave2015-09-162-3/+56
| | | | | | | | | | | | | | | | | | | | | | ptr in dtor. Summary: After destruction, invocation of virtual functions prevented by poisoning vtable pointer. Reviewers: eugenis, kcc Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D12712 Fixed testing callback emission order to account for vptr. Poison vtable in either complete or base dtor, depending on if virtual bases exist. If virtual bases exist, poison in complete dtor. Otherwise, poison in base. Remove commented-out block. llvm-svn: 247762
* clang/test/CodeGenCXX/exceptions-cxx-new.cpp: Don't assume the label "entry:".NAKAMURA Takumi2015-09-161-1/+0
| | | | | | Seems it would be redundant. llvm-svn: 247761
OpenPOWER on IntegriCloud