aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix -Wdocumentation warningHans Wennborg2013-07-181-1/+1
| | | | | | | s/Tokenize/Tokenizer/ to make the comment correspond to the parameter name git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186608 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a test for .secure_log_unique.Rafael Espindola2013-07-181-0/+9
| | | | | | It also doubles a test that F_Append works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186606 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert "Remove DIBuilder cache of variable TheCU and change the few"Eric Christopher2013-07-183-27/+23
| | | | | | This reverts commit r186599 as I didn't want to commit this yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186601 91177308-0d34-0410-b5e6-96231b3b80d8
* Equal means ==, not !=. Thanks to Benjamin for catching.Eric Christopher2013-07-181-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186600 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove DIBuilder cache of variable TheCU and change the fewEric Christopher2013-07-183-23/+27
| | | | | | | uses that wanted it. Also change the interface for createCompileUnit to compensate. Fix comments that refer to TheCU as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186599 91177308-0d34-0410-b5e6-96231b3b80d8
* Small improvement to the use of GetFileType:Rafael Espindola2013-07-181-1/+8
| | | | | | | | | * assert that the return value is one of the documented values on msdn. * on FILE_TYPE_UNKNOWN, check GetLastError. Unfortunately I can't think of a way to get a FILE_TYPE_UNKNOWN on a test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186595 91177308-0d34-0410-b5e6-96231b3b80d8
* Update to CodeGen tests to use CHECK-LABEL for labels corresponding to ↵Stephen Lin2013-07-183-35/+35
| | | | | | function definitions for more informative error messages. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186594 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle constants without going through SCEV.Nadav Rotem2013-07-181-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186593 91177308-0d34-0410-b5e6-96231b3b80d8
* SLPVectorizer: Speedup isConsecutive by manually checking GEPs with multiple ↵Nadav Rotem2013-07-181-4/+12
| | | | | | | | | | indices. This brings the compile time of the SLP-Vectorizer to about 2.5% of OPT for my testcase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186592 91177308-0d34-0410-b5e6-96231b3b80d8
* Windows/Path.inc: Introduce file_type::character_file and ↵NAKAMURA Takumi2013-07-182-3/+13
| | | | | | | | | | file_type::fifo_file in sys::fs::getStatus(HANDLE). It fixes llvm/test/Other/close-stderr.ll on msys. FIXME: Provide unittests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186588 91177308-0d34-0410-b5e6-96231b3b80d8
* [Support] Beef up and expose the response file parsing in llvm::clReid Kleckner2013-07-184-64/+224
| | | | | | | | | | | | | | | | | | | The plan is to use it for clang and lld. Major behavior changes: - We can now parse UTF-16 files that have a byte order mark. - PR16209: Don't drop backslashes on the floor if they don't escape anything. The actual parsing loop was based on code from Clang's driver.cpp, although it's been rewritten to track its state with control flow rather than state variables. Reviewers: hans Differential Revision: http://llvm-reviews.chandlerc.com/D1170 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186587 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm/test/Other/close-stderr.ll: Mark this as XFAIL on msys, since r186560.NAKAMURA Takumi2013-07-181-0/+3
| | | | | | sys::fs::status() doesn't work on pipes. Investigating. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186586 91177308-0d34-0410-b5e6-96231b3b80d8
* Forgot 'svn add' again, sorry!Joey Gouly2013-07-181-0/+145
| | | | | | | Tests for r186574. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186580 91177308-0d34-0410-b5e6-96231b3b80d8
* Change 'n' to 'N' to keep consistent with other instructions.Joey Gouly2013-07-181-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186576 91177308-0d34-0410-b5e6-96231b3b80d8
* [ARMv8] Add NEON instructions VCVT{A, N, P, M}.Joey Gouly2013-07-187-0/+220
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186574 91177308-0d34-0410-b5e6-96231b3b80d8
* [SystemZ] Use RNSBGRichard Sandiford2013-07-183-21/+324
| | | | | | | This should be the last of the R.SBG patches for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186573 91177308-0d34-0410-b5e6-96231b3b80d8
* Add Thumb tests for the ARMv8 FP instructions that I recently added.Joey Gouly2013-07-183-2/+295
| | | | | | | Also, fix the namespace for two instructions that I missed previously. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186572 91177308-0d34-0410-b5e6-96231b3b80d8
* [SystemZ] Generalize RxSBG SRA caseRichard Sandiford2013-07-182-27/+74
| | | | | | | | | | The original code only folded SRA into ROTATE ... SELECTED BITS if there was no outer shift. This patch splits out that check and generalises it slightly. The extra cases aren't really that interesting, but this is paving the way for RNSBG support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186571 91177308-0d34-0410-b5e6-96231b3b80d8
* [SystemZ] Use RXSBGRichard Sandiford2013-07-182-11/+128
| | | | | | | Extend the previous R.SBG patches to handle XORs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186570 91177308-0d34-0410-b5e6-96231b3b80d8
* [SystemZ] Rename and formatting fixesRichard Sandiford2013-07-181-64/+61
| | | | | | | | | | | | | In hindsight, using "RISBG" for something that can be any type of R.SBG instruction was a bit confusing, so this renames it to RxSBG. That might not be the best choice either, since there is an instruction called RXSBG, but hopefully the lower-case letter stands out enough. While there I fixed a couple of GNUisms that had crept in -- sorry about that! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186569 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the extra leading 0 from VMAXNMND.Joey Gouly2013-07-181-1/+1
| | | | | | | | | The N3VDIntnp pattern takes bits<5> and I gave it 6 bits. Thanks to Jiangning Liu for spotting it! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186568 91177308-0d34-0410-b5e6-96231b3b80d8
* This patch extends mips register parsing methods to allow indexed register ↵Vladimir Medic2013-07-182-0/+16
| | | | | | parsing. The corresponding test cases are added to the patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186567 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix copy and paste bug from r186491 to make v2f64 use MOVAPD/MOVUPD as it ↵Craig Topper2013-07-182-2/+18
| | | | | | should. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186566 91177308-0d34-0410-b5e6-96231b3b80d8
* Reapply r186316 with a fix for one bug where the code could walk off theChandler Carruth2013-07-182-1256/+977
| | | | | | | | | | | | end of a vector. This was found with ASan. I've had one other report of a crasher, but thus far been unable to reproduce the crash. It may well be fixed with this version, and if not I'd like to get more information from the build bots about what is happening. See r186316 for the full commit log for the new implementation of the SROA algorithm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186565 91177308-0d34-0410-b5e6-96231b3b80d8
* SLPVectorizer: Speedup isConsecutive (that checks if two addresses are ↵Nadav Rotem2013-07-181-12/+31
| | | | | | consecutive in memory) by checking for additional patterns that don't need to go through SCEV. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186563 91177308-0d34-0410-b5e6-96231b3b80d8
* PPC: Support dynamic allocas with large alignmentHal Finkel2013-07-183-27/+92
| | | | | | | | | | | | | | | Support for dynamic stack alignments in the PPC backend has been unfinished, in part because it depends on dynamic stack realignment (which I only just recently implemented fully). Now we can also support dynamic allocas with higher than the default target stack alignment (16 bytes). In order to round-up the requested size to the maximum requested alignment, we need an additional register to hold the rounded-up size. We're already using one scavenged register to hold the previous stack-pointer value (which needs to be stored with the signal-safe stdux update), and so when we have dynamic allocas and a large alignment, we allocate two emergency spill slots for the scavenger. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186562 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead code.Rafael Espindola2013-07-184-117/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186561 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert two uses if fstat with sys::fs::status.Rafael Espindola2013-07-181-14/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186560 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a regression I introduced back in r178147.Rafael Espindola2013-07-182-13/+39
| | | | | | | | | | | We don't want cast and dyn_cast to work on temporaries. They don't extend lifetime like a direct bind to a reference would, so they can introduce hard to find bugs. I added tests to make sure we don't regress this. Thanks to Eli Friedman for noticing this and for his suggestions on how to test it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186559 91177308-0d34-0410-b5e6-96231b3b80d8
* Give 'hasPath' a longer but clearer name 'isPotentiallyReachable'. Also expandNick Lewycky2013-07-181-5/+7
| | | | | | | | the comment. No functionality change. This change broken out of http://llvm-reviews.chandlerc.com/D996 . git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186558 91177308-0d34-0410-b5e6-96231b3b80d8
* Get rid of the Dis/EnableDebugLocations() API.Adrian Prantl2013-07-181-21/+0
| | | | | | I'm moving this functionality into clang instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186549 91177308-0d34-0410-b5e6-96231b3b80d8
* Update comment slightly.Eric Christopher2013-07-181-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186548 91177308-0d34-0410-b5e6-96231b3b80d8
* PPC: Add base-pointer support to builtin setjmp/longjmpHal Finkel2013-07-177-52/+130
| | | | | | | | | | | | | | | | | | First, this changes the base-pointer implementation to remove an unnecessary complication (and one that is incompatible with how builtin SjLj is implemented): instead of using r31 as the base pointer when it is not needed as a frame pointer, now the base pointer will always be r30 when needed. Second, we introduce another pseudo register, BP, which is used just like the FP pseudo register to refer to the base register before we know for certain what register it will be. Third, we now save BP into the jmp_buf, and restore r30 from that slot in longjmp. If the function that called setjmp did not use a base pointer, then r30 will be overwritten by the setjmp-calling-function's restore code. FP restoration (which is restored into r31) works the same way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186545 91177308-0d34-0410-b5e6-96231b3b80d8
* Add comparison operators for DIDescriptors to fix c++98 falloutEric Christopher2013-07-172-1/+8
| | | | | | | | of operator bool change. Also convert a variable in DebugIR. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186544 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an explicit operator bool conversion to DIDescriptor to makeEric Christopher2013-07-171-0/+7
| | | | | | | | | it clear what we want to do. Unfortunately the conversion to pointer operator fires now instead and chasing down all of the conversions and making them explicit and handled is a large task so add a FIXME with it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186543 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a comment.Nadav Rotem2013-07-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186541 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle '.' correctly in hex float literal parsing.Eli Friedman2013-07-172-31/+26
| | | | | | | | | | | There were a couple of different loops that were not handling '.' correctly in APFloat::convertFromHexadecimalString; these mistakes could lead to assertion failures and incorrect rounding for overlong hex float literals. Fixes PR16643. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186539 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some uncovered attribute testsTobias Grosser2013-07-171-0/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186538 91177308-0d34-0410-b5e6-96231b3b80d8
* Restore r181216, which was partially reverted in r182499.Stephen Lin2013-07-173-52/+73
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186533 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a funny typo. Thanks to Aaron Ballman for noticing.Rafael Espindola2013-07-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186532 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a micro optimization to catch cases where the PtrA equals PtrB.Nadav Rotem2013-07-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186531 91177308-0d34-0410-b5e6-96231b3b80d8
* Add FILE_SHARE_WRITE to openFileForRead.Rafael Espindola2013-07-171-1/+1
| | | | | | | | | | | | | | This should fix the windows bots. It looks like the failing tests are of the form prog1 > file prog2 file and prog2 fails trying to read the file. The best fix would probably be to close stdout/stderr in prog1, but it was not the intention of 186511 to change this, so just restore the old behavior for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186530 91177308-0d34-0410-b5e6-96231b3b80d8
* Silencing an MSVC warning about signed vs unsigned comparison mismatches.Aaron Ballman2013-07-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186529 91177308-0d34-0410-b5e6-96231b3b80d8
* [mips] Use "foreach" loop to make register definitions more concise.Akira Hatanaka2013-07-171-80/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186528 91177308-0d34-0410-b5e6-96231b3b80d8
* Add -*- C++ -*- to InstrEmitter.h.Michael Gottesman2013-07-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186527 91177308-0d34-0410-b5e6-96231b3b80d8
* OptParser.td: typoHans Wennborg2013-07-171-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186517 91177308-0d34-0410-b5e6-96231b3b80d8
* This patch checks for valid mnemonics at the beginning of parseInstruction ↵Vladimir Medic2013-07-171-0/+5
| | | | | | method, thus giving the user the right error message for non-existing instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186512 91177308-0d34-0410-b5e6-96231b3b80d8
* Split openFileForRead into Windows and Unix versions.Rafael Espindola2013-07-174-17/+41
| | | | | | | | | | | This has some advantages: * Lets us use native, utf16 windows functions. * Easy to produce good errors on windows about trying to use a directory when we want a file. * Simplifies the unix version a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186511 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix comparisons of alloca alignment in inliner mergingHal Finkel2013-07-172-3/+45
| | | | | | | | Duncan pointed out a mistake in my fix in r186425 when only one of the allocas being compared had the target-default alignment. This is essentially his suggested solution. Thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186510 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement eret and deret(return from exception) instructions for Mips. Test ↵Vladimir Medic2013-07-174-10/+49
| | | | | | examples are given. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186507 91177308-0d34-0410-b5e6-96231b3b80d8