summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [XRay] Remove unnecessary include of <unistd.h>Dean Michael Berris2016-10-261-1/+0
| | | | llvm-svn: 285171
* [XRay] Remove unnecessary include of <unistd.h>Dean Michael Berris2016-10-261-2/+0
| | | | llvm-svn: 285170
* Split LinkerDriver::link. NFC.Rui Ueyama2016-10-261-11/+21
| | | | llvm-svn: 285169
* [XRay] Move specialisations into correct namespaceDean Michael Berris2016-10-261-0/+6
| | | | llvm-svn: 285168
* [XRay] Remove extra `;` to make -wpedantic happyDean Michael Berris2016-10-261-1/+1
| | | | llvm-svn: 285167
* [XRay] Add llvm-xray as a dependency to test/CMakeLists.txtDean Michael Berris2016-10-261-0/+1
| | | | llvm-svn: 285166
* [XRay] Implement `llvm-xray extract`, start of the llvm-xray toolDean Michael Berris2016-10-2620-0/+495
| | | | | | | | | | | | | | | | | | | | Usage: llvm-xray extract <object file> [-o <filename or '-'>] The tool gets the XRay instrumentation map from an object file and turns it into YAML. We first support ELF64 sleds on x86_64 binaries, with provision for supporting other supported platforms and formats later. This is the first of a many-part change to fully implement the `llvm-xray` tool. We also define a subcommand registration and dispatch mechanism to be used by other further subcommand implementations for llvm-xray. Diffusion Revision: https://reviews.llvm.org/D21987 llvm-svn: 285165
* Rename variable to be more consistent.Rui Ueyama2016-10-262-4/+4
| | | | llvm-svn: 285164
* Truncate a SVN path part from --version output.Rui Ueyama2016-10-264-20/+26
| | | | | | This is in sync with what clang does. llvm-svn: 285163
* Use printf instead of "echo -ne".Rui Ueyama2016-10-261-1/+1
| | | | | | Not all echo commands support "-e". llvm-svn: 285162
* Cloning: Also clone global variable attached metadata.Peter Collingbourne2016-10-262-0/+15
| | | | llvm-svn: 285161
* [modules] Fix assert if multiple update records provide a definition for aRichard Smith2016-10-265-2/+19
| | | | | | class template specialization and that specialization has attributes. llvm-svn: 285160
* [Sema] Handle CaseStmt and DefaultStmt as SwitchCaseVitaly Buka2016-10-261-4/+2
| | | | | | | | Summary: rsmith Differential Revision: https://reviews.llvm.org/D25665 llvm-svn: 285159
* [CodeGen] Move shouldEmitLifetimeMarkers into more convenient placeVitaly Buka2016-10-263-28/+31
| | | | | | | | | | | | Summary: D24693 will need access to it from other places Reviewers: eugenis Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D24695 llvm-svn: 285158
* [libFuzzer] refresh docsKostya Serebryany2016-10-261-16/+9
| | | | llvm-svn: 285157
* Revert "[XRay] Implement `llvm-xray extract`, start of the llvm-xray tool"Dean Michael Berris2016-10-2619-494/+0
| | | | | | Reverts r285155 -- misconfigured tests. llvm-svn: 285156
* [XRay] Implement `llvm-xray extract`, start of the llvm-xray toolDean Michael Berris2016-10-2619-0/+494
| | | | | | | | | | | | | | | | | | Usage: llvm-xray extract <object file> [-o <filename or '-'>] The tool gets the XRay instrumentation map from an object file and turns it into YAML. We first support ELF64 sleds on x86_64 binaries, with provision for supporting other supported platforms and formats later. This is the first of a many-part change to fully implement the `llvm-xray` tool. We also define a subcommand registration and dispatch mechanism to be used by other further subcommand implementations for llvm-xray. llvm-svn: 285155
* [cxx_status] update commentRichard Smith2016-10-261-1/+1
| | | | llvm-svn: 285154
* SBWatchpoint::Disable doesn't actually work. Add a test that shows this.Jim Ingham2016-10-263-0/+92
| | | | | | Next to fix it! llvm-svn: 285153
* Treat module headers wrapped by our builtin headers as implicitly being textualRichard Smith2016-10-264-8/+11
| | | | | | | | | | headers. We previously got this check backwards and treated the wrapper header as being textual. This is important because our wrapper headers sometimes inject macros into the system headers that they #include_next, and sometimes replace them entirely. llvm-svn: 285152
* Use printf instead of "echo -e" or "echo -n".Rui Ueyama2016-10-262-23/+23
| | | | | | | Not all echo commands support "-e". On the other hand, printf command is in POSIX, so it's more portable than "echo -e". llvm-svn: 285151
* Implement name mangling proposal for exception specifications from ↵Richard Smith2016-10-2610-4/+187
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cxx-abi-dev 2016-10-11. This has the following ABI impact: 1) Functions whose parameter or return types are non-throwing function pointer types have different manglings in c++1z mode from prior modes. This is necessary because c++1z permits overloading on the noexceptness of function pointer parameter types. A warning is issued for cases that will change manglings in c++1z mode. 2) Functions whose parameter or return types contain instantiation-dependent exception specifications change manglings in all modes. This is necessary to support overloading on / SFINAE in these exception specifications, which a careful reading of the standard indicates has essentially always been permitted. Note that, in order to be affected by these changes, the code in question must specify an exception specification on a function pointer/reference type that is written syntactically within the declaration of another function. Such declarations are very rare, and I have so far been unable to find any code that would be affected by this. (Note that such things will probably become more common in C++17, since it's a lot easier to get a noexcept function type as a function parameter / return type there.) This change does not affect the set of symbols produced by a build of clang, libc++, or libc++abi. llvm-svn: 285150
* Use uint32_t for consistency.Rafael Espindola2016-10-261-1/+1
| | | | llvm-svn: 285149
* Read section headers upfront.Rafael Espindola2016-10-266-64/+87
| | | | | | | | | | | | | | | | | | Instead of storing a pointer, store the members we need. The reason for doing this is that it makes it far easier to create synthetic sections. It also avoids reading data from files multiple times., which might help with cross endian linking and host architectures with slow unaligned access. There are obvious compacting opportunities, but this already has mixed results even on native x86_64 linking. There is also the possibility of better refactoring the code for handling common symbols, but this already shows that a custom class is not necessary. llvm-svn: 285148
* [libFuzzer] simplify the code in TracePC::HandleTrace a bit moreKostya Serebryany2016-10-263-33/+18
| | | | llvm-svn: 285147
* [libFuzzer] simplify the code to print new PCsKostya Serebryany2016-10-264-16/+20
| | | | llvm-svn: 285145
* [Myriad] add empty file to simulated bin dirDouglas Katzman2016-10-251-0/+0
| | | | llvm-svn: 285144
* Utility functions for appending to llvm.used/llvm.compiler.used.Evgeniy Stepanov2016-10-257-100/+76
| | | | llvm-svn: 285143
* [libFuzzer] simplify the code in TracePC::HandleTraceKostya Serebryany2016-10-253-5/+9
| | | | llvm-svn: 285142
* [docs] Avoid repetition of 'considerable' in Error docs.Lang Hames2016-10-251-10/+10
| | | | llvm-svn: 285141
* [Myriad] Find libc++ adjacent to libstdc++Douglas Katzman2016-10-253-12/+16
| | | | llvm-svn: 285140
* [docs] Use consistent style for "do more stuff" in Error docs examples.Lang Hames2016-10-251-5/+8
| | | | llvm-svn: 285138
* [docs] Fix yet another Error docs formatting issue...Lang Hames2016-10-251-1/+2
| | | | llvm-svn: 285137
* [docs] Fix a few more Error docs formatting issues.Lang Hames2016-10-251-5/+6
| | | | | | Thanks to Pete Cooper for the review. llvm-svn: 285136
* [libFuzzer] add StandaloneFuzzTargetMain.c and a test for itKostya Serebryany2016-10-255-3/+62
| | | | llvm-svn: 285135
* [docs] Fix a missing code-block in the new Error docs.Lang Hames2016-10-251-8/+10
| | | | llvm-svn: 285134
* [docs] Fix a couple of typos in the new Error docs.Lang Hames2016-10-251-2/+2
| | | | llvm-svn: 285133
* [codeview] emit debug info for indirect virtual base classesBob Haarman2016-10-253-9/+54
| | | | | | | | | | | | | | | Summary: Fixes PR28281. MSVC lists indirect virtual base classes in the field list of a class. This change makes Clang emit the information necessary for LLVM to emit such records. Reviewers: rnk, ruiu, zturner Differential Revision: https://reviews.llvm.org/D25579 llvm-svn: 285132
* [Sparc] Don't overlap variable-sized allocas with other stack variables.James Y Knight2016-10-254-10/+76
| | | | | | | | | | | | | | | | | | | | On SparcV8, it was previously the case that a variable-sized alloca might overlap by 4-bytes the last fixed stack variable, effectively because 92 (the number of bytes reserved for the register spill area) != 96 (the offset added to SP for where to start a DYNAMIC_STACKALLOC). It's not as simple as changing 96 to 92, because variables that should be 8-byte aligned would then be misaligned. For now, simply increase the allocation size by 8 bytes for each dynamic allocation -- wastes space, but at least doesn't overlap. As the large comment says, doing this more efficiently will require larger changes in llvm. Also adds some test cases showing that we continue to not support dynamic stack allocation and over-alignment in the same function. llvm-svn: 285131
* [codeview] support emitting indirect virtual base class informationBob Haarman2016-10-256-234/+77
| | | | | | | | | | | | | | | | Summary: Fixes PR28281. MSVC lists indirect virtual base classes in the field list of a class, using LF_IVBCLASS records. This change makes LLVM emit such records when processing DW_TAG_inheritance tags with the DIFlagVirtual and (newly introduced) DIFlagIndirect tags. Reviewers: rnk, ruiu, zturner Differential Revision: https://reviews.llvm.org/D25578 llvm-svn: 285130
* [DAGCombiner] Enable (urem x, (shl pow2, y)) -> (and x, (add (shl pow2, y), ↵Simon Pilgrim2016-10-252-48/+11
| | | | | | -1)) combine for splatted vectors llvm-svn: 285129
* [PGO] Fix select instruction annotationRong Xu2016-10-253-4/+61
| | | | | | | | | | | | | | | | Summary: Select instruction annotation in IR PGO uses the edge count to infer the branch count. It's currently placed in setInstrumentedCounts() where no all the BB counts have been computed. This leads to wrong branch weights. Move the annotation after all BB counts are populated. Reviewers: davidxl Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D25961 llvm-svn: 285128
* Use linker flag --fix-cortex-a53-843419 on Android ARM64 compilation.Stephen Hines2016-10-252-0/+25
| | | | | | | | | | | | | | | | Summary: This is only forced on if there is no non-Cortex-A53 CPU specified as well. Android's platform and NDK builds need to assume that the code can be run on Cortex-A53 devices, so we always enable the fix unless we know specifically that the code is only running on a different kind of CPU. Reviewers: cfe-commits Subscribers: aemerson, rengolin, tberghammer, pirama, danalbert Differential Revision: https://reviews.llvm.org/D25761 llvm-svn: 285127
* CodeGen: be more conservative about setting sectionSaleem Abdulrasool2016-10-252-29/+89
| | | | | | | The section names currently are MachO specific. Only set the section on the variables if the file format is MachO. llvm-svn: 285126
* [OpenCL] Add missing atom_xor for 64 bit to opencl-c.hYaxun Liu2016-10-251-0/+7
| | | | | | Differential Revision: https://reviews.llvm.org/D25954 llvm-svn: 285125
* [X86][SSE] Regenerated known-bits test with srem->urem fixSimon Pilgrim2016-10-251-18/+18
| | | | llvm-svn: 285124
* [DAGCombiner] Enable srem(x.y) -> urem(x,y) combine for vectorsSimon Pilgrim2016-10-252-49/+11
| | | | | | SelectionDAG::SignBitIsZero (via SelectionDAG::computeKnownBits) has supported vectors since rL280927 llvm-svn: 285123
* [docs] Add more Error documentation to the Programmer's Manual.Lang Hames2016-10-251-48/+356
| | | | | | | | This patch updates some of the existing Error examples, expands on the documentation for handleErrors, and includes new sections that cover a number of helpful utilities and common error usage idioms. llvm-svn: 285122
* [X86][SSE] Added vector srem combine testsSimon Pilgrim2016-10-251-0/+123
| | | | llvm-svn: 285121
* [index] Fixes for locations and relations in Objective C categories and ↵Argyrios Kyrtzidis2016-10-255-13/+75
| | | | | | | | | | | getters/setters - Add entries for protocols on categories - Add relation between categories and class they extend - Add relation between getters/setters and their corresponding property - Use category name location as the location of category decls/defs if it has one llvm-svn: 285120
OpenPOWER on IntegriCloud