aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-11-27clang/test/lit.cfg: Disable dev-fd-fs on cygwin for now.NAKAMURA Takumi
open("/dev/fd/1-foobar") fails with EEXIST on cygwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168676 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Test for r168674.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168675 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Fix the definition of the vfork() builtin on Haiku. PR14378.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168674 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27This patch addresses an incompatibility relative to the 64-bit PowerPCBill Schmidt
ELF ABI. Complex values are to be passed in registers as though the real and imaginary parts were passed as separate parameters. Prior to this patch, complex values were passed as byval aggregates. It turns out that specifying getDirect() for all complex types when classifying the argument type results in the desired behavior. The new Clang test case verifies that the correct LLVM IR is generated for caller and callee for each of the underlying types for _Complex. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168673 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27scan-build: Respect TMPDIR on all platforms, not just Darwin (PR14438).Jordan Rose
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168672 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27[analyzer] Fix test to work on non-LP64 systems.Jordan Rose
Thanks for the original catch in r168303, Takumi. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168671 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Add a testcase that r168411 would break.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168669 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Revert r168411 for now.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168667 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Duplicate some common owners between Clang and LLVM.Richard Smith
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168650 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Move Clang code owners list from llvm/ to cfe/.Richard Smith
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168639 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Frontend: Create a virtual file for named pipe inputs.Daniel Dunbar
- This ensures we see the right buffer size for the file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168636 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26Improve diagnostic on C++11 attribute specifiers that appear at wrong ↵Michael Han
syntactic locations around class specifiers. This change list implemented logic that explicitly detects several combinations of locations where C++11 attribute specifiers might be incorrectly placed within a class specifier. Previously we emit generic diagnostics like "expected identifier" for such cases; now we emit specific diagnostic against the misplaced attributes, this also fixed a bug in old code where attributes appear at legitimate locations were incorrectly rejected. Thanks to Richard Smith for reviewing! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168626 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26Add missing "break". Thanks to Craig for spotting it.Eli Friedman
I'm looking at ways to fix the relevant test so it can catch this sort of mistake. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168618 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26check that always_inline attribute works with -fno-inlineSebastian Pop
Clean up the existing test to use FileCheck. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168607 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26[analyzer] SATestBuild.py: allow make builds to disable parallelizationJordan Rose
Before, SATestBuild unilaterally added '-j<n>' to every project built with 'make'. Now, we check and see if there's a -j option already specified, which allows a project to explicitly be marked '-j1'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168603 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26[analyzer] Fix a crash reported in PR 14400.Anna Zaks
The AllocaRegion did not have the superRegion (based on LocationContext) as part of it's hash. As a consequence, the AllocaRegions from different frames were uniqued to be the same region. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168599 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26MSPGCC renamed ISR vectors from vector_<address> to __isr_<number>. This ↵Anton Korobeynikov
patch makes Clang reflect this scheme. Patch by Job Noorman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168598 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26Fix PR14413 - incorrect mangling of anonymous namespaces with -cxx-abi microsoftTimur Iskhodzhanov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168583 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-26PR14428: When instantiating a 'new' expression, if we had a non-dependentRichard Smith
initialization, don't rebuild it. Remove a couple of hacks which were trying to work around this. Fix the special case for one-argument CXXConstructExprs to not apply if the one argument is a default argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168582 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-25Add r168519 back, but with a fix to also merge the used flag in variables.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168564 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-25Add a basic testcase for the "variable is not needed" warning and one thatRafael Espindola
regressed in r168519. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168563 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-25Fix test case for linking with sanitizer opts added in r168428.Alexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168562 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-24Revert r168519, "Merge used flags so that we don't have to iterate on ↵NAKAMURA Takumi
isUsed. With this change" It brought bunch of (possibly false) warnings. llvm/unittests/VMCore/PassManagerTest.cpp:60:22: warning: variable 'ID' is not needed and will not be emitted [-Wunneeded-internal-declaration] char ModuleNDNM::ID=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:86:22: warning: variable 'ID' is not needed and will not be emitted [-Wunneeded-internal-declaration] char ModuleNDM2::ID=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:106:21: warning: variable 'ID' is not needed and will not be emitted [-Wunneeded-internal-declaration] char ModuleDNM::ID=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:217:16: warning: variable 'initcount' is not needed and will not be emitted [-Wunneeded-internal-declaration] int LPass::initcount=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:218:16: warning: variable 'fincount' is not needed and will not be emitted [-Wunneeded-internal-declaration] int LPass::fincount=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:259:16: warning: variable 'inited' is not needed and will not be emitted [-Wunneeded-internal-declaration] int BPass::inited=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:260:16: warning: variable 'fin' is not needed and will not be emitted [-Wunneeded-internal-declaration] int BPass::fin=0; ^ llvm/unittests/VMCore/PassManagerTest.cpp:283:24: warning: variable 'ID' is not needed and will not be emitted [-Wunneeded-internal-declaration] char OnTheFlyTest::ID=0; ^ 8 warnings generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168549 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-24Make err_module_expected_semi consistent with all the other expected_semi diags.Nico Weber
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168535 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23Sema: Provide a valid source location when instantiating templates based on ↵Benjamin Kramer
a CXXDefaultArgExpr. Fixes PR13758. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168521 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23Merge used flags so that we don't have to iterate on isUsed. With this changeRafael Espindola
"clang -cc1 -fsyntax-only" on the preprocessed output of #define M extern int a; #define M2 M M #define M4 M2 M2 #define M8 M4 M4 #define M16 M8 M8 #define M32 M16 M16 #define M64 M32 M32 #define M128 M64 M64 #define M256 M128 M128 #define M512 M256 M256 #define M1024 M512 M512 #define M2048 M1024 M1024 #define M4096 M2048 M2048 #define M8192 M4096 M4096 #define M16384 M8192 M8192 M16384 goes from 2.994s to 1.416s. GCC is at 0.022s, so we still have a long way to go. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168519 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23Remove redundant check.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168515 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23Check that we don't warn on this testcase. This is basically a test thatRafael Espindola
Decl::isUsed checks the attribute. If the function had a body just the check is DeclMustBeEmitted would be sufficient. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168514 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23PR14306: Move -fbounds-checking to -fsanitize=bounds.Joey Gouly
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168510 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23Reapply a subset of r167567 to clean up Darwin-specific code for invoking gcc.Bob Wilson
Unlike my previous attempt at this, this patch leaves intact the check for whether clang can handle the input file type, and for non-Darwin toolchains it will invoke gcc for things it cannot handle. For Darwin toolchains, the behavior reported in pr14338 still occurs with this patch, but that is a definite improvement from what happens currently, where it just crashes with an assertion failure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168505 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-22Make helpers static/anonymous.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168500 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-22Fix regression in r168477. Use canonical decl when looking for base classRichard Smith
specified as a qualified name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168479 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-22Fix CXXRecordDecl::forallBases to not look through bases which are dependentRichard Smith
and defined within the current instantiation, but which are not part of the current instantiation. Previously, it would look at bases which could be specialized separately from the current template. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168477 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-22Test that we correctly deal with multiple copy constructors when detectingRichard Smith
non-trivial special members for varargs calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168476 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21Fix the '-fuse-init-array' option to actually be an option.Chandler Carruth
Previously, this flag to CC1 was never exposed at the clang driver layer, and if you happened to enable it (by being on Android or GCC 4.7 platform), you couldn't *disable* it, because there was no 'no' variant. The whole thing was confusingly implemented. Now, the target-specific flag processing gets the driver arg list, and we use standard hasFlag with a default based on the GCC version and/or Android platform. The user can still pass the 'no-' variant to forcibly disable the flag, or pass the positive variant to clang itself to enable the flag. The test has also been substantially cleaned up and extended to cover these use cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168473 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21SemaCXX: an enumeral type can be of character or boolean type in a C++11 ↵Benjamin Kramer
enum class. Make sure we create a literal of the right type. Fixes PR14386. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168441 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21Test commit: Remove blank line.Joey Gouly
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168436 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21Try to fix test from r168428 on mingw botAlexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168431 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21clang/test/Driver/x86_64-nacl-defines.cpp: Specify filename generated.NAKAMURA Takumi
FIXME: It could be /dev/null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168429 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21[Sanitizer] force linking with static sanitizer runtimes on Darwin even if ↵Alexey Samsonov
they are not found in resource directory. Add test checking sanitizer linker flags on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168428 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21Use color for -ast-dump-filter only when it is supportedDmitri Gribenko
Patch by Philip Craig. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168420 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21Remove redundant code.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168411 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-21Remove redundant code.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168410 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-20Don't walk a linked list twice in the same function. On my machine this takesRafael Espindola
"clang -cc1" on a file with 10k repetitions of extern int no_such_variable; from 1.434s to 1.133s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168394 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-20Update method calls to the new interface re r168354.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168355 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-19Fix some trailing whitespace (on a blank line) to cycle/test bots.David Blaikie
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168340 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-19PR14381: Never skip constexpr function bodies when code-completing. We may needRichard Smith
them in order to parse the rest of the file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168327 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-19When adding a NamedDecl to a correction, add the underlying Decl (viaKaelyn Uhrain
getUnderlyingDecl()) so that derivatives of CorrectionCandidateCallback::ValidateCandidate(...) don't have to worry about being thrown by UsingDecls and such. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168317 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-19Add -ldl for non-static libgcc in Android.Logan Chien
According to Android ABI, we have to link with libdl.so, if we are linking with non-static libgcc. Besides, this also fixes MIPS link error of undefined references to `_Unwind_Find_FDE' and `dl_iterate_phdr'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168310 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-19Enable -fuse-init-array for Android X86/MIPS.Logan Chien
The dynamic linker of Android does not support .ctors/.dtors. We should emit .init_array and .fini_array regardless the gcc version. NOTE: This patch does not affect the ARM backend, because it is required to generate .init_array and .fini_array for program targeting ARM AAPCS and AEABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168309 91177308-0d34-0410-b5e6-96231b3b80d8