summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DI: Update testcases for LLVM assembly changeDuncan P. N. Exon Smith2015-07-3120-46/+49
| | | | | | | | | | Update testcases after LLVM change r243774. Most of these had no need to check `tag:` field, but did so as a way of getting to the `name:` field. In a few cases I've converted the `tag:` checks to `arg:` or `CHECK-NOT: arg:`. llvm-svn: 243775
* DI: Remove DW_TAG_arg_variable and DW_TAG_auto_variableDuncan P. N. Exon Smith2015-07-31297-1114/+1103
| | | | | | | | | | | | | | | | | | | | | | | | Remove the fake `DW_TAG_auto_variable` and `DW_TAG_arg_variable` tags, using `DW_TAG_variable` in their place Stop exposing the `tag:` field at all in the assembly format for `DILocalVariable`. Most of the testcase updates were generated by the following sed script: find test/ -name "*.ll" -o -name "*.mir" | xargs grep -l 'DILocalVariable' | xargs sed -i '' \ -e 's/tag: DW_TAG_arg_variable, //' \ -e 's/tag: DW_TAG_auto_variable, //' There were only a handful of tests in `test/Assembly` that I needed to update by hand. (Note: a follow-up could change `DILocalVariable::DILocalVariable()` to set the tag to `DW_TAG_formal_parameter` instead of `DW_TAG_variable` (as appropriate), instead of having that logic magically in the backend in `DbgVariable`. I've added a FIXME to that effect.) llvm-svn: 243774
* Add missing 'override'.Daniel Jasper2015-07-311-1/+1
| | | | llvm-svn: 243773
* x86: check hasOpaqueSPAdjustment in canRealignStackJF Bastien2015-07-311-4/+6
| | | | | | | | | | | | | | | Summary: @rnk pointed out in [1] that x86's canRealignStack logic should match that in CantUseSP from hasBasePointer. [1]: http://reviews.llvm.org/D11160?id=29713#inline-89350 Reviewers: rnk Subscribers: rnk, llvm-commits Differential Revision: http://reviews.llvm.org/D11377 llvm-svn: 243772
* [UBSan] Test: Move coverage-levels.cc out of Linux directoryFilipe Cabecinhas2015-07-311-0/+0
| | | | | | | | | | | | | Summary: This test is working on other platforms. Reviewers: samsonov, emaste Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10415 llvm-svn: 243771
* WebAssembly: handle unused function arguments.JF Bastien2015-07-312-4/+26
| | | | | | | | Subscribers: llvm-commits, sunfish, jfb Differential Revision: http://reviews.llvm.org/D11684 llvm-svn: 243770
* Attempt to appease the MSVC build botsDavid Majnemer2015-07-311-1/+1
| | | | | | | They don't seem to care for initializing an ArrayRef with a std::initializer_list. llvm-svn: 243769
* [libFuzzer] record traces from the switch statements only when told to do soKostya Serebryany2015-07-311-0/+1
| | | | llvm-svn: 243768
* [MS ABI] Hook clang up to the new EH instructionsDavid Majnemer2015-07-3110-44/+242
| | | | | | | | | | The new EH instructions make it possible for LLVM to generate .xdata tables that the MSVC personality routines will be happy about. Because this is experimental, hide it behind a -cc1 flag (-fnew-ms-eh). Differential Revision: http://reviews.llvm.org/D11405 llvm-svn: 243767
* New EH representation for MSVC compatibilityDavid Majnemer2015-07-3139-121/+2313
| | | | | | | | | | This introduces new instructions neccessary to implement MSVC-compatible exception handling support. Most of the middle-end and none of the back-end haven't been audited or updated to take them into account. Differential Revision: http://reviews.llvm.org/D11097 llvm-svn: 243766
* DI: Update for LLVM API change for local variablesDuncan P. N. Exon Smith2015-07-312-22/+26
| | | | | | | | Adjust to LLVM DIBuilder API changes in r243764, using `createAutoVariable()` and `createParameterVariable()` in place of `createLocalVariable()`. No real functionality change here. llvm-svn: 243765
* DI: Rewrite the DIBuilder local variable APIDuncan P. N. Exon Smith2015-07-316-34/+67
| | | | | | | | | | | | Replace the general `createLocalVariable()` with two more specific functions: `createParameterVariable()` and `createAutoVariable()`, and rewrite the documentation. Besides cleaning up the API, this avoids exposing the fake DWARF tags `DW_TAG_arg_variable` and `DW_TAG_auto_variable` to frontends, and is preparation for removing them completely. llvm-svn: 243764
* WebAssembly: print basic integer assembly.JF Bastien2015-07-318-12/+291
| | | | | | | | | | | | | | | | | | | Summary: This prints assembly for int32 integer operations defined in WebAssemblyInstrInteger.td only, with major caveats: - The operation names are currently incorrect. - Other integer and floating-point types will be added later. - The printer isn't factored out to handle recursive AST code yet, since it can't even handle control flow anyways. - The assembly format isn't full s-expressions yet either, this will be added later. - This currently disables PrologEpilogCodeInserter as well as MachineCopyPropagation becasue they don't like virtual registers, which WebAssembly likes quite a bit. This will be fixed by factoring out NVPTX's change (currently a fork of PrologEpilogCodeInserter). Reviewers: sunfish Subscribers: llvm-commits, jfb Differential Revision: http://reviews.llvm.org/D11671 llvm-svn: 243763
* COFF: Reenable the lld test disabled in r243758.David Majnemer2015-07-311-1/+1
| | | | llvm-svn: 243762
* [COFF] Consider the ImageBase when reporting section addressesDavid Majnemer2015-07-311-2/+10
| | | | | | This lets us reenable the lld test disabled in r243758. llvm-svn: 243761
* [libFuzzer] support switch interception in dfsan modeKostya Serebryany2015-07-314-4/+41
| | | | llvm-svn: 243760
* [CodeGenPrepare] Compress a pair. No functional change.Benjamin Kramer2015-07-311-7/+3
| | | | llvm-svn: 243759
* Disable objdump disassembly test after r243755Reid Kleckner2015-07-311-1/+1
| | | | | | | | | Right now PE image section addresses are RVAs and symbol addresses are VAs. We should probably fix this by changing section addresses to match symbol addresses. Fixing this might take a few hours, so temporarily disable the objdump part of this test. llvm-svn: 243758
* Add some help strings for /dll and /debug so they show up in /?Reid Kleckner2015-07-311-2/+2
| | | | llvm-svn: 243757
* [x86] reassociate integer multiplies using machine combiner passSanjay Patel2015-07-312-10/+73
| | | | | | | | | | | | | Add i16, i32, i64 imul machine instructions to the list of reassociation candidates. A new bit of logic is needed to handle integer instructions: they have an implicit EFLAGS operand, so we have to make sure it's dead in order to do any reassociation with integer ops. Differential Revision: http://reviews.llvm.org/D11660 llvm-svn: 243756
* [COFF] Return symbol VAs instead of RVAs for PE filesReid Kleckner2015-07-314-0/+39
| | | | | | | | This makes llvm-nm consistent with binutils nm on executables and DLLs. For a vanilla hello world executable, the address of main should include the default image base of 0x400000. llvm-svn: 243755
* Add misc-unused-alias-decls check that currently finds unused namespaceDaniel Jasper2015-07-315-0/+115
| | | | | | | alias declarations. In the future, we might want to reuse it to also fine unsed using declarations and such. llvm-svn: 243754
* [AArch64] Favor extended reg patterns for subGeoff Berry2015-07-312-0/+148
| | | | | | | | | | | | | | Summary: Favor the extended reg patterns over the shifted reg patterns that match only the operand shift and not the full sign/zero extend and shift. Reviewers: jmolloy, t.p.northover Subscribers: mcrosier, aemerson, llvm-commits, rengolin Differential Revision: http://reviews.llvm.org/D11569 llvm-svn: 243753
* [libc++abi] Allow use just compiled clang++ for testsRenato Golin2015-07-311-0/+5
| | | | | | | | | | | Currently, the tests assume the system compiler is the one we want to test, but if we build libcxxabi together with LLVM+Clang, it'll get the wrong compiler. This patch allows us to test if we have clang++ in our /bin directory, and if so, use it. llvm-svn: 243752
* don't repeat function names in comments; NFCSanjay Patel2015-07-311-34/+20
| | | | llvm-svn: 243751
* [CaptureTracker] Provide an ordered basic block to PointerMayBeCapturedBeforeBruno Cardoso Lopes2015-07-318-81/+205
| | | | | | | | | | | | | | | | | | This patch is a follow up from r240560 and is a step further into mitigating the compile time performance issues in CaptureTracker. By providing the CaptureTracker with a "cached ordered basic block" instead of computing it every time, MemDepAnalysis can use this cache throughout its calls to AA->callCapturesBefore, avoiding to recompute it for every scanned instruction. In the same testcase used in r240560, compile time is reduced from 2min to 30s. This also fixes PR22348. rdar://problem/19230319 Differential Revision: http://reviews.llvm.org/D11364 llvm-svn: 243750
* Improve man page markupEd Maste2015-07-311-18/+43
| | | | | | | | Patch by Baptiste Daroussin Differential Revision: http://reviews.llvm.org/D11561 llvm-svn: 243749
* Report original thread ID for FreeBSD core filesEd Maste2015-07-313-7/+8
| | | | | | | | | | | | | On FreeBSD the tid is (somewhat unintuitively) found in the pr_pid field of the NT_PRSTATUS note. Collect it when parsing the note and store it in the thread data. For Linux I've left the original behaviour of using sequential TIDs (0, 1, 2...) as I don't yet have code to obtain it. Differential Revision: http://reviews.llvm.org/D11652 llvm-svn: 243748
* [clang-tidy] Support replacements in macro arguments in ↵Alexander Kornienko2015-07-312-11/+40
| | | | | | | | | | | | | | | | misc-inefficient-algorithm Summary: Support replacements in macro arguments in the misc-inefficient-algorithm check. Reviewers: klimek Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D11677 llvm-svn: 243747
* Fix __floatsitf() for negative inputSergey Dmitrouk2015-07-312-5/+5
| | | | | | | | | Negative numbers were handled properly initially, but got broken during addressing review, so none of them did actually work. Issues: * Wrong negation. * Wrong exponent calculation. llvm-svn: 243746
* [regalloc] Make RegMask clobbers prevent merging vreg's into PhysRegs when ↵Daniel Sanders2015-07-311-0/+8
| | | | | | | | | | | | | | | | | | | | | hoisting def's upwards. Summary: This prevents vreg260 and D7 from being merged in: %vreg260<def> = LDC1 ... JAL <ga:@sin>, <regmask ... list not containing D7 ...> %D7<def> = COPY %vreg260; ... Doing so is not valid because the JAL clobbers the D7. This fixes the almabench regression in the LLVM 3.7.0 release branch. Reviewers: MatzeB Subscribers: MatzeB, qcolombet, hans, llvm-commits Differential Revision: http://reviews.llvm.org/D11649 llvm-svn: 243745
* Re-commit r243686 - [Sanitizers] [Bug 24151] Generalize type of offset in ↵Daniel Sanders2015-07-315-7/+7
| | | | | | | | | internal_mmap The builder remains broken in the same way without this patch so this patch is innocent. llvm-svn: 243744
* [AArch64|DFSAN] XPASS custom.cc, as it got fixed by r243686Renato Golin2015-07-311-3/+0
| | | | llvm-svn: 243743
* Escape new line and tabs in the result of variable evaluation.Hafiz Abid Qadeer2015-07-312-2/+2
| | | | | | | | | Expression evaluation error messages may have embedded new lines and tabs. These should be escaped in the result string. Patch by paulmaybee. Reviewed in http://reviews.llvm.org/D11570. llvm-svn: 243741
* Revert r243686 - [Sanitizers] [Bug 24151] Generalize type of offset in ↵Daniel Sanders2015-07-315-7/+7
| | | | | | | | | internal_mmap It's implicated in a buildbot failure and while the failure looks unrelated, this commit is the only probably candidate in the blamelist. llvm-svn: 243740
* Outline function Parser::ParseCXXClassMemberDeclarationWithPragmas(), NFC.Alexey Bataev2015-07-312-126/+129
| | | | | | Parsing of pragmas followed by a class member declaration is outlined into a separate function Parser::ParseCXXClassMemberDeclarationWithPragmas(). llvm-svn: 243739
* Fix Clang-tidy misc-use-override warnings in some files in ↵Pavel Labath2015-07-3111-100/+86
| | | | | | | | | | include/lldb/Core, unify closing inclusion guards Patch by Eugene Zelenko Differential Revision: http://reviews.llvm.org/D11669 llvm-svn: 243738
* Print message when configuring for standalone build.Eric Fiselier2015-07-311-0/+1
| | | | llvm-svn: 243737
* Move the computation of whether a DWARF compile unitJason Molenda2015-07-313-6/+32
| | | | | | | | is optimized into DWARFCompileUnit, where it should have been. Next I'll need to call this from another section of code for DWARF-in-.o-file behavior correctness. llvm-svn: 243736
* COFF: When resolving _load_config_used, add it as a GC root.Peter Collingbourne2015-07-313-5/+36
| | | | | | | | This fixes the cases where the symbol is defined in a comdat or by bitcode. Differential Revision: http://reviews.llvm.org/D11673 llvm-svn: 243735
* Refactor: Simplify boolean conditional return statements in lib/Target/NVPTXJingyue Wu2015-07-313-37/+15
| | | | | | | | | | | | Summary: Use clang-tidy to simplify boolean conditional return statements Reviewers: rafael, echristo, chandlerc, bkramer, craig.topper, dexonsmith, chapuni, eliben, jingyue, jholewinski Subscribers: llvm-commits, jholewinski Differential Revision: http://reviews.llvm.org/D9983 llvm-svn: 243734
* Fix failing unique_ptr tests.Eric Fiselier2015-07-312-38/+7
| | | | | | | | When I was refactoring the unique_ptr.single.ctor tests I added a test deleter, 'NCDeleter', to deleter.h. Other tests that include deleter.h redefine the NCDeleter type causing test failures. llvm-svn: 243733
* Add another log to the Host channel for loggingJason Molenda2015-07-311-0/+6
| | | | | | the actions taken when trying to locate binaries. llvm-svn: 243732
* AMDGPU: Fix v16i32 to v16i8 truncstoreMatt Arsenault2015-07-312-0/+49
| | | | llvm-svn: 243731
* Start cleanup of unique_ptr tests.Eric Fiselier2015-07-3128-1575/+894
| | | | | | | | | | | | | | | | One of the last sections of tests that still fail in C++03 are the unique_ptr tests. This patch begins cleaning up the tests and fixing C++03 failures. The main changes of this patch: - The "Deleter" type in "deleter.h" tried to be "move-only" in C++03. However the move simulation no longer works (see "__rv"). "Deleter" is now copy constructible in C++03. However copying "Deleter" will "move" the test value instead of copying it. - Reduce the unique.ptr.single.ctor tests files from ~25 to 4. There is no reason the tests were split through so many files. llvm-svn: 243730
* Mark any as done and comment out extra methods until speaking to MarshallEric Fiselier2015-07-313-6/+7
| | | | llvm-svn: 243729
* [libcxx] Add <experimental/any> v2.Eric Fiselier2015-07-3128-0/+2873
| | | | | | | | | | | | | | | | Summary: This patch adds the second revision of <experimental/any>. I've been working from the LFTS draft found at this link. https://rawgit.com/cplusplus/fundamentals-ts/v1/fundamentals-ts.html#any Reviewers: danalbert, jroelofs, K-ballo, mclow.lists Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D6762 llvm-svn: 243728
* Make sure the 2 method calls are sequenced.Argyrios Kyrtzidis2015-07-311-1/+2
| | | | llvm-svn: 243727
* [libFuzzer] trace switch statements and apply mutations based on the ↵Kostya Serebryany2015-07-316-4/+143
| | | | | | expected case values llvm-svn: 243726
* Add -Wno-error by default to work around failing compiler-rt buildsEric Fiselier2015-07-311-0/+4
| | | | llvm-svn: 243725
OpenPOWER on IntegriCloud