summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Re-enable 32-bit SEH after the alignment fixReid Kleckner2015-07-105-10/+9
| | | | llvm-svn: 241878
* [Static Analyzer] Basic per checker command line option validation.Gabor Horvath2015-07-094-0/+45
| | | | | | Differential Revision: http://reviews.llvm.org/D8077 llvm-svn: 241863
* CFI: Emit correct bit set information if RTTI is disabled under MS ABI.Peter Collingbourne2015-07-095-15/+42
| | | | | | | | | | | | | | We were previously creating bit set entries at virtual table offset sizeof(void*) unconditionally under the Microsoft C++ ABI. This is incorrect if RTTI data is disabled; in that case the "address point" is at offset 0. This change modifies bit set emission to take into account whether RTTI data is being emitted. Also make a start on a blacklisting scheme for records. Differential Revision: http://reviews.llvm.org/D11048 llvm-svn: 241845
* Rename ModuleContainerGenerator to PCHContainergenerator for consistencyAdrian Prantl2015-07-091-28/+29
| | | | | | and re-clang-format (NFC). llvm-svn: 241841
* Add GCC-compatible flags -fprofile-generate and -fprofile-use.Diego Novillo2015-07-098-26/+180
| | | | | | | | | | | | | | | | | | This patch adds support for specifying where the profile is emitted in a way similar to GCC. These flags are used to specify directories instead of filenames. When -fprofile-generate=DIR is used, the compiler will generate code to write to <DIR>/default.profraw. The patch also adds a couple of extensions: LLVM_PROFILE_FILE can still be used to override the directory and file name to use and -fprofile-use accepts both directories and filenames. To simplify the set of flags used in the backend, all the flags get canonicalized to -fprofile-instr-{generate,use} when passed to the backend. The decision to use a default name for the profile is done in the driver. llvm-svn: 241825
* [Driver] semi-annual ubuntu version bump.Benjamin Kramer2015-07-091-1/+3
| | | | llvm-svn: 241812
* [CodeCompletion] Don't crash on member inits of templated constructors.Benjamin Kramer2015-07-092-3/+23
| | | | | | | Also fixes a crash (on invalid) member functions with a colon initializer. PR23948. llvm-svn: 241811
* Add clang_free to libclang to free memory allocated in libclang.Yaron Keren2015-07-094-4/+17
| | | | | | | | | | | | | | One of the problems libclang tests has running under Windows is memory allocated in libclang.dll but being freed in the test executable, possibly by a different memory manager. This patch exposes a new export function, clang_free(), used to free any allocated memory with the same libclang.dll memory manager that allocated the memory. http://reviews.llvm.org/D10949 Reviewed by Reid Kleckner, Douglas Gregor. llvm-svn: 241789
* Driver: Include the driver arguments in crash reportsJustin Bogner2015-07-095-8/+32
| | | | | | | Similarly to r231989, the driver arguments can be quite helpful in diagnosing a crash. llvm-svn: 241786
* Revert r241770 and add Basic to the dependencies of clang-check instead.Adrian Prantl2015-07-093-3/+4
| | | | | | PR24067. llvm-svn: 241782
* Move the definition of ~PCHContainerOperations from Basic into Frontend.Adrian Prantl2015-07-092-3/+3
| | | | | | Fixes PR24067. llvm-svn: 241770
* Disable 32-bit SEH, againReid Kleckner2015-07-085-9/+10
| | | | | | | | Move the diagnostic back to codegen so that we can compile ATL on the self-host bot. We don't actually end up emitting code for the __try, so the diagnostic won't be hit. llvm-svn: 241761
* DeclObjC: Move computing the type of self into a separate function (NFC).Adrian Prantl2015-07-082-5/+18
| | | | | | This function will be used for emitting debug info. llvm-svn: 241748
* [modules] Fix merging support for forward-declared enums with fixed ↵Richard Smith2015-07-084-8/+24
| | | | | | underlying types. A visible declaration is enough to make the type complete, but not enough to make the definition visible. llvm-svn: 241743
* Cleanup the doxygen comments in CGDebugInfo.cpp according to the codingAdrian Prantl2015-07-082-102/+55
| | | | | | | standards. Remove several hilariously out-of-date and redundant comments and move the non-redundant ones into the header file. llvm-svn: 241733
* [modules] Fix crash when writing an update record for a redeclaration of an ↵Richard Smith2015-07-084-4/+12
| | | | | | empty namespace. llvm-svn: 241732
* CodeGen: Fix off-by-one error in CFI class identification function for MS ABI.Peter Collingbourne2015-07-082-2/+25
| | | | | | We were previously ignoring classes laid out at offset zero. llvm-svn: 241729
* Driver: enable support for -fsanitize=cfi on Windows.Peter Collingbourne2015-07-083-5/+10
| | | | | | | | | There are known issues, but the current implementation is good enough for the check-cfi test suite. Differential Revision: http://reviews.llvm.org/D11030 llvm-svn: 241728
* Cleanup the doxygen comments in CGDebugInfo.h according to the codingAdrian Prantl2015-07-081-126/+122
| | | | | | standards and clang-format the file. llvm-svn: 241723
* Fix the spelling of Objective-C.Adrian Prantl2015-07-081-2/+1
| | | | llvm-svn: 241722
* Remove unused diagnostics. NFC.Benjamin Kramer2015-07-082-5/+0
| | | | llvm-svn: 241711
* [Driver] print-multi-os-directory is unsupported. Davide Italiano2015-07-082-9/+2
| | | | | | | | | Until somebody writes the code for it, be loud about the fact that it's not implemented yet. Differential Revision: http://reviews.llvm.org/D11020 llvm-svn: 241708
* [Static Analyzer] Make the paths relative from the project root when ↵Gabor Horvath2015-07-082-4/+17
| | | | | | generating reference results in the test suite. llvm-svn: 241706
* AST: Avoid reading an unitialized valueJustin Bogner2015-07-081-2/+2
| | | | | | | | | | Desugar doesn't necessarily initialize ShouldAKA, but as of r241542 it may read it. Fix the misuse of the API and initialize this before passing it in. Found by ubsan. llvm-svn: 241705
* [SEH] Re-enable SEH on x86 Windows after r241699Reid Kleckner2015-07-083-6/+5
| | | | llvm-svn: 241704
* Update PCHInternals.rst to document PCH wrapped in object file containers.Adrian Prantl2015-07-081-8/+18
| | | | llvm-svn: 241690
* Revert "Fix a linker issue with clang-check on Linux."Adrian Prantl2015-07-081-2/+0
| | | | | | This reverts commit r241636 as it turned out to be unnecessary. llvm-svn: 241684
* [CMake] clang-check: Prune redundant libdeps introduced in r241653.NAKAMURA Takumi2015-07-081-14/+0
| | | | llvm-svn: 241680
* [MIPS] Add support for direct-to-nacl in ClangPetar Jovanovic2015-07-086-2/+84
| | | | | | | | | | | For Mips direct-to-nacl, the goal is to be close to le32 front-end and use Mips32EL backend. This patch defines new NaClMips32ELTargetInfo and modifies it slightly to be close to le32. It also adds necessary parts, inline with ARM and X86. Differential Revision: http://reviews.llvm.org/D10739 llvm-svn: 241678
* [EH] Fix for clang bug 24005 - no cleanup for array of memcpy-able objects ↵Alexey Bataev2015-07-082-0/+42
| | | | | | | | | in struct (patch by Denis Zobnin) The fix is to emit cleanup for arrays of memcpy-able objects in struct if an exception is thrown later during copy-construction. Differential Revision: http://reviews.llvm.org/D10989 llvm-svn: 241670
* Revert "parser: wordsmith diagnostic message" and "parser: diagnose empty ↵David Majnemer2015-07-084-9/+8
| | | | | | | | | | | | attribute blocks" This reverts commit r239846 and r239879. They caused clang's -fms-extensions behavior to incorrectly parse lambdas and includes a testcase to ensure we don't regress again. This issue was found in PR24027. llvm-svn: 241668
* [CodeGen] Correctly handle base classes which are passed in memoryDavid Majnemer2015-07-082-2/+20
| | | | | | | | | | | We didn't correctly process the case where a base class is classified as MEMORY. This would cause us to trip over an assertion. This fixes PR24020. Differential Revision: http://reviews.llvm.org/D10907 llvm-svn: 241667
* [CodeGen] Don't crash classifying a union of an AVX vector and an intDavid Majnemer2015-07-082-0/+11
| | | | | | | | | | | | We forgot to run postMerge after decided that the union had to be classified as MEMORY. This left us with Lo == MEMORY and Hi == SSEUp which is an invalid combination. This fixes PR24021. Differential Revision: http://reviews.llvm.org/D10908 llvm-svn: 241666
* SemaDeclObjC.cpp: Escape \@ in comment lines. [-Wdocumentation]NAKAMURA Takumi2015-07-081-2/+2
| | | | llvm-svn: 241664
* [modules] When determining the visible module set during templateRichard Smith2015-07-085-3/+25
| | | | | | | instantiation, use the set of modules visible from the template definition, not from whichever declaration the specialization was instantiated from. llvm-svn: 241662
* [CMake] Reorder libdeps. NFC.NAKAMURA Takumi2015-07-082-5/+2
| | | | llvm-svn: 241661
* [CMake] Fill up required libs, corresponding to r241653.NAKAMURA Takumi2015-07-082-0/+2
| | | | llvm-svn: 241660
* Change the expectation for test/Tooling/ms-asm-no-target.cpp sinceAdrian Prantl2015-07-081-6/+6
| | | | | | | clang-check now initializes the available targets to support clang module containers. llvm-svn: 241656
* Revert "Revert r241620 and follow-up commits" and move the initializationAdrian Prantl2015-07-0896-57/+397
| | | | | | of the llvm targets from clang/CodeGen into ClangCheck.cpp and CIndex.cpp. llvm-svn: 241653
* [SEH] Switch from frameaddress(0) to localaddressReid Kleckner2015-07-075-23/+22
| | | | | | This should do the right thing for stack realignment prologues. llvm-svn: 241644
* Revert r241620 and follow-up commits while investigating linux buildbot ↵Adrian Prantl2015-07-0796-389/+57
| | | | | | failures. llvm-svn: 241642
* Fix a linker issue with clang-check on Linux.Adrian Prantl2015-07-071-0/+2
| | | | | | There must be a better way to fix this — I'll keep investigating. llvm-svn: 241636
* Cleanup: Use the C++ API to initialize the backend.Adrian Prantl2015-07-071-4/+5
| | | | llvm-svn: 241635
* Update clang for intrinsic rename of framerecover to localrecoverReid Kleckner2015-07-075-26/+26
| | | | llvm-svn: 241634
* Add target requirements to testcases that emit PCH.Adrian Prantl2015-07-0711-6/+11
| | | | llvm-svn: 241630
* Add LLVM backend dependencies to clang-check also in cmake.Adrian Prantl2015-07-071-1/+14
| | | | llvm-svn: 241627
* Underscores in constructor arguments are so passe.Eric Christopher2015-07-071-10/+10
| | | | llvm-svn: 241626
* Update testcases that use precompiled headers to require a target afterAdrian Prantl2015-07-0720-13/+20
| | | | | | r241620. llvm-svn: 241623
* Wrap clang modules and pch files in an object file container.Adrian Prantl2015-07-0765-37/+341
| | | | | | | | | | | | | This patch adds ObjectFilePCHContainerOperations uses the LLVM backend to put the contents of a PCH into a __clangast section inside a COFF, ELF, or Mach-O object file container. This is done to facilitate module debugging by makeing it possible to store the debug info for the types defined by a module alongside the AST. rdar://problem/20091852 llvm-svn: 241620
* Use AlignOf instead of alignOf so that this can go back to being a ↵Aaron Ballman2015-07-071-3/+3
| | | | | | static_assert. Amends r241577. llvm-svn: 241604
OpenPOWER on IntegriCloud