summaryrefslogtreecommitdiffstats
path: root/llvm/tools
Commit message (Collapse)AuthorAgeFilesLines
* lli: use llvm::utostr() instead of std::to_string().NAKAMURA Takumi2016-01-151-2/+3
| | | | llvm-svn: 257857
* [codeview] Translate file table offsets to filenames and print themReid Kleckner2016-01-151-48/+63
| | | | llvm-svn: 257846
* [sancov] html reportMike Aizatsky2016-01-141-6/+144
| | | | | | Differential Revision: http://reviews.llvm.org/D16161 llvm-svn: 257824
* [PGO] Move profile summary interface/impl into InstrProf.[*] /NFCXinliang David Li2016-01-141-99/+0
| | | | llvm-svn: 257819
* [Orc] Add support for EH-frame registration to the Orc Remote Target utilityLang Hames2016-01-141-1/+9
| | | | | | | | | classes. OrcRemoteTargetClient::RCMemoryManager will now register EH frames with the server automatically. This allows remote-execution of code that uses exceptions. llvm-svn: 257816
* [codeview] Dump function callees and add more labels to inlinee infoReid Kleckner2016-01-141-8/+26
| | | | | | | I kept forgetting which number is the line delta and which is the code delta. llvm-svn: 257813
* Update to use new name alignTo().Rui Ueyama2016-01-146-24/+21
| | | | llvm-svn: 257804
* [codeview] Dump CodeView inlinee lines subsectionReid Kleckner2016-01-141-0/+36
| | | | llvm-svn: 257790
* dsymutil: Provide better warnings when clang modules cannot be found.Adrian Prantl2016-01-142-2/+35
| | | | | | rdar://problem/22823264 llvm-svn: 257784
* Use std::map::insert instead of emplace for libstdc++ 4.7Reid Kleckner2016-01-141-1/+1
| | | | llvm-svn: 257780
* Print function names when they are referenced via TypeIndexReid Kleckner2016-01-141-1/+1
| | | | llvm-svn: 257778
* [readobj] Add functionality to dump relocations inside of binary blobsReid Kleckner2016-01-141-6/+38
| | | | llvm-svn: 257777
* [codeview] Print relocations against code and data offset fieldsReid Kleckner2016-01-142-76/+67
| | | | | | | | These fields are almost always zero. However, there are relocations against them, and we should print the relocation symbol with it as SYM+0xNN. llvm-svn: 257776
* Revert "Assert that we have all use/users in the getters."Michael Zolotukhin2016-01-141-12/+3
| | | | | | This reverts commit fdb838f3f8a8b6896bbbd5285555874eb3b748eb. llvm-svn: 257751
* [CodeView] Add support for dumping binary annotationsDavid Majnemer2016-01-141-1/+100
| | | | | | | | | | | | Binary annotations are encoded along the lines of UTF-8 and ECI but with a few minor differences. The algorithm specified in "ECMA-335 CLI Section II.3.2 - Blobs and Signatures" is used to compress binary annotations. Signed binary annotations are encoded like unsigned annotations except the sign bit is rotated left to reduce the number of bits needed to be encoded. llvm-svn: 257742
* llvm-profdata.cpp: Fix comment lines. [-Wdocumentation]NAKAMURA Takumi2016-01-141-3/+3
| | | | llvm-svn: 257726
* [codeview] Share more enums across the writer and the dumperReid Kleckner2016-01-135-686/+25
| | | | | | | | | Moves some .def files into include/DebugInfo/CodeView. Aslo remove a 'using namespace' directive from a header in readobj and update the uses of the endian helper types to compensate. llvm-svn: 257712
* Display detailed profile summary in llvm-profdata tool.Easwaran Raman2016-01-131-16/+136
| | | | | | | | | | | This adds a detailed profile summary in llvm-profdata. The summary is in the form of one or more triples of the form (P, N, M) which is interpreted as if we look at the Top-N counts in the profile, their sum accounts for P percentage of the sum of all counts in the program and the minimum count in the Top-N is M. Differential Revision: http://reviews.llvm.org/D16005 llvm-svn: 257680
* dsymutil: Only warn about missing clang modules once.Adrian Prantl2016-01-131-3/+1
| | | | | | rdar://problem/22269336 llvm-svn: 257664
* [readobj] Expand CodeView dumping functionalityReid Kleckner2016-01-137-146/+2608
| | | | | | | | | | | | | | | | This rewrites and expands the existing codeview dumping functionality in llvm-readobj using techniques similar to those in lib/Object. This defines a number of new records and enums useful for reading memory mapped codeview sections in COFF objects. The dumper is intended as a testing tool for LLVM as it grows more codeview output capabilities. Reviewers: majnemer Differential Revision: http://reviews.llvm.org/D16104 llvm-svn: 257658
* [llvm-readobj] Remove dead code. Add an assertion instead.Davide Italiano2016-01-131-2/+3
| | | | | | | | | | When we arrive at the end of the function, the validation of the object has been done already. In theory, so, we should never arrive here with something broken as the object isn't mutated. Practice sometimes proves theory to be wrong, so leave an assertion instead, as suggested by David Blaikie, to catch bugs. llvm-svn: 257570
* [llvm-objdump] Use report_error() and improve error coverage.Davide Italiano2016-01-131-4/+2
| | | | llvm-svn: 257561
* [CodeView] Improve the line table dumperDavid Majnemer2016-01-131-14/+28
| | | | | | | | This change has us print out fields we didn't previously understand. To improve readability, we now group column information with it's respective line. llvm-svn: 257552
* For llvm-objdump, add the option -private-header (without the trailing ’s’)Kevin Enderby2016-01-133-11/+46
| | | | | | | | | | | | | | | to only print the first private header. Which for Mach-O files only prints the Mach header and not the subsequent load commands. Which is used by scripts to match what the darwin otool(1) with the -h flag does without the -l flag. For non-Mach-O files it has the same functionality as -private-headers (with the trailing ’s’). rdar://24158331 llvm-svn: 257548
* COFF: Teach llvm-objdump how to dump DLL forwarder symbols.Rui Ueyama2016-01-121-1/+18
| | | | llvm-svn: 257539
* [WebAssembly] Add a EM_WEBASSEMBLY value, and several bits of code that use it.Dan Gohman2016-01-122-1/+19
| | | | | | | | | A request has been made to the official registry, but an official value is not yet available. This patch uses a temporary value in order to support development. When an official value is recieved, the value of EM_WEBASSEMBLY will be updated. llvm-svn: 257517
* Revert r257003Andrew Wilkins2016-01-125-102/+44
| | | | | | | | This revision breaks llvm-config if you set BUILD_SHARED_LIBS=on in a CMake build. Backing out until the fix is ready to land. llvm-svn: 257457
* lli: Fix warnings. [-Wsign-compare]NAKAMURA Takumi2016-01-121-2/+2
| | | | llvm-svn: 257430
* lli-child-target: Introduce a new dependency on RuntimeDyld.NAKAMURA Takumi2016-01-111-0/+1
| | | | llvm-svn: 257410
* Add a missing error handling to llvm-lto.Rafael Espindola2016-01-111-0/+1
| | | | llvm-svn: 257395
* XFAIL the LLI remote JIT tests on Win32.Lang Hames2016-01-111-3/+1
| | | | llvm-svn: 257391
* lli/ChildTarget now depends on OrcJIT. Add that component to the Makefile. Lang Hames2016-01-111-1/+1
| | | | llvm-svn: 257360
* [LLI] Remove dependence on RemoteTarget.cpp from ChildTarget's Makefile.Lang Hames2016-01-111-1/+1
| | | | | | RemoteTarget.cpp was removed in r257343. llvm-svn: 257351
* [LLI] Replace the LLI remote-JIT support with the new ORC remote-JIT components.Lang Hames2016-01-1115-1510/+319
| | | | | | | | The new ORC remote-JITing support provides a superset of the old code's functionality, so we can replace the old stuff. As a bonus, a couple of previously XFAILed tests have started passing. llvm-svn: 257343
* [Orc] Rename OrcTargetSupport to OrcArchitectureSupport to avoid confusion withLang Hames2016-01-111-1/+1
| | | | | | the upcoming remote-target support classes. llvm-svn: 257302
* [Orc] Enable user-supplied memory managers in the CompileOnDemand layer.Lang Hames2016-01-091-1/+3
| | | | | | | Previously the CompileOnDemand layer was hard-coded to use a new SectionMemoryManager for each function when it was called. llvm-svn: 257265
* [llvm-symbolizer] -print-source-context-lines option to print source code ↵Mike Aizatsky2016-01-091-1/+5
| | | | | | | | around the line. Differential Revision: http://reviews.llvm.org/D15909 llvm-svn: 257236
* [llvm-symbolizer] Print out non-address lines verbatim.Mike Aizatsky2016-01-071-13/+21
| | | | | | Differential Revision: http://reviews.llvm.org/D15876 llvm-svn: 257115
* tools/llvm-config: improve shared library supportAndrew Wilkins2016-01-075-44/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: r252532 added support for reporting the monolithic library when LLVM_BUILD_LLVM_DYLIB is used. This would only be done if the individual components were not found, and the dynamic library is found. This diff extends this as follows: - If LLVM_LINK_LLVM_DYLIB is set, then prefer the shared library, even if all component libraries exist. - Two flags, --link-shared and --link-static are introduced to provide explicit guidance. If --link-shared is passed and the shared library does not exist, an error results. Additionally, changed the expected shared library names from (e.g.) LLVM-3.8.0 to LLVM-3.8. The former exists only in an installation (and then only in CMake builds I think?), and not in the build tree; this breaks usage of llvm-config during builds, e.g. by llvm-go. Reviewers: DiamondLovesYou, beanz Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D15033 llvm-svn: 257003
* [llvm-objdump] Mark noreturn function as such.Davide Italiano2015-12-292-2/+4
| | | | | | Match attribute in the header to make MSVC happy. llvm-svn: 256560
* [llvm-objdump] Use stderr and not stdout for fatal errors.Davide Italiano2015-12-251-2/+2
| | | | llvm-svn: 256423
* llvm-dwarfdump: Add support for dumping .dSYM bundles.Adrian Prantl2015-12-231-2/+43
| | | | | | | | This replicates the logic of Darwin dwarfdump for manually opening up .dSYM bundles without introducing any new dependencies. <rdar://problem/20491670> llvm-svn: 256350
* [llvm-readobj] Use stderr and not stdout for error messages.Davide Italiano2015-12-231-2/+2
| | | | llvm-svn: 256347
* Disable use list order on the gold plugin.Rafael Espindola2015-12-221-1/+1
| | | | | | | | | It turns out that his is *really* slow. With this change the link of clang with plugin-opt=emit-llvm goes from 41 to 26 seconds. We can add an option to enable it again if needed. llvm-svn: 256302
* [MC, COFF] Support link /incremental conditionallyDavid Majnemer2015-12-213-7/+14
| | | | | | | | | | | | | | | | Today, we always take into account the possibility that object files produced by MC may be consumed by an incremental linker. This results in us initialing fields which vary with time (TimeDateStamp) which harms hermetic builds (e.g. verifying a self-host went well) and produces sub-optimal code because we cannot assume anything about the relative position of functions within a section (call sites can get redirected through incremental linker thunks). Let's provide an MCTargetOption which controls this behavior so that we can disable this functionality if we know a-priori that the build will not rely on /incremental. llvm-svn: 256203
* [llvm-objdump] Use appropriate helper. NFC.Davide Italiano2015-12-211-2/+1
| | | | llvm-svn: 256156
* [llvm-objdump] Move COFF function to where it belongs.Davide Italiano2015-12-203-50/+51
| | | | | | | Ideally much more stuff should be moved out of llvm-objdump.cpp, but that will happen later. llvm-svn: 256118
* [PGO] Improve Indexed Profile Reader efficiency Xinliang David Li2015-12-201-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With the support of value profiling added, the Indexed prof reader gets less efficient. The prof reader initialization used to be just reading the file header, but with VP support added, initialization needs to walk through all profile keys of ondisk hash table resulting in very poor locality and large memory increase (keys are stored together with the profile data in the mapped profile buffer). Even worse, when the reader is used by the compiler (not llvm-profdata too), the penalty becomes very high as compilation of each single module requires touching profile data buffer for the whole program. In this patch, the icall target values (MD5hash) are no longer eargerly converted back to name strings when the data is read into memory. New interface is added to to profile reader so that InstrProfSymtab can be lazily created for Indexed profile reader on-demand. Creating of the symtab is intended to be used by llvm-profdata tool for symbolic dumping of VP data. It can be used with compiler (for legacy out of tree uses) too but not recommended due to compile time and memory reasons mentioned above. Some other cleanups are also included: Function Addr to md5 map is now consolated into InstrProfSymtab. InstrProfStringtab is no longer used and eliminated. llvm-svn: 256114
* [llvm-objdump] Fail early if we can't parse the object header.Davide Italiano2015-12-191-4/+5
| | | | llvm-svn: 256108
* Assert that we have all use/users in the getters.Rafael Espindola2015-12-191-3/+12
| | | | | | | | | | | | | | An error that is pretty easy to make is to use the lazy bitcode reader and then do something like if (V.use_empty()) The problem is that uses in unmaterialized functions are not accounted for. This patch adds asserts that all uses are known. llvm-svn: 256105
OpenPOWER on IntegriCloud