summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* [X86][SSE] Enable commutation from MOVSD/MOVSS to BLENDPD/BLENDPS on SSE41+ ↵Simon Pilgrim2016-10-012-0/+31
| | | | | | | | | | | | targets Instead of selecting between MOVSD/MOVSS and BLENDPD/BLENDPS at shuffle lowering by subtarget this will help us select the instruction based on actual commutation requirements. We could possibly add BLENDPD/BLENDPS -> MOVSD/MOVSS commutation and MOVSD/MOVSS memory folding using a similar approach if it proves useful I avoided adding AVX512 handling as I'm not sure when we should be making use of VBLENDPD/VBLENDPS on EVEX targets llvm-svn: 283037
* Revert "[MC] Prevent out of order HashDirective lexing in AsmLexer."Nirav Dave2016-10-011-17/+26
| | | | | | This reverts commit r282992 which appears to be causing an LTO test failure. llvm-svn: 283034
* [libFuzzer] add fuzzer test for libxml2, finds ↵Kostya Serebryany2016-10-013-0/+38
| | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=751631 llvm-svn: 283024
* [libFuzzer] fix a recent bugs (buffer overflow)Kostya Serebryany2016-10-011-1/+1
| | | | llvm-svn: 283021
* [X86] Cleanup patterns for using VMOVDDUP for broadcasts.Craig Topper2016-10-011-6/+6
| | | | | | | | -Remove OptForSize. Not all of the backend follows the same rules for creating broadcasts and there is no conflicting pattern. -Don't stop selecting VEX VMOVDDUP when AVX512 is supported. We need VLX for EVEX VMOVDDUP. -Only use VMOVDDUP for v2i64 broadcasts if AVX2 is not supported. llvm-svn: 283020
* Revert "Use StringRef instead of raw pointer in TargetRegistry API (NFC)"Mehdi Amini2016-10-012-8/+8
| | | | | | This reverts commit r283017. Creates an infinite loop somehow. llvm-svn: 283019
* Use StringRef instead of raw pointers in MCAsmInfo/MCInstrInfo APIs (NFC)Mehdi Amini2016-10-0111-21/+21
| | | | llvm-svn: 283018
* Use StringRef instead of raw pointer in TargetRegistry API (NFC)Mehdi Amini2016-10-012-8/+8
| | | | llvm-svn: 283017
* Use StringRef instead of raw pointer in ExecutionEngineMehdi Amini2016-10-014-12/+12
| | | | llvm-svn: 283016
* [AVX-512] Add EVEX versions of VPBROADCASTW patterns with truncated i32 loads.Craig Topper2016-10-012-1/+18
| | | | llvm-svn: 283015
* Use StringRef in Datalayout API (NFC)Mehdi Amini2016-10-013-4/+4
| | | | llvm-svn: 283013
* DIFlags: use StringRef instead of raw pointer (NFC)Mehdi Amini2016-10-012-3/+3
| | | | llvm-svn: 283012
* Revert "Use StringRef in Datalayout API (NFC)"Mehdi Amini2016-10-012-2/+2
| | | | | | This reverts commit r283009. Bots are broken. llvm-svn: 283011
* Use StringRef in Datalayout API (NFC)Mehdi Amini2016-10-012-2/+2
| | | | llvm-svn: 283009
* Use StringRef in Pass Info/Support API (NFC)Mehdi Amini2016-10-011-1/+1
| | | | llvm-svn: 283008
* Use StringRef in CommandLine Options handling (NFC)Mehdi Amini2016-10-011-52/+54
| | | | llvm-svn: 283007
* Use StringRef in TLI instead of raw pointer (NFC)Mehdi Amini2016-10-011-15/+13
| | | | llvm-svn: 283005
* Use StringRef in Pass/PassManager APIs (NFC)Mehdi Amini2016-10-01204-358/+230
| | | | llvm-svn: 283004
* Revert "AMDGPU: Don't use offen if it is 0"Mehdi Amini2016-10-012-100/+14
| | | | | | | This reverts commit r282999. Tests are not passing: http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules/builds/20038 llvm-svn: 283003
* Remove getTargetTriple and update all uses to use the Triple offEric Christopher2016-10-011-8/+2
| | | | | | of the TargetMachine. NFC. llvm-svn: 283002
* Stop calling getTargetTriple off of the AsmPrinter and constructing aEric Christopher2016-10-011-2/+2
| | | | | | TargetTriple, just grab it off of the TargetMachine. NFC. llvm-svn: 283001
* Remove TargetTriple from AArch64MCInstLower as it's used in few placesEric Christopher2016-10-011-3/+4
| | | | | | and can be pulled from the TargetMachine. NFC. llvm-svn: 283000
* AMDGPU: Don't use offen if it is 0Matt Arsenault2016-10-012-14/+100
| | | | | | This removes many re-initializations of a base register to 0. llvm-svn: 282999
* Use StringRef in LTOCodegenerator (NFC)Mehdi Amini2016-10-011-4/+4
| | | | llvm-svn: 282998
* Use StringRef in LTOModule implementation (NFC)Mehdi Amini2016-10-012-26/+30
| | | | llvm-svn: 282997
* Use StringRef in Triple API (NFC)Mehdi Amini2016-10-011-7/+7
| | | | llvm-svn: 282996
* [libFuzzer] implement the -shrink=1 option that tires to make elements of ↵Kostya Serebryany2016-10-018-13/+51
| | | | | | the corpus smaller, off by default llvm-svn: 282995
* [MC] Prevent out of order HashDirective lexing in AsmLexer.Nirav Dave2016-10-011-26/+17
| | | | | | | | | | | | | | | | | To lex hash directives we peek ahead to find component tokens, create a unified token, and unlex the peeked tokens so the parser does not need to parse the tokens then. Make sure we do not to lex another hash directive during peek operation. This fixes PR28921. Reviewers: rnk, loladiro Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D24839 llvm-svn: 282992
* [ASAN] Add the binder globals on Darwin to llvm.compiler.used to avoid LTO ↵Mehdi Amini2016-10-011-2/+34
| | | | | | | | | | | | | | | | dead-stripping The binder is in a specific section that "reverse" the edges in a regular dead-stripping: the binder is live as long as a global it references is live. This is a big hammer that prevents LLVM from dead-stripping these, while still allowing linker dead-stripping (with special knowledge of the section). Differential Revision: https://reviews.llvm.org/D24673 llvm-svn: 282988
* [libFuzzer] remove some experimental codeKostya Serebryany2016-09-302-21/+12
| | | | llvm-svn: 282983
* ScheduleDAGInstrs: Cleanup, use range based for; NFCMatthias Braun2016-09-301-61/+45
| | | | llvm-svn: 282979
* [libFuzzer] fix openssl fuzzer tests when running on a machine w/o openssl ↵Kostya Serebryany2016-09-302-2/+2
| | | | | | installed llvm-svn: 282972
* [libFuzzer] remove unused optionKostya Serebryany2016-09-307-20/+8
| | | | llvm-svn: 282971
* [SEH] Emit the parent frame offset label even if there are no funcletsReid Kleckner2016-09-301-19/+39
| | | | | | | | | This avoids errors about references to undefined local labels from unreferenced filter functions. Fixes (sort of) PR30431 llvm-svn: 282967
* [AArch64][RegisterBankInfo] Use the helper functions for the checksQuentin Colombet2016-09-301-29/+26
| | | | | | | | This makes sure the helper functions work as expected. NFC. llvm-svn: 282961
* [AArch64][RegisterBankInfo] Rename getValueMappingIdx to getValueMappingQuentin Colombet2016-09-302-9/+11
| | | | | | | | We don't return index, we return the actual ValueMapping. NFC. llvm-svn: 282960
* [AArch64][RegisterBankInfo] Compress the ValueMapping table a bit.Quentin Colombet2016-09-302-46/+38
| | | | | | | | | | We don't need to have singleton ValueMapping on their own, we can just reuse one of the elements of the 3-ops mapping. This allows even more code sharing. NFC. llvm-svn: 282959
* [AArch64][RegisterBankInfo] Refactor the code to access AArch64::ValMappingQuentin Colombet2016-09-302-24/+23
| | | | | | | | | Use a helper function to access ValMapping. This should make the code easier to understand and maintain. NFC. llvm-svn: 282958
* [AArch64][RegisterBankInfo] Rename getRegBankIdx to getRegBankIdxOffsetQuentin Colombet2016-09-302-17/+22
| | | | | | | | | The function name did not make it clear that the returned value was an offset to apply to a register bank index. NFC. llvm-svn: 282957
* [AArch64][RegisterBankInfo] Use the static opds mapping for alt mappingsQuentin Colombet2016-09-301-14/+7
| | | | | | | | Avoid to rely on the dynamically allocated operands mapping for the alternative mapping. NFC. llvm-svn: 282956
* [libFuzzer] move common parts of shell scripts into a separate fileKostya Serebryany2016-09-309-68/+58
| | | | llvm-svn: 282954
* NFC Add constPiotr Padlewski2016-09-301-3/+3
| | | | llvm-svn: 282952
* NFC fix doxygen commentsPiotr Padlewski2016-09-302-25/+25
| | | | llvm-svn: 282950
* Do not pass a superblock to PDBFileBuilder.Rui Ueyama2016-09-302-11/+6
| | | | | | | | | | | | | | | | | | | | | When we create a PDB file using PDBFileBuilder, the information in the superblock, such as the size of the resulting file, is not available. Previously, PDBFileBuilder::initialize took a superblock assuming that all the members of the struct are correct. That is useful when you want to restore the exact information from a YAML file, but that's probably the only use case in which that is useful. When we are creating a PDB file on the fly, we have to backfill the members. This patch redefines PDBFileBuilder::initialize to take only a block size. Now all the other members are left as default values, so that they'll be updated when commit() is called. Differential Revision: https://reviews.llvm.org/D25108 llvm-svn: 282944
* Pass a filename instead of a msf::WritableStream to PDBFileBuilder::commit.Rui Ueyama2016-09-301-3/+11
| | | | | | | | | | | | | | | WritableStream needs the exact file size to open a file, but until we fix the final layout of a PDB file, we don't know the size of the file. This patch changes the parameter type of PDBFileBuilder::commit to solve that chiecken-and-egg problem. Now the function opens a file after fixing the layout, so it can create a file with the exact size. Differential Revision: https://reviews.llvm.org/D25107 llvm-svn: 282940
* Deal with the (historic) MAP_ANONYMOUS vs MAP_ANON directly by using CPPJoerg Sonnenberger2016-09-301-2/+2
| | | | | | to check for the former, don't depend on (dangling) HAVE_MMAP_ANONYMOUS. llvm-svn: 282925
* Retire NEED_DEV_ZERO_FOR_MMAP. It should be needed only on outdatedJoerg Sonnenberger2016-09-301-16/+0
| | | | | | | systems. It wasn't even hooked up in cmake, so problems on such systems would be visible with 3.9 release already. llvm-svn: 282924
* X86: Allow conditional tail calls in Win64 "leaf" functions (PR26302)Hans Wennborg2016-09-302-6/+6
| | | | | | | | | | | We can't use Jcc to leave a Win64 function in general, because that confuses the unwinder. However, for "leaf" functions, that is, functions where the return address is always on top of the stack and which don't have unwind info, it's OK. Differential Revision: https://reviews.llvm.org/D24836 llvm-svn: 282920
* Turn ENABLE_CRASH_OVERRIDES into a 0/1 definition.Joerg Sonnenberger2016-09-301-1/+1
| | | | llvm-svn: 282919
* Convert ENABLE_BACKTRACES into a 0/1 definition.Joerg Sonnenberger2016-09-302-12/+12
| | | | llvm-svn: 282918
OpenPOWER on IntegriCloud