summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [RenderScript] Support for amd64 RS hooksEwan Crawford2015-12-111-9/+54
| | | | | | | Adds support for reading a maximum of six integer arguments from a renderscript hook on X86_64. Author: Luke Drummond <luke.drummond@codeplay.com> llvm-svn: 255338
* [OpenCL 2.0] In OpenCL v2.0 s6.5 all pointers are implicitly in genericAnastasia Stulova2015-12-113-4/+45
| | | | | | | | | | | address space unless address space is explicitly specified. Correct the behavior of NULL constant detection - generic AS void pointer should be accepted as a valid NULL constant. http://reviews.llvm.org/D15293 llvm-svn: 255337
* [Mem2Reg] Respect optnoneJames Molloy2015-12-112-0/+24
| | | | | | | | Mem2Reg shouldn't be optimizing a function that is marked optnone. There is a test checking this that fails when mem2reg is explicitly added to the standard pass pipeline. llvm-svn: 255336
* Revert "Turn on new test summary results by default."Pavel Labath2015-12-112-9/+2
| | | | | | | The new test summary formatter does not honor the "expected timeout" markings, which makes our buildbots all red. I'm switching it off by default until we figure out a way to make this work. llvm-svn: 255335
* [InstCombine] Make MatchBSwap also match bit reversalsJames Molloy2015-12-113-103/+250
| | | | | | MatchBSwap has most of the functionality to match bit reversals already. If we switch it from looking at bytes to individual bits and remove a few early exits, we can extend the main recursive function to match any sequence of ORs, ANDs and shifts that assemble a value from different parts of another, base value. Once we have this bit->bit mapping, we can very simply detect if it is appropriate for a bswap or bitreverse. llvm-svn: 255334
* [ELF] - R_X86_64_SIZE64/R_X86_64_SIZE32 relocations implemented.George Rimar2015-12-116-15/+257
| | | | | | | | | | | | R_X86_64_SIZE64/R_X86_64_SIZE32 relocations were introduced in 0.98v of "System V Application Binary Interface x86-64" (http://www.x86-64.org/documentation/abi.pdf). Calculation for them is Z + A, where: Z - Represents the size of the symbol whose index resides in the relocation entry. A - Represents the addend used to compute the value of the relocatable field. Differential revision: http://reviews.llvm.org/D15335 llvm-svn: 255332
* Revert previous test commit.Maxim Ostapenko2015-12-111-1/+0
| | | | llvm-svn: 255331
* This is a test commit to check my commit access works.Maxim Ostapenko2015-12-111-0/+1
| | | | llvm-svn: 255330
* [PGO] Read VP raw data without depending on the Value fieldXinliang David Li2015-12-112-16/+14
| | | | | | | | | | | | | | | | Before this patch, each function's on-disk VP data is 'pointed' to by the Value field of per-function ProfileData structue, and read relies on this field (relocated with ValueDataDelta field) to read the value data. However this means the Value field needs to be updated during runtime before dumping, which creates undesirable data races. With this patch, the reading of VP data no longer depends on Value field. There is no format change. ValueDataDelta header field becomes obsolute but will be kept for compatibility reason (will be removed next time the raw format change is needed). llvm-svn: 255329
* Driver: add multilibs for ARM EBSaleem Abdulrasool2015-12-116-0/+29
| | | | | | | | This improves the coverage for the multilib directories used for ARM. Also add tests covering the internal triple (thumbv7-*). The Juno board can be run in this configuration. llvm-svn: 255328
* [PGO] add a test case in profiler runtimeXinliang David Li2015-12-111-0/+135
| | | | | | | | Add a test case to cover profile dumping of functions with no value sites, functions with value sites but no dynamic VP data, and functions with runtime VP data. llvm-svn: 255327
* [PGO] Add a test case to cover version-3 formatXinliang David Li2015-12-112-1/+1
| | | | llvm-svn: 255326
* Correctly type-check the default arguments of local functionsJohn McCall2015-12-112-2/+32
| | | | | | | | when eagerly instantiating them. rdar://23721638 llvm-svn: 255325
* Revert "[Modules] Fix regression when an elaborated-type-specifier mentions ↵Ben Langmuir2015-12-114-34/+4
| | | | | | | | | | a hidden tag" This is causing assertion failures; reverting until I can fix. This reverts commit r255267 llvm-svn: 255324
* Add some more tests for initializer lists related to CWG1591Faisal Vali2015-12-111-0/+20
| | | | llvm-svn: 255323
* Fix build after r255319.Hans Wennborg2015-12-111-1/+1
| | | | llvm-svn: 255322
* Fix a spurious if.Eric Christopher2015-12-111-1/+1
| | | | llvm-svn: 255321
* [LazyValueInfo] Stop inserting overdefined values into ValueCache toAkira Hatanaka2015-12-111-18/+48
| | | | | | | | | | | | | | | | | | reduce memory usage. Previously, LazyValueInfoCache inserted overdefined lattice values into both ValueCache and OverDefinedCache. This wasn't necessary and was causing LazyValueInfo to use an excessive amount of memory in some cases. This patch changes LazyValueInfoCache to insert overdefined values only into OverDefinedCache. The memory usage decreases by 70 to 75% when one of the files in llvm is compiled. rdar://problem/11388615 Differential revision: http://reviews.llvm.org/D15391 llvm-svn: 255320
* [PPC]: Peephole optimize small accesss to aligned globals.Kyle Butt2015-12-112-9/+361
| | | | | | | | | | | | | | | | | | | | | | | Access to aligned globals gives us a chance to peephole optimize nonzero offsets. If a struct is 4 byte aligned, then accesses to bytes 0-3 won't overflow the available displacement. For example: addis 3, 2, b4v@toc@ha addi 4, 3, b4v@toc@l lbz 5, b4v@toc@l(3) ; This is the result of the current peephole lbz 6, 1(4) ; optimizer lbz 7, 2(4) lbz 8, 3(4) If b4v is 4-byte aligned, we can skip using register 4 because we know that b4v@toc@l+{1,2,3} won't overflow 32K, and instead generate: addis 3, 2, b4v@toc@ha lbz 4, b4v@toc@l(3) lbz 5, b4v@toc@l+1(3) lbz 6, b4v@toc@l+2(3) lbz 7, b4v@toc@l+3(3) Saving a register and an addition. Larger alignments allow larger structures/arrays to be optimized. llvm-svn: 255319
* Check in the script for building Win snapshotsHans Wennborg2015-12-111-0/+93
| | | | llvm-svn: 255318
* [ProfileData] clang-format TextInstrProfReader::hasFormat. NFC.Vedant Kumar2015-12-111-2/+3
| | | | llvm-svn: 255317
* [X86][SSE] Update the cost table for integer-integer conversions on SSE2/SSE4.1.Cong Hou2015-12-113-5/+435
| | | | | | | | | | | | Previously in the conversion cost table there are no entries for integer-integer conversions on SSE2. This will result in imprecise costs for certain vectorized operations. This patch adds those entries for SSE2 and SSE4.1. The cost numbers are counted from the result of running llc on the new test case in this patch. Differential revision: http://reviews.llvm.org/D15132 llvm-svn: 255315
* Clean ExprConstant/CGExprConstant up a bit. NFC.George Burgess IV2015-12-112-14/+16
| | | | llvm-svn: 255314
* Format fix (NFC)Xinliang David Li2015-12-101-2/+4
| | | | llvm-svn: 255313
* [VFS] Fix status() of opened redirected fileBen Langmuir2015-12-106-24/+60
| | | | | | | | | | | | | | | Make RedirectedFileSystem::openFilForRead(path)->status() the same as RedirectedFileSystem::status(path). Previously we would just get the status of the underlying real file, which would not have the IsVFSMapped bit set. This fixes rebuilding a module that has an include that is relative to the includer where we will lookup the real path of that file before we lookup the VFS location. rdar://problem/23640339 llvm-svn: 255312
* In Objective-C, ignore attempts to redefine the ARC/GC qualifier macros.John McCall2015-12-103-0/+49
| | | | | | | | | | | | | | This works around existing system headers which unconditionally redefine these macros. This is reasonably safe to do because we used to warn about it anyway (outside of system headers). Continue to warn if the redefinition would have changed the expansion. Still permit redefinition if the macro is explicitly #undef'ed first. rdar://23788307 llvm-svn: 255311
* test result details now print module.class.test_name in verbose mode.Todd Fiala2015-12-102-2/+10
| | | | | | | And, turns off verbose mode by default. This must have been switched on as the default when somebody was testing. llvm-svn: 255310
* Objective-C properties: merge attributes when redeclaring 'readonly' as ↵Douglas Gregor2015-12-108-112/+190
| | | | | | | | | | | | | | 'readwrite' in an extension. r251874 stopped back-patching the AST when an Objective-C 'readonly' property is redeclared in a class extension as 'readwrite'. However, it did not properly handle merging of Objective-C property attributes (e.g., getter name, ownership, atomicity) to the redeclaration, leading to bad metadata. Merge (and check!) those property attributes so we get the right metadata and reasonable ASTs. Fixes rdar://problem/23823989. llvm-svn: 255309
* Add NetBSD support in the buildDriver and buildLibrary routinesKamil Rytarowski2015-12-101-2/+2
| | | | | | | | | | | | Summary: NetBSD is like FreeBSD and Linux in these routines. Reviewers: clay.chang, tfiala, emaste, joerg Subscribers: lldb-commits, emaste Differential Revision: http://reviews.llvm.org/D15374 llvm-svn: 255308
* Fix alignment computation for copy relocs.Rafael Espindola2015-12-103-3/+44
| | | | | | | | Fixes PR25798. Thanks to Ed Maste for the bug report and suggested fix. llvm-svn: 255307
* s/need/needsEric Christopher2015-12-101-2/+2
| | | | llvm-svn: 255306
* Fix (bitcast (fabs x)), (bitcast (fneg x)) and (bitcast (fcopysign cst,Eric Christopher2015-12-102-0/+171
| | | | | | | | | | | | x)) combines for ppc_fp128, since signbit computation is more complicated. Discussion thread: http://lists.llvm.org/pipermail/llvm-dev/2015-November/092863.html Patch by Tim Shen! llvm-svn: 255305
* Attempt to fix the ReST compilation to html of the C API docs.Eric Christopher2015-12-101-14/+14
| | | | llvm-svn: 255304
* More non-ascii quote characters.Eric Christopher2015-12-101-2/+2
| | | | llvm-svn: 255303
* Clarify some of the wording on adding a new subcomponent to theEric Christopher2015-12-101-2/+2
| | | | | | C API. llvm-svn: 255302
* Fix non-ascii quotes.Eric Christopher2015-12-101-4/+4
| | | | llvm-svn: 255301
* Add C API guidelines to the developer policy to match discussionsEric Christopher2015-12-101-0/+27
| | | | | | on the llvm mailing lists. llvm-svn: 255300
* PPC: Teach FMA mutate to respect register classes.Kyle Butt2015-12-102-2/+98
| | | | | | | | | This was causing bad code gen and assembly that won't assemble, as mixed altivec and vsx code would end up with a vsx high register assigned to an altivec instruction, which won't work. Constraining the classes allows the optimization to proceed. llvm-svn: 255299
* [CMake] Add LLVM_BUILD_INSTRUMENTED option to enable building with ↵Chris Bieneman2015-12-101-0/+8
| | | | | | | | -fprofile-instr-generate This is the first step in supporting PGO data generation via CMake. I've marked the option as advanced and experimental until it is fleshed out further. llvm-svn: 255298
* www: Mention -DGCC_INSTALL_PREFIX instead of --with-gcc-toolchainJustin Bogner2015-12-101-1/+1
| | | | | | | Since the instructions use cmake, we should probably refer to the cmake flags and not the configure ones. llvm-svn: 255297
* [LibFuzzer] Introducing FUZZER_FLAG_UNSIGNED and using it for seeding.Mike Aizatsky2015-12-105-9/+25
| | | | | | | | Differential Revision: http://reviews.llvm.org/D15339 done llvm-svn: 255296
* EarlyCSE: add testsJF Bastien2015-12-101-10/+68
| | | | | | | | | | | | Summary: As a follow-up to rL255054 I wasn't able to convince myself that the code did what I thought, so I wrote more tests. Reviewers: reames Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D15371 llvm-svn: 255295
* [PGO] Split value profiling runtime into its own fileXinliang David Li2015-12-106-221/+245
| | | | | | | | | Value profile runtime depends on libc which breaks buffer API implemenation with current file organization. Test case is also updated to check more symbols. llvm-svn: 255294
* Sync up with masterXinliang David Li2015-12-101-0/+1
| | | | llvm-svn: 255293
* Add a forward declaration (NFC)Xinliang David Li2015-12-101-0/+1
| | | | llvm-svn: 255292
* Delete a duplicate branch in IfConversion.cpp. NFC.Cong Hou2015-12-101-9/+0
| | | | llvm-svn: 255291
* [PGO] Move impl specific decl to InstrProfilingInternal.h (NFC)Xinliang David Li2015-12-103-3/+3
| | | | llvm-svn: 255290
* [DAGCombiner] Fix PR25763 - vector comparison constant folding + sign-extensionSimon Pilgrim2015-12-102-5/+24
| | | | | | PR25763 demonstrated an issue with D14683 - vector comparison constant folding only works for i1 results, so we need to split off the sign-extension of the result to the required type. Luckily this can be done with the existing type legalization code. llvm-svn: 255289
* [Sema] Replace pointer-to-map with a map. NFC.George Burgess IV2015-12-101-12/+6
| | | | llvm-svn: 255288
* [TSan] Try harder to avoid compiler-generated memcpy calls.Alexey Samsonov2015-12-103-10/+11
| | | | | | | | check_memcpy test added in r254959 fails on some configurations due to memcpy() calls inserted by Clang. Try harder to avoid them by using internal_memcpy() where applicable. llvm-svn: 255287
OpenPOWER on IntegriCloud