summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Rename lib/Headers/module.map to module.modulemapBen Langmuir2014-04-174-6/+6
| | | | | | Don't install a file using the legacy spelling. llvm-svn: 206431
* Debug info: When collecting the parameters of C++ partial templateAdrian Prantl2014-04-172-4/+41
| | | | | | | | | | | | specializations collect all arguments and not just the ones from the class template partial specialization from which this class template specialization was instantiated. The debug info does not represent the partial specialization otherwise and so specialized parameters would go missing. rdar://problem/16636569. llvm-svn: 206430
* Attempting to unbreak the MSVC 2012 build a second time.Aaron Ballman2014-04-161-0/+8
| | | | llvm-svn: 206420
* Added dump method for global module index.John Thompson2014-04-162-0/+18
| | | | llvm-svn: 206418
* Handle -m32 for NetBSD/sparc64 correctly. Extend test case to also checkJoerg Sonnenberger2014-04-169-12/+27
| | | | | | ARM, MIPS and i386 ABIs. llvm-svn: 206416
* Revert "Move -fms-extensions predefined macros into InitPreprocessor"Reid Kleckner2014-04-163-18/+15
| | | | | | | | | | This reverts commit r206413. This was proposed before, but it's not clear if this is really a good idea: http://reviews.llvm.org/D3034 llvm-svn: 206415
* Attempting to unbreak the MSVC 2012 build.Aaron Ballman2014-04-161-0/+1
| | | | llvm-svn: 206414
* Move -fms-extensions predefined macros into InitPreprocessorReid Kleckner2014-04-163-15/+18
| | | | | | | If someone on Linux asks for -fms-extensions, there's no reason not to define the feature test macros that MSVC defines. llvm-svn: 206413
* Fix check failure on hexagon targets.Diego Novillo2014-04-161-2/+2
| | | | | | | | | | | This test was failing because there is no assembler for hexagon-elf on this buildbot: http://lab.llvm.org:8011/builders/clang-hexagon-elf/builds/10470 Fixed by adding -S to the driver invocation. llvm-svn: 206412
* Fix indentation, NFC.Argyrios Kyrtzidis2014-04-161-4/+4
| | | | llvm-svn: 206411
* [objc] -[NSObject init] is documented to not do anything, don't warn if ↵Argyrios Kyrtzidis2014-04-162-3/+35
| | | | | | | | subclasses do not call [super init] on their initializers. Part of rdar://16568441 llvm-svn: 206410
* [objc] Consider new initializers inside @implementation when determining if ↵Argyrios Kyrtzidis2014-04-162-7/+90
| | | | | | | | | | the class introduces new initializers. Part of rdar://16568441 llvm-svn: 206409
* More minor refactoring. Updated for const-correctness, moved another deleted ↵Aaron Ballman2014-04-161-15/+15
| | | | | | function to be private, 0 -> nullptr and some style corrections. No functional changes intended. llvm-svn: 206406
* Minor cleanups for deleted functions to ensure they're a bit more robustly ↵Aaron Ballman2014-04-161-3/+3
| | | | | | "deleted". llvm-svn: 206404
* Objective-C rewriter. Use _WIN64 instead of __LLP64__Fariborz Jahanian2014-04-161-1/+1
| | | | | | | to conditinalize on 64bit length in a generated meta-data. // rdar://16489050 llvm-svn: 206402
* Add support for optimization reports.Diego Novillo2014-04-1613-2/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch adds a new flag -Rpass=. The flag indicates the name of the optimization pass that should emit remarks stating when it made a transformation to the code. This implements the design I proposed in: https://docs.google.com/document/d/1FYUatSjZZO-zmFBxjOiuOzAy9mhHA8hqdvklZv68WuQ/edit?usp=sharing Other changes: - Add DiagnosticIDs::isRemark(). Use it in printDiagnosticOptions to print "-R" instead of "-W" in the diagnostic message. - In BackendConsumer::OptimizationRemarkHandler, get a SourceLocation object out of the file name, line and column number. Use that location in the call to Diags.Report(). - When -Rpass is used without debug info a note is emitted alerting the user that they need to use -gline-tables-only -gcolumn-info to get this information. CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D3226 llvm-svn: 206401
* InstrProf: Calculate a better function hashDuncan P. N. Exon Smith2014-04-1615-56/+180
| | | | | | | | | | | | | | | | | | The function hash should change when control flow changes. This patch hashes the type of each AST node that affects counters, rather than just counting how many there are. These types are combined into a small enumerator that currently has 16 values. The new hash algorithm packs the enums for consecutively visited types into a `uint64_t`. In order to save space for new types, the types are assumed to be 6-bit values (instead of 4-bit). In order to minimize overhead for functions with little control flow, the `uint64_t` is used directly as a hash if it never fills up; if it does, it's passed through an MD5 context. <rdar://problem/16435801> llvm-svn: 206397
* [ARM64] Plumb in the -mfpu= flag.James Molloy2014-04-164-1/+15
| | | | llvm-svn: 206395
* [ARM64] Allow the disabling of NEON and crypto instructions. Update tests to ↵James Molloy2014-04-1653-77/+84
| | | | | | pass -target-feature +neon. llvm-svn: 206394
* [ARM64] Fix up predefines, including adding big endian support to Targets.cppJames Molloy2014-04-162-21/+80
| | | | llvm-svn: 206390
* Minor formatting cleanups -- no functional changes intended.Aaron Ballman2014-04-162-22/+18
| | | | llvm-svn: 206386
* clang-format: Add special case to reduce indentaiton in streams.Daniel Jasper2014-04-164-8/+32
| | | | | | | | | | | | | | | | This is similar to how we treat assignments and seems to be generally desirable. Before: llvm::errs() << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaa); After: llvm::errs() << aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaa); llvm-svn: 206384
* Adding a move constructor (due to CopyOnWriteVector requiring move-only ↵Aaron Ballman2014-04-161-0/+6
| | | | | | semantics) to appease MSVC. llvm-svn: 206374
* Hopefully avoid a warning on some GCCs (but not all strangely,Chandler Carruth2014-04-161-2/+4
| | | | | | | | | | preventing me from seeing it initially). GCC doesn't use the unused attribute on members for anything, so while it works to suppress Clang's warning for an unused private member, it adds a GCC warning for the attribute. =/ Silence Clang's warning with a void cast in the constructor instead which doesn't trigger any complaints from GCC. llvm-svn: 206373
* Sema: Factor out argument range checks for builtin functionsRichard Sandiford2014-04-162-111/+21
| | | | | | No behavioural change intended. llvm-svn: 206364
* Re-enable several builtins in non-gnu modes.Evgeniy Stepanov2014-04-163-16/+22
| | | | | | | | | This is a partial revert of 183015. By not recognizing things like _setjmp we lose (returns_twice) attribute on them, which leads to incorrect code generation. Fixes PR16138. llvm-svn: 206362
* -Wunreachable-code: refine recognition of unreachable "sigil" to cope with ↵Ted Kremenek2014-04-164-1/+63
| | | | | | | | implicit casts in C++. Fixes <rdar://problem/16631033>. llvm-svn: 206360
* Lex: Fix __has_feature(cxx_exceptions) for objective C++Justin Bogner2014-04-162-2/+8
| | | | | | | | | | | | | | | At one point, -fexceptions was a synonym for -fcxx-exceptions. While the driver options still enables cxx-exceptions by default, the cc1 flag is purely about exception tables and this doesn't account for objective C exceptions. Because of this, checking for the cxx_exceptions feature in objective C++ often gives the wrong answer. The cxx_exceptions feature should be based on the -fcxx-exceptions cc1 flag, not -fexceptions. Furthermore, at some point the tests were changed to use cc1 even though they were testing the driver behaviour. We're better off testing both the driver and cc1 here. llvm-svn: 206352
* threadSafety::SExprBuilder::BlockInfo: Non-static member initializer is ↵NAKAMURA Takumi2014-04-161-2/+3
| | | | | | unavailable. Use default constructor instead. llvm-svn: 206347
* Reformat.NAKAMURA Takumi2014-04-161-7/+3
| | | | llvm-svn: 206346
* threadSafety::CopyOnWriteVector: Use LLVM_DELETED_FUNCTION here due to ↵NAKAMURA Takumi2014-04-161-2/+2
| | | | | | missing functionality of msc17. llvm-svn: 206345
* Fixed problem with exclude header. The exclude header argument needs to be ↵John Thompson2014-04-162-23/+1
| | | | | | relative to the module.map file. llvm-svn: 206342
* Fix build after r206338Duncan P. N. Exon Smith2014-04-151-1/+1
| | | | llvm-svn: 206341
* Make -Wabsolute-value C++-aware.Richard Trieu2014-04-155-81/+968
| | | | | | | | Warn on std::abs() with unsigned argument. Suggest std::abs as replacement for the C absolute value functions. Suggest C++ headers if the specific std::abs overload is not found. llvm-svn: 206340
* Format.cpp: Don't use initializer list.NAKAMURA Takumi2014-04-151-2/+2
| | | | llvm-svn: 206339
* Thread Safety Analysis: rewrite SSA pass to use the new SExpr and CFGDeLesley Hutchins2014-04-155-173/+659
| | | | | | | traversal system. The new pass is still undergoing testing; no change in functionality. llvm-svn: 206338
* [Allocator] Make the ContentCache object actually carry the 8-byteChandler Carruth2014-04-152-12/+19
| | | | | | | | | alignment constraint rather than using the allocator function's over alignment "feature". This was the only use of the "feature" which I plan to remove next. =] Attaching the alignment to the type seems cleaner and more principled anyways. llvm-svn: 206324
* CodeGen: Emit warnings for out of date profile data during PGOJustin Bogner2014-04-156-7/+43
| | | | | | | | | This adds a warning that triggers when profile data doesn't match for the source that's being compiled with -fprofile-instr-use=. This fires only once per translation unit, as warning on every mismatched function would be quite noisy. llvm-svn: 206322
* CodeGen: Remove a comment that isn't in the right placeJustin Bogner2014-04-151-4/+0
| | | | | | | This comment also appears elsewhere where it actually makes sense, and it's just confusing here. llvm-svn: 206321
* Move comment back to being next to the thing it's describing.Richard Smith2014-04-151-2/+2
| | | | llvm-svn: 206320
* AST: Respect alignment attributes on typedef'd arraysJustin Bogner2014-04-152-1/+14
| | | | | | | | | When instantiating an array that has an alignment attribute on it, we were looking through the array type and only considering the element type for the resulting alignment. We need to make sure we take the array's requirements into account too. llvm-svn: 206317
* [ARM64] Update tests to reflect the change of the default CPU in llvm.Quentin Colombet2014-04-152-2/+2
| | | | llvm-svn: 206314
* Honour -ivfsoverlay in ASTUnit to match clangBen Langmuir2014-04-1512-53/+143
| | | | | | | This allows code indexing, etc. to use the VFS in the same way as the compiler. llvm-svn: 206309
* Replace push_back()s by initializer list for shorter and cleaner code.Eli Bendersky2014-04-151-5/+3
| | | | llvm-svn: 206304
* Add test case for r206302Eli Bendersky2014-04-151-0/+30
| | | | llvm-svn: 206303
* Add support for CUDA __launch_bounds__ attribute to CodeGen.Eli Bendersky2014-04-151-10/+28
| | | | | | | | | | Sema does have a CUDALaunchBoundsAttr, but CodeGen was doing nothing with it. This change translates CUDALaunchBoundsAttr to maxntidx and minctasm metadata, which NVPTX then translates to the correct PTX directives. Patch by Manjunath Kudlur. llvm-svn: 206302
* verify-di: Call debug info verifier from clangDuncan P. N. Exon Smith2014-04-151-0/+2
| | | | | | | | | This is paired with a patch to LLVM that creates a separate pass for verifying debug info. <rdar://problem/15500563> llvm-svn: 206301
* Fix a comment to match the implementationAlp Toker2014-04-151-1/+1
| | | | llvm-svn: 206298
* ARM64: track alignment padding registers on AAPCS targetsTim Northover2014-04-152-1/+23
| | | | | | | | | | This implements clause C.8 of the AAPCS in the front-end, so that Clang accurately knows when the registers run out and it has to insert padding before the stack objects begin. PR19432. llvm-svn: 206296
* Fix assertion when breaking string literals with tab characters.Alexander Kornienko2014-04-152-1/+17
| | | | | | | | | | | | | | Summary: Fixes http://llvm.org/PR19368 Reviewers: djasper, klimek Reviewed By: klimek CC: cfe-commits, klimek Differential Revision: http://reviews.llvm.org/D3379 llvm-svn: 206295
OpenPOWER on IntegriCloud