summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Don't define llvm::X86Disassembler::InstructionSpecifier in different ways inRichard Smith2014-04-203-23/+20
| | | | | | different source files. llvm-svn: 206719
* Maybe if I touch this file the buildbots will actually rerun configure like ↵Richard Smith2014-04-201-1/+1
| | | | | | they need to... llvm-svn: 206718
* What year is it! This file has no reason to be written in C, and has doubly noRichard Smith2014-04-205-109/+103
| | | | | | | | | | reason to expose a global symbol 'decodeInstruction' nor to pollute the global scope with a bunch of external linkage entities (some of which conflict with others elsewhere in LLVM). This is just the initial transition to C++; more cleanups to follow. llvm-svn: 206717
* [Mips] Add more special values for the st_other field in the symbolSimon Atanasyan2014-04-201-1/+5
| | | | | | table entry for MIPS. llvm-svn: 206716
* [C++11] Range-based loop simplification.Simon Atanasyan2014-04-201-16/+13
| | | | llvm-svn: 206715
* Fix redefinition of default argument, found by modules build. It's notRichard Smith2014-04-201-5/+4
| | | | | | | | | entirely clear whether this should be valid with modules enabled, but the fixed code is cleaner regardless. Also fix a TU-local type that accidentally had external linkage. llvm-svn: 206714
* Switch NULL to C++11 nullptr in source/Symbol and source/UtilityEd Maste2014-04-2026-339/+339
| | | | | | Patch by Robert Matusewicz llvm-svn: 206713
* cindex.py: Avoid deprecated functionAlp Toker2014-04-201-4/+4
| | | | | | | | | Implement Diagnostic::category_name() using clang_getDiagnosticCategoryText() instead of the deprected clang_getDiagnosticCategoryName(). Preserves existing behaviour and API covered by existing tests. llvm-svn: 206712
* Switch NULL to C++11 nullptr in source/InterpreterEd Maste2014-04-2033-399/+399
| | | | | | Patch by Robert Matusewicz llvm-svn: 206711
* Remove some empty statementsAlp Toker2014-04-196-6/+6
| | | | | | Cleanup only. llvm-svn: 206710
* Remove some empty statementsAlp Toker2014-04-192-2/+2
| | | | | | Cleanup only. llvm-svn: 206709
* ProfileData: Remove an extra semicolonJustin Bogner2014-04-191-1/+1
| | | | | | Spotted by Nick Lewycky in review, thanks! llvm-svn: 206708
* Revert "blockfreq: Rewrite BlockFrequencyInfoImpl"Duncan P. N. Exon Smith2014-04-1912-2930/+316
| | | | | | This reverts commit r206704, as expected. llvm-svn: 206707
* Revert "blockfreq: Temporarily turn on -debug-only=block-freq"Duncan P. N. Exon Smith2014-04-192-5/+3
| | | | | | This reverts commit r206705, as planned. llvm-svn: 206706
* blockfreq: Temporarily turn on -debug-only=block-freqDuncan P. N. Exon Smith2014-04-192-3/+5
| | | | | | | | | | | These tests fail after my BlockFrequencyInfo rewrite on two buildbots [1][2]. I can't reproduce it locally, so I'm temporarily turning on -debug-only=block-freq so I can find the problem. [1]: http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/1860 [2]: http://llvm-amd64.freebsd.your.org/b/builders/clang-i386-freebsd/builds/18477 llvm-svn: 206705
* Reapply "blockfreq: Rewrite BlockFrequencyInfoImpl"Duncan P. N. Exon Smith2014-04-1912-316/+2930
| | | | | | | | | | | | | | | | | | | | | This reverts commit r206677, reapplying my BlockFrequencyInfo rewrite. I've done a careful audit, added some asserts, and fixed a couple of bugs (unfortunately, they were in unlikely code paths). There's a small chance that this will appease the failing bots [1][2]. (If so, great!) If not, I have a follow-up commit ready that will temporarily add -debug-only=block-freq to the two failing tests, allowing me to compare the code path between what the failing bots and what my machines (and the rest of the bots) are doing. Once I've triggered those builds, I'll revert both commits so the bots go green again. [1]: http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/1816 [2]: http://llvm-amd64.freebsd.your.org/b/builders/clang-i386-freebsd/builds/18445 <rdar://problem/14292693> llvm-svn: 206704
* Fix and restore the macro-multiline.c testAlp Toker2014-04-192-8/+7
| | | | | | | | | | | | | This test didn't work as intended and was ultimately disabled some years ago in r169458. Indeed it's not clear if the '\n' was ever passed through to the driver correctly given that lit would insert '&& {' at the newline. Test rewritten to use printf/xargs to insert '\n' in a more reliable manner and to use FileCheck for verification. llvm-svn: 206703
* Utility: fix compilation on LinuxSaleem Abdulrasool2014-04-193-0/+6
| | | | | | | | When compiling on Linux with GCC 4.8, compilation would fail due to the use of the offsetof macro. This is a standard macro, defined in stddef.h. Include this header to ensure that offsetof is declared. llvm-svn: 206702
* Disallow driver use in more Sema testsAlp Toker2014-04-193-0/+12
| | | | | | | There are now only a handful of Sema tests remaining that use %clang in SemaCXX, SemaObjC and SemaTemplate. llvm-svn: 206688
* Move ObjC Cocoa.h header test to HeadersAlp Toker2014-04-191-1/+1
| | | | | | | This tests for broad compatibility with platform SDK headers using the clang driver and so belongs alongside the other header ingtegration tests. llvm-svn: 206687
* Re-enable the C++11 modules integration test on OS XAlp Toker2014-04-191-2/+2
| | | | | | | | | | XCode 5.1.1 has shipped with fixed SDK headers. This reverts commit r200256. Fixes PR18322. llvm-svn: 206686
* clang/test/Index/pch-with-errors.c: Remove XFAIL added in r206294. It has ↵NAKAMURA Takumi2014-04-191-3/+0
| | | | | | been fixed since r206644. llvm-svn: 206685
* Patch by Vadim ChugunovYaron Keren2014-04-196-6/+37
| | | | | | | | | | | Win64 stack unwinder gets confused when execution flow "falls through" after a call to 'noreturn' function. This fixes the "missing epilogue" problem by emitting a trap instruction for IR 'unreachable' on x86_x64-pc-windows. A secondary use for it would be for anyone wanting to make double-sure that 'noreturn' functions, indeed, do not return. llvm-svn: 206684
* Patch by Ray Donnelly to print register names instead of numbers.Yaron Keren2014-04-192-8/+15
| | | | | | http://reviews.llvm.org/D3422 llvm-svn: 206683
* Speculative fix for buildbot failure. Apparently Clang 3.1 got move ↵Richard Smith2014-04-191-1/+2
| | | | | | semantics wrong. llvm-svn: 206682
* Thread Safety Analysis: Convert to minimal SSA.DeLesley Hutchins2014-04-194-38/+135
| | | | llvm-svn: 206681
* When a module completes the definition of a class template specialization ↵Richard Smith2014-04-1920-149/+559
| | | | | | imported from another module, emit an update record, rather than using the broken decl rewriting mechanism. If multiple modules do this, merge the definitions together, much as we would if they were separate declarations. llvm-svn: 206680
* Included <inttypes.h> in a few headers that wereSean Callanan2014-04-193-0/+4
| | | | | | | using preprocessor constants for printf() format specifications. llvm-svn: 206679
* Add parens to appease GCC warning.David Blaikie2014-04-191-4/+4
| | | | llvm-svn: 206678
* Revert "blockfreq: Rewrite BlockFrequencyInfoImpl" (#2)Duncan P. N. Exon Smith2014-04-1912-3103/+316
| | | | | | | | | | | This reverts commit r206666, as planned. Still stumped on why the bots are failing. Sanitizer bots haven't turned anything up. If anyone can help me debug either of the failures (referenced in r206666) I'll owe them a beer. (In the meantime, I'll be auditing my patch for undefined behaviour.) llvm-svn: 206677
* Thread Safety Analysis: Update SSA pass to handle loops.DeLesley Hutchins2014-04-195-128/+271
| | | | llvm-svn: 206676
* OnDiskHashTable: Audit types and use offset_type consistentlyJustin Bogner2014-04-193-12/+13
| | | | llvm-svn: 206675
* ProfileData: Avoid UB when readingJustin Bogner2014-04-191-2/+3
| | | | llvm-svn: 206674
* Fix a hole with nested unavailable submodules from r206664Ben Langmuir2014-04-183-4/+6
| | | | | | | | If a module doesn't meet a requirement, neither do its submodules. If we don't propogate that, we might think it's an error to be missing a header in one of those submodules. llvm-svn: 206673
* OnDiskHashTable: Fix a think-o with offset_typeJustin Bogner2014-04-181-2/+2
| | | | llvm-svn: 206672
* Check whether functions have any lines associated before emitting coverage ↵Nick Lewycky2014-04-181-0/+17
| | | | | | info for them. This isn't just a size/time saving, gcov may crash on these. llvm-svn: 206671
* llvm-profdata: Avoid writing to /dev/null in testsJustin Bogner2014-04-181-10/+4
| | | | | | | We fseek on our output file in llvm-profdata, which errors on some systems. Avoid getting into the situation by writing to /dev/null llvm-svn: 206670
* Change the ARM assembler to require a :lower16: or :upper16 on non-constantKevin Enderby2014-04-186-12/+55
| | | | | | | | | | | | | | | | | | | | | | expressions for mov instructions instead of silently truncating by default. For the ARM assembler, we want to avoid misleadingly allowing something like "mov r0, <symbol>" especially when we turn it into a movw and the expression <symbol> does not have a :lower16: or :upper16" as part of the expression. We don't want the behavior of silently truncating, which can be unexpected and lead to bugs that are difficult to find since this is an easy mistake to make. This does change the previous behavior of llvm but actually matches an older gnu assembler that would not allow this but print less useful errors of like “invalid constant (0x927c0) after fixup” and “unsupported relocation on symbol foo”. The error for llvm is "immediate expression for mov requires :lower16: or :upper16" with correct location information on the operand as shown in the added test cases. rdar://12342160 llvm-svn: 206669
* test: Add extra run lines to investigate an error on the botsJustin Bogner2014-04-181-0/+6
| | | | llvm-svn: 206668
* CodeGen: Remove an unused includeJustin Bogner2014-04-181-1/+0
| | | | llvm-svn: 206667
* Reapply "blockfreq: Rewrite BlockFrequencyInfoImpl" (#2)Duncan P. N. Exon Smith2014-04-1812-316/+3103
| | | | | | | | | | | | | | | | | | | This reverts commit r206628, reapplying r206622 (and r206626). Two tests are failing only on buildbots [1][2]: i.e., I can't reproduce on Darwin, and Chandler can't reproduce on Linux. Asan and valgrind don't tell us anything, but we're hoping the msan bot will catch it. So, I'm applying this again to get more feedback from the bots. I'll leave it in long enough to trigger builds in at least the sanitizer buildbots (it was failing for reasons unrelated to my commit last time it was in), and hopefully a few others.... and then I expect to revert a third time. [1]: http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/1816 [2]: http://llvm-amd64.freebsd.your.org/b/builders/clang-i386-freebsd/builds/18445 llvm-svn: 206666
* [llvm-symbolizer] Print file/line for a PC even if there is no DIE ↵Alexey Samsonov2014-04-184-9/+42
| | | | | | | | | | | describing it. This is important for symbolizing executables with debug info in unavailable .dwo files. Even if all DIE entries are missing, we can still symbolize an address: function name can be fetched from symbol table, and file/line info can be fetched from line table. llvm-svn: 206665
* Don't build modules with (submodules with) missing headersBen Langmuir2014-04-187-10/+48
| | | | | | | | Unless they are in submodules that aren't available anyway, due to requirements not being met. Also, mark children as unavailable when the parent is. llvm-svn: 206664
* ProfileData: Don't forward declare ComputeHash and make it static inlineJustin Bogner2014-04-183-5/+7
| | | | llvm-svn: 206663
* Add support for building Sphinx documentation when being built inside LLVM ↵Reid Kleckner2014-04-182-0/+10
| | | | | | | | source tree and using CMake. Patch by Dan Liew <daniel.liew@imperial.ac.uk>! llvm-svn: 206662
* Fix sphinx-build warnings in clang docs.Reid Kleckner2014-04-182-3/+3
| | | | llvm-svn: 206661
* Add support for building Sphinx documentation when being inside LLVM source ↵Reid Kleckner2014-04-181-0/+9
| | | | | | | | tree and using CMake Patch by Daniel Liew <daniel.liew@imperial.ac.uk>! llvm-svn: 206660
* Compress debug sections only when beneficial.David Blaikie2014-04-182-16/+37
| | | | | | | | | Both ZLIB and the debug info compressed section header ("ZLIB" + the size of the uncompressed data) take some constant overhead so in some cases the compressed data is actually larger than the uncompressed data. In these cases, just don't compress or rename the section at all. llvm-svn: 206659
* CodeGen: Use LLVM's InstrProfReader in -fprofile-instr-use=Justin Bogner2014-04-187-178/+33
| | | | | | | | | Update clang to use the InstrProfReader from LLVM to read instrumentation based profile data. This also switches us from the naive text format to the binary format, since that's what's implemented in the reader. llvm-svn: 206658
* [Cleanup] Remove a trailing whitespaceJustin Bogner2014-04-181-1/+1
| | | | llvm-svn: 206657
OpenPOWER on IntegriCloud