summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* [Disasm][AVX512] Implement decoding of top bit for non-destructive reg fieldsAdam Nemet2014-06-242-1/+8
| | | | | | | | | V' bit in the P2 byte of the EVEX prefix provides the top bit of the NDD and NDS register fields. This was simply not used in the decoder until now. Fixes <rdar://problem/17402661> llvm-svn: 211565
* [Emacs] Use spaces rather than tabs for indentation in tablegen-modeAdam Nemet2014-06-241-0/+1
| | | | llvm-svn: 211564
* Support: Move class ScaledNumberDuncan P. N. Exon Smith2014-06-244-673/+667
| | | | | | | | ScaledNumber has been cleaned up enough to pull out of BFI now. Still work to do there (tests for shifting, bloated printing code, etc.), but it seems clean enough for its new home. llvm-svn: 211562
* BFI: Un-floatify more languageDuncan P. N. Exon Smith2014-06-242-32/+33
| | | | llvm-svn: 211561
* BFI: Remove more float-like language from ScaledNumberDuncan P. N. Exon Smith2014-06-241-8/+8
| | | | llvm-svn: 211560
* Support: Return ScaledNumbers::MaxScale from getQuotient()Duncan P. N. Exon Smith2014-06-242-6/+6
| | | | | | Return MaxScale now that it's available. llvm-svn: 211559
* Support: Extract ScaledNumbers::MinScale and MaxScaleDuncan P. N. Exon Smith2014-06-243-18/+18
| | | | llvm-svn: 211558
* BFI: Change language from "exponent" to "scale"Duncan P. N. Exon Smith2014-06-232-61/+59
| | | | llvm-svn: 211557
* BFI: Update ScaledNumber header docsDuncan P. N. Exon Smith2014-06-231-13/+17
| | | | llvm-svn: 211556
* BFI: Rename UnsignedFloat => ScaledNumberDuncan P. N. Exon Smith2014-06-232-107/+111
| | | | | | | A lot of the docs and API are out of date, but I'll leave that for a separate commit. llvm-svn: 211555
* Fix comments from r211553Duncan P. N. Exon Smith2014-06-231-2/+2
| | | | llvm-svn: 211554
* Support: Extract ScaledNumbers::getSum() and getDifference()Duncan P. N. Exon Smith2014-06-233-61/+250
| | | | llvm-svn: 211553
* Support: Return scale from ScaledNumbers::matchScales()Duncan P. N. Exon Smith2014-06-232-14/+17
| | | | | | This will be convenient when extracting `ScaledNumbers::getSum()`. llvm-svn: 211552
* not: Only consider exit code 3 to be a crash with --crashReid Kleckner2014-06-231-4/+5
| | | | | | | This fixes Clang's test/Index/comment-xml-schema.c with Cygwin's xmllint.exe, which uses exit(3) for XML validation failure. llvm-svn: 211550
* Pass a std::unique_ptr& to the create??? methods is lib/Object.Rafael Espindola2014-06-2316-53/+68
| | | | | | | | This makes the buffer ownership on error conditions very natural. The buffer is only moved out of the argument if an object is constructed that now owns the buffer. llvm-svn: 211546
* [FastISel][X86] Lower unsupported selects to control-flow.Juergen Ributzka2014-06-232-0/+209
| | | | | | | | The extends the select lowering coverage by emiting pseudo cmov instructions. These insturction will be later on lowered to control-flow to simulate the select. llvm-svn: 211545
* [FastISel][X86] Add support for floating-point select.Juergen Ributzka2014-06-232-0/+519
| | | | | | | | | | This extends the select lowering to support floating-point selects. The lowering depends on SSE instructions and that the conditon comes from a floating-point compare. Under this conditions it is possible to emit an optimized instruction sequence that doesn't require any branches to simulate the select. llvm-svn: 211544
* [FastISel][X86] Optimize selects when the condition comes from a compare.Juergen Ributzka2014-06-236-39/+471
| | | | | | | Optimize the select instructions sequence to use the EFLAGS directly from a compare when possible. llvm-svn: 211543
* Make ObjectFile and BitcodeReader always own the MemoryBuffer.Rafael Espindola2014-06-2323-154/+117
| | | | | | | | | | This allows us to just use a std::unique_ptr to store the pointer to the buffer. The flip side is that they have to support releasing the buffer back to the caller. Overall this looks like a more efficient and less brittle api. llvm-svn: 211542
* This reverts commit r211533 and r211539.Rafael Espindola2014-06-232-75/+1
| | | | | | | | | Revert "Fix PR20056: Implement pseudo LDR <reg>, =<literal/label> for AArch64" Revert "Fix cmake build." It was missing a file. llvm-svn: 211540
* Fix cmake build.Juergen Ributzka2014-06-231-1/+0
| | | | llvm-svn: 211539
* Simplify memory management with std::unique_ptr.Rafael Espindola2014-06-231-12/+8
| | | | llvm-svn: 211538
* nm-trivial-object.test requires shell since Lit internal runner isn't ↵NAKAMURA Takumi2014-06-231-0/+1
| | | | | | capable of chdir. llvm-svn: 211537
* Fix PR20056: Implement pseudo LDR <reg>, =<literal/label> for AArch64Weiming Zhao2014-06-233-1/+76
| | | | | | | | | | | | | | | | | | | This patch is based on the changes from ARM target [1,2] Based on ARM doc [3], if the literal value can be loaded with a valid MOV, it can emit that instruction. This is implemented in this patch. [1] Fix PR18345: ldr= pseudo instruction produces incorrect code when using in inline assembly Author: David Peixotto <dpeixott@codeaurora.org> commit b92cca222898d87bbc764fa22e805adb04ef7f13 (r200777) [2] Implement the ldr-pseudo opcode for ARM assembly Author: David Peixotto <dpeixott@codeaurora.org> commit 0fa193b08627927ccaa0804a34d80480894614b8 (r197708) [3] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0802a/CJAHAIBC.html Differential Revision: http://reviews.llvm.org/D4163 llvm-svn: 211533
* Convert a few methods to use ErrorOr.Rafael Espindola2014-06-235-21/+19
| | | | | | | It used to be inconvenient to mix ErrorOr and UniquePtr, but with c++11 they work OK together. llvm-svn: 211532
* Support: Extract ScaledNumbers::matchScale()Duncan P. N. Exon Smith2014-06-233-46/+119
| | | | llvm-svn: 211531
* Change the default input for llvm-nm to be a.out instead of standard inputKevin Enderby2014-06-236-8/+16
| | | | | | | | | to match llvm-size and other UNIX systems for their nm(1). Tweak test cases that used llvm-nm with standard input to add a "-" to indicate that and add a test case to check the default of a.out for llvm-nm. llvm-svn: 211529
* [Mips] Add a target streamer when creating a null streamer.Rafael Espindola2014-06-234-33/+77
| | | | | | Should fix DebugInfo/global.ll on the mips bot. llvm-svn: 211527
* Recommit 211309 (StringMap::insert), reverted in 211328 due to issues with ↵David Blaikie2014-06-233-23/+72
| | | | | | | | | | | | private, but non-deleted, move members. Certain versions of GCC (~4.7) couldn't handle the SFINAE on access control, but with "= delete" (hidden behind a macro for portability) this issue is worked around/addressed. Patch by Agustín Bergé llvm-svn: 211525
* R600/SI: Verify restrictions on div_scale operands.Matt Arsenault2014-06-231-0/+35
| | | | llvm-svn: 211524
* R600/SI: Fix div_scale intrinsic.Matt Arsenault2014-06-236-16/+104
| | | | | | | The operand that must match one of the others does matter, and implement selecting for it. llvm-svn: 211523
* R600: Fix formatting of intrinsic definitions.Matt Arsenault2014-06-231-22/+14
| | | | | | | It makes more sense for the GCCBuiltin name to come immediately after the ID name. llvm-svn: 211522
* Cleanup r211507Duncan P. N. Exon Smith2014-06-232-1/+3
| | | | llvm-svn: 211521
* ARMEB: Vector extend operationsChristian Pirker2014-06-233-20/+231
| | | | | | Reviewed at http://reviews.llvm.org/D4043 llvm-svn: 211520
* R600: Remove AMDILISelLoweringMatt Arsenault2014-06-236-48/+13
| | | | llvm-svn: 211519
* R600: Select is not expensive.Matt Arsenault2014-06-231-0/+7
| | | | llvm-svn: 211518
* R600: Move add/sub with overflow out of AMDILISelLoweringMatt Arsenault2014-06-237-21/+258
| | | | | | Add more tests for these. llvm-svn: 211517
* R600: Move more out of AMDILISelLoweringMatt Arsenault2014-06-233-37/+19
| | | | llvm-svn: 211516
* R600: Don't set fp_round_inreg action.Matt Arsenault2014-06-231-9/+0
| | | | | | | There's no point in setting this since it seems to only by created in 1 place for ppcf128 llvm-svn: 211515
* R600/SI: Handle i64 sub.Matt Arsenault2014-06-235-30/+58
| | | | | | We can handle it the same way as add llvm-svn: 211514
* R600/SI: Move selection of i64 add to separate function.Matt Arsenault2014-06-231-39/+43
| | | | | | Also don't use a SmallVector for fixed size array. llvm-svn: 211513
* R600: Rename AMDIL fileMatt Arsenault2014-06-237-38/+33
| | | | llvm-svn: 211512
* Fix missing words in sentenceMatt Arsenault2014-06-231-3/+3
| | | | llvm-svn: 211511
* Use helper functionMatt Arsenault2014-06-231-7/+2
| | | | llvm-svn: 211510
* Alphabetize forward declarationsMatt Arsenault2014-06-231-2/+2
| | | | llvm-svn: 211509
* Delete utils/FileUpdate.Rafael Espindola2014-06-236-117/+2
| | | | | | It is unused and it looks like it was never used. llvm-svn: 211508
* Support: Extract ScaledNumbers::compare()Duncan P. N. Exon Smith2014-06-234-35/+87
| | | | llvm-svn: 211507
* Allow using .cfi_startproc without a leading symbol.Rafael Espindola2014-06-236-32/+18
| | | | | | This is possible now that we don't produce .eh symbols. This fixes pr19430. llvm-svn: 211502
* clang-format initializer to reduce noise in another patch.Rafael Espindola2014-06-231-3/+4
| | | | llvm-svn: 211501
* Stop producing func.eh symbols on Darwin.Rafael Espindola2014-06-235-44/+1
| | | | | | | | | | According Nick Kledzik (http://llvm.org/bugs/show_bug.cgi?id=19430#c2): "... mach-o no longer needs names in the __eh_frame section (and has not for years)." Iain Sandoe confirms it is also unnecessary for their old darwin support. llvm-svn: 211500
OpenPOWER on IntegriCloud