summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove DiagnosticConsumer::clone(), a bad idea that is now unused.Douglas Gregor2013-05-0319-99/+7
| | | | llvm-svn: 181070
* Fixed a test suite typo error that caused the test to fail.Greg Clayton2013-05-031-1/+1
| | | | llvm-svn: 181069
* Don't check the private state in DoOnRemoval, check whether THIS event ↵Jim Ingham2013-05-031-1/+1
| | | | | | | | caused a restart. rdar://problem/13788593 llvm-svn: 181068
* When building a module, forward diagnostics to the outer diagnostic consumer.Douglas Gregor2013-05-0313-15/+136
| | | | | | | | | | | | | | | Previously, we would clone the current diagnostic consumer to produce a new diagnostic consumer to use when building a module. The problem here is that we end up losing diagnostics for important diagnostic consumers, such as serialized diagnostics (where we'd end up with two diagnostic consumers writing the same output file). With forwarding, the diagnostics from all of the different modules being built get forwarded to the one serialized-diagnostic consumer and are emitted in a sane way. Fixes <rdar://problem/13663996>. llvm-svn: 181067
* Delete test instead.Amara Emerson2013-05-031-47/+0
| | | | llvm-svn: 181066
* [Preprocessor] For the MacroExpands preprocessor callback, also pass the ↵Argyrios Kyrtzidis2013-05-0311-16/+19
| | | | | | | | MacroArgs object that provides information about the argument tokens for a function macro. llvm-svn: 181065
* Rename ObjCImplementationDecl::getSuperLoc() -> getSuperClassLoc() for ↵Argyrios Kyrtzidis2013-05-033-3/+3
| | | | | | consistency with ObjCInterfaceDecl::getSuperClassLoc() llvm-svn: 181064
* Small adjustment to PlatformDarwinKernel::ExamineKextForMatchingUUID toJason Molenda2013-05-031-3/+11
| | | | | | | help performance -- if the FileSpec we're examining does not contain the UUID we're looking for, don't bother examining the file any further. llvm-svn: 181063
* Temporarily disable failing test.Amara Emerson2013-05-031-0/+1
| | | | llvm-svn: 181062
* Clear up any deadlocks on Apple builds that were due to the ↵Greg Clayton2013-05-031-23/+14
| | | | | | | | lldb_private::Process.m_private_run_lock variable. If someone on Linux and/or FreeBSD can try to comment out the " #if defined(__APPLE__)" that surrounds access to "m_private_run_lock" and run the test suite, that would be nice. The new location where the locking/unlocking happens is bulletproof on MacOSX, and I want to verify that it is good on linux as well. llvm-svn: 181061
* I was wrong in my testing.Bill Wendling2013-05-033-5/+0
| | | | | | There isn't a speedup when using unbuffered I/O. It slows it down in fact. llvm-svn: 181060
* Remove this hack. We can support this better with function attributes.Bill Wendling2013-05-031-1/+1
| | | | llvm-svn: 181059
* Test commitWei Pan2013-05-031-1/+1
| | | | llvm-svn: 181057
* Reapply r180982 with repaired logic and an additional testcase.Adrian Prantl2013-05-036-22/+76
| | | | | | | | | | | | | | Un-break the gdb buildbot. - Use the debug location of the return expression for the cleanup code if the return expression is trivially evaluatable, regardless of the number of stop points in the function. - Ensure that any EH code in the cleanup still gets the line number of the closing } of the lexical scope. - Added a testcase with EH in the cleanup. rdar://problem/13442648 llvm-svn: 181056
* Refactoring for struct UserArea:Ashok Thirumurthi2013-05-035-115/+117
| | | | | | | | | | | | | - Decouples RegisterContext_x86_64 from UserArea. - Restores the original definition of UserArea so that it can be used to generate offsets for use with ptrace. - Moves UserArea to the 64-bit Linux specialization. - Also fixes an off-by-one error for the size of m_gpr. - Also adds a TODO comment noting the need for a mechanism to identify the correct plugin based on the target OS (and architecture). Reviewed by: Matt Kopec and Samuel Jacob llvm-svn: 181055
* [PowerPC] Avoid using '$' in generated assembler codeUlrich Weigand2013-05-031-2/+2
| | | | | | | | | | | | PowerPC assemblers are supposed to support a stand-alone '$' symbol as an alternative of '.' to refer to the current PC. This does not work in the LLVM assembler parser yet. To avoid bootstrap failures when using the LLVM assembler as system assembler, this patch modifies the assembler source code generated by LLVM to avoid using '$' (and simply use '.' instead). llvm-svn: 181054
* [PowerPC] Parse platform-specifc variant kinds in AsmParserUlrich Weigand2013-05-032-0/+129
| | | | | | | | | This patch adds support for PowerPC platform-specific variant kinds in MCSymbolRefExpr::getVariantKindForName, and also adds a test case to verify they are translated to the appropriate fixup type. llvm-svn: 181053
* [PowerPC] Add some Book II instructions to AsmParserUlrich Weigand2013-05-033-0/+75
| | | | | | | | | | | | | This patch adds a couple of Book II instructions (isync, icbi) to the PowerPC assembler parser. These are needed when bootstrapping clang with the integrated assembler forced on, because they are used in inline asm statements in the code base. The test case adds the full list of Book II storage control instructions, including associated extended mnemonics. Again, those that are not yet supported as marked as FIXME. llvm-svn: 181052
* [PowerPC] Support extended mnemonics in AsmParserUlrich Weigand2013-05-033-0/+473
| | | | | | | | | | | | This patch adds infrastructure to support extended mnemonics in the PowerPC assembler parser. It adds support specifically for those extended mnemonics that LLVM will itself generate. The test case lists *all* extended mnemonics according to the PowerPC ISA v2.06 Book I, but marks those not yet supported as FIXME. llvm-svn: 181051
* [PowerPC] Add assembler parserUlrich Weigand2013-05-0315-16/+2147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds assembler parser support to the PowerPC back end. The parser will run for any powerpc-*-* and powerpc64-*-* triples, but was tested only on 64-bit Linux. The supported syntax is intended to be compatible with the GNU assembler. The parser does not yet support all PowerPC instructions, but it does support anything that is generated by LLVM itself. There is no support for testing restricted instruction sets yet, i.e. the parser will always accept any instructions it knows, no matter what feature flags are given. Instruction operands will be checked for validity and errors generated. (Error handling in general could still be improved.) The patch adds a number of test cases to verify instruction and operand encodings. The tests currently cover all instructions from the following PowerPC ISA v2.06 Book I facilities: Branch, Fixed-point, Floating-Point, and Vector. Note that a number of these instructions are not yet supported by the back end; they are marked with FIXME. A number of follow-on check-ins will add extra features. When they are all included, LLVM passes all tests (including bootstrap) when using clang -cc1as as the system assembler. llvm-svn: 181050
* Fix logic error in ProcessInfo::SetArg0Andrew Kaylor2013-05-031-2/+2
| | | | llvm-svn: 181049
* Serialization for captured statementsBen Langmuir2013-05-039-14/+133
| | | | | | | | | | | Add serialization for captured statements and captured decls. Also add a const_capture_iterator to CapturedStmt. Test contributed by Wei Pan Differential Revision: http://llvm-reviews.chandlerc.com/D727 llvm-svn: 181048
* Decompose GVN::processNonLocalLoad() (about 400 LOC) into smaller helper ↵Shuxin Yang2013-05-031-169/+194
| | | | | | | | | | | | | | functions. No function change. This function consists of following steps: 1. Collect dependent memory accesses. 2. Analyze availability. 3. Perform fully redundancy elimination, or 4. Perform PRE, depending on the availability Step 2, 3 and 4 are now moved to three helper routines. llvm-svn: 181047
* PR15906: The body of a lambda is not an evaluated subexpression; don't visit ↵Richard Smith2013-05-033-2/+23
| | | | | | it when visiting such subexpressions. llvm-svn: 181046
* Harden against potential empty nodes in the mapEnrico Granata2013-05-031-0/+2
| | | | llvm-svn: 181045
* <rdar://problem/13749871>Enrico Granata2013-05-031-4/+27
| | | | | | Improvements to the std::map data formatter to recognize when invalid memory is being explored and bail out instead of looping for a potentially very long time llvm-svn: 181044
* Move CapturedStmt parameters to CapturedDeclBen Langmuir2013-05-037-17/+65
| | | | | | | | | | | Move the creation of CapturedStmt parameters out of CodeGen and into Sema, making it easier to customize the outlined function. The ImplicitParamDecls are stored in the CapturedDecl using an ASTContext-allocated array. Differential Revision: http://llvm-reviews.chandlerc.com/D722 llvm-svn: 181043
* Restore Richard's belief in me.Douglas Gregor2013-05-031-1/+1
| | | | llvm-svn: 181042
* [mips] Split the DSP control register and define one register for each field ofAkira Hatanaka2013-05-036-199/+261
| | | | | | | | | | | its fields. This removes false dependencies between DSP instructions which access different fields of the the control register. Implicit register operands are added to instructions RDDSP and WRDSP after instruction selection, depending on the value of the mask operand. llvm-svn: 181041
* [analyzer] Start hacking up alternate control-flow edge generation. WIP. ↵Ted Kremenek2013-05-032-1/+217
| | | | | | Not guaranteed to do anything useful yet. llvm-svn: 181040
* Keep track of an @implementation's super class name location, if one was ↵Argyrios Kyrtzidis2013-05-036-3/+12
| | | | | | provided. llvm-svn: 181039
* LoopVectorizer: Add support for if-conversion of PHINodes with 3+ incoming ↵Nadav Rotem2013-05-032-20/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | values. By supporting the vectorization of PHINodes with more than two incoming values we can increase the complexity of nested if statements. We can now vectorize this loop: int foo(int *A, int *B, int n) { for (int i=0; i < n; i++) { int x = 9; if (A[i] > B[i]) { if (A[i] > 19) { x = 3; } else if (B[i] < 4 ) { x = 4; } else { x = 5; } } A[i] = x; } } llvm-svn: 181037
* R600: Expand vector or, shl, srl, and xor nodesTom Stellard2013-05-035-0/+60
| | | | llvm-svn: 181035
* R600: BFI_INT is a vector-only instructionTom Stellard2013-05-031-1/+1
| | | | llvm-svn: 181034
* R600: Add pattern for SHA-256 Ma functionTom Stellard2013-05-034-0/+35
| | | | | | This can be optimized using the BFI_INT instruction. llvm-svn: 181033
* R600: Clean up comments in Processors.tdTom Stellard2013-05-031-5/+1
| | | | llvm-svn: 181032
* Micro-optimization: check the overloaded operator kind beforeJohn McCall2013-05-031-2/+2
| | | | | | | | checking for a lambda. Thanks to Jordan for the pointer. llvm-svn: 181031
* Generate input files from within unit testEdwin Vane2013-05-038-49/+42
| | | | | | | | | | | It is preferable for a unit test to be responsible for creating its own input data instead of relying on checked-in data files. Now the IncludeExcludeTest for cpp11-migrate does this. - Removed old data files. - Updated build system and lit files to remove references to old data files. llvm-svn: 181029
* Added a few things that need to be installed on linux to build LLDB.Greg Clayton2013-05-031-1/+1
| | | | llvm-svn: 181028
* Fixed 'command script import' by eliminating the shadowing of basename.Ashok Thirumurthi2013-05-031-2/+1
| | | | | | Reviewed by: Daniel Malea llvm-svn: 181027
* Autoconf: Compile cxxabi.h in C++ mode.Benjamin Kramer2013-05-032-6/+448
| | | | | | Should fix PR15877. llvm-svn: 181026
* RegionInfo: Do not crash if unreachable block is foundTobias Grosser2013-05-032-1/+31
| | | | llvm-svn: 181025
* Fixed the build to reflect the removal of OperatingSystem/Darwin-Kernel in ↵Sylvestre Ledru2013-05-031-3/+1
| | | | | | r180993. llvm-svn: 181024
* Remove svn:eol-style property set in r180918 and r181004Hans Wennborg2013-05-030-0/+0
| | | | | | git-svn accidentally added these for me. llvm-svn: 181023
* ArrayRef'ize InitializationSequence constructor and ↵Dmitri Gribenko2013-05-0310-181/+134
| | | | | | | | InitializationSequence::Diagnose() Patch by Robert Wilhelm. llvm-svn: 181022
* Initialize WarnOnSpellCheck.Rafael Espindola2013-05-031-0/+1
| | | | | | | | | Clang always calls setWarnOnSpellCheck, but we shouldn't require every client to do so. Issue noticed by Enea Zaffanella. llvm-svn: 181021
* Add space between ; and (.Daniel Jasper2013-05-032-1/+2
| | | | | | Before: for (int i = 0;(i < 10); ++i) {} After: for (int i = 0; (i < 10); ++i) {} llvm-svn: 181020
* CMake: cxxabi.h is only available to C++ compilers, use the right check macro.Benjamin Kramer2013-05-031-1/+2
| | | | llvm-svn: 181019
* Fixed the build to reflect the removal of OperatingSystem/Darwin-Kernel in ↵Ashok Thirumurthi2013-05-031-2/+0
| | | | | | r180993. llvm-svn: 181018
* Fix expression recognition in for-loops.Daniel Jasper2013-05-032-0/+4
| | | | | | Before: for (; a&& b;) {} After: for (; a && b;) {} llvm-svn: 181017
OpenPOWER on IntegriCloud