summaryrefslogtreecommitdiffstats
path: root/llvm/tools
Commit message (Collapse)AuthorAgeFilesLines
* lto.h: Use lto_bool_t instead of int to restore the ABIReid Kleckner2013-10-241-9/+9
| | | | | | | | | | | | This reverts commit r193255 and instead creates an lto_bool_t typedef that points to bool, _Bool, or unsigned char depending on what is available. Only recent versions of MSVC provide a stdbool.h header. Reviewers: rafael.espindola Differential Revision: http://llvm-reviews.chandlerc.com/D2019 llvm-svn: 193377
* llvm/tools/llvm-c-test should be built also on msvc.NAKAMURA Takumi2013-10-231-5/+1
| | | | llvm-svn: 193257
* llvm-c/lto.h: Avoid use of bool.NAKAMURA Takumi2013-10-231-9/+9
| | | | llvm-svn: 193255
* llvm-c-test: Make them C89-compliant.NAKAMURA Takumi2013-10-235-15/+29
| | | | llvm-svn: 193254
* Add llvm-c-test tool for testing llvm-cAnders Waldenborg2013-10-2313-1/+689
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides rudimentary testing of the llvm-c api. The following commands are implemented: * --module-dump Read bytecode from stdin - print ir * --module-list-functions Read bytecode from stdin - list summary of functions * --module-list-globals Read bytecode from stdin - list summary of globals * --targets-list List available targets * --object-list-sections Read object file from stdin - list sections * --object-list-symbols Read object file from stdin - list symbols (like nm) * --disassemble Read lines of triple, hex ascii machine code from stdin - print disassembly * --calc Read lines of name, rpn from stdin - print generated module ir Differential-Revision: http://llvm-reviews.chandlerc.com/D1776 llvm-svn: 193233
* Change llvm-cov output formatting to be more similar to gcov.Bob Wilson2013-10-221-1/+1
| | | | | | | | | | | | - Replaced tabs with proper padding - print() takes two arguments, which are the GCNO and GCDA filenames - Files are listed at the top of output, appended by line 0 - Stripped strings of trailing \0s - Removed last two lines of whitespace in output Patch by Yuchen Wu! llvm-svn: 193148
* Move the printing of llvm-cov information out from collectLineCounts().Bob Wilson2013-10-221-0/+1
| | | | | | | | | | collectLineCounts() should only organize the output data. This is done in anticipation of subsequent changes which will pass in GCNO and GCDA filenames into the print function where it is printed similar to the gcov output. Patch by Yuchen Wu! llvm-svn: 193134
* Check for errors when calling lto_codegen_add_module in the gold plugin.Rafael Espindola2013-10-181-2/+7
| | | | | | Thanks to Milan Lenčo for noticing it. llvm-svn: 192996
* [pr17595] Fix a use after free.Rafael Espindola2013-10-161-6/+11
| | | | | | | Destroying the codegen also frees the path of the created object. Copy the path to a std::string. llvm-svn: 192787
* llvm-symbolizer: don't always run demangler on global object namesAlexey Samsonov2013-10-162-1/+8
| | | | llvm-svn: 192781
* Adding support for deregistering EH frames with MCJIT.Andrew Kaylor2013-10-161-0/+1
| | | | | | Patch by Yaron Keren llvm-svn: 192753
* vs2013 msbuild integration: add missing .target files, fix typo in CMakeListsHans Wennborg2013-10-143-1/+25
| | | | | | | | This should fix PR17568. Patch by Josh Samuel! llvm-svn: 192610
* yaml2coff/elf: Touchup for compatibility.Will Dietz2013-10-122-8/+10
| | | | | | | * std::string::append(int, int) can be ambiguous. * std::vector<>::data() is a C++11 feature, use ArrayRef abstraction. llvm-svn: 192542
* Add missing #include's to cctype when using isdigit/alpha/etc.Will Dietz2013-10-121-0/+1
| | | | llvm-svn: 192519
* Fixing problems in lli's RemoteMemoryManager.Andrew Kaylor2013-10-112-7/+7
| | | | | | | | This fixes a problem from a previous check-in where a return value was omitted. Previously the remote/stubs-remote.ll and remote/stubs-sm-pic.ll tests were reporting passes, but they should have been failing. Those tests attempt to link against an external symbol and remote symbol resolution is not supported. The old RemoteMemoryManager implementation resulted in local symbols being used for resolution and the child process crashed but the test didn't notice. With this check-in remote symbol resolution fails, and so the test (correctly) fails. llvm-svn: 192514
* Adding multiple object support to MCJIT EH frame handlingAndrew Kaylor2013-10-112-26/+9
| | | | llvm-svn: 192504
* Debug Info: In DIBuilder, the context field of subprogram is updated to useManman Ren2013-10-101-1/+1
| | | | | | | | DIScopeRef. A paired commit at clang is required due to changes to DIBuilder. llvm-svn: 192378
* Provide msbuild integration for vs2013.Hans Wennborg2013-10-104-1/+49
| | | | | | Patch by Josh Samuel! llvm-svn: 192371
* Fix msbuild integration install script.Hans Wennborg2013-10-101-2/+5
| | | | | | | We previously failed to check whether the SUCCESS variable was set, and would thus always exit with a failure if vs2012 didn't exist. llvm-svn: 192370
* Test commit. Remove whitespace from otherwise empty lines.Greg Bedwell2013-10-091-2/+2
| | | | llvm-svn: 192284
* Removing unintended code block from lliAndrew Kaylor2013-10-081-9/+0
| | | | llvm-svn: 192205
* Only modify lto.exports.def when contents have changed.Rafael Espindola2013-10-081-3/+9
| | | | | | Patch by Greg Bedwell. llvm-svn: 192182
* Revert r191088, corresponding to r191823 to re-enable llvm-lto on cygming.NAKAMURA Takumi2013-10-071-2/+0
| | | | | | r191088 is "llvm/tools/Makefile: Suppress building llvm-lto on cygming, for now, probably due to LTO.dll." llvm-svn: 192104
* [Mips] Teach llvm-readobj to print MIPS-specific ELF program headers.Simon Atanasyan2013-10-071-21/+38
| | | | | | | The patch reviewed by Michael Spencer. http://llvm-reviews.chandlerc.com/D1846 llvm-svn: 192093
* lli: Plug leaks in the remote target external implementation.Benjamin Kramer2013-10-056-1/+16
| | | | llvm-svn: 192031
* Fix object file writing in llvm-lto on Windows.Rafael Espindola2013-10-041-1/+2
| | | | | | | | We were writing in text mode. Patch by Greg Bedwell. llvm-svn: 191985
* Attempting to fix lli build errorAndrew Kaylor2013-10-041-3/+3
| | | | llvm-svn: 191979
* Fixing container/pointer bug in remote-lli found by ASanAndrew Kaylor2013-10-042-28/+29
| | | | llvm-svn: 191976
* lli: Check pipe creation for errors.Benjamin Kramer2013-10-041-2/+3
| | | | | | | This is unlikely to ever fail, but ubuntu GCC warns when the return value is unused. llvm-svn: 191973
* Add lto_codegen_add_dso_symbol to the export list.Rafael Espindola2013-10-041-0/+1
| | | | llvm-svn: 191970
* Adding support and tests for multiple module handling in lliAndrew Kaylor2013-10-045-227/+304
| | | | llvm-svn: 191938
* Optimize linkonce_odr unnamed_addr functions during LTO.Rafael Espindola2013-10-033-1/+18
| | | | | | | | | | | Generalize the API so we can distinguish symbols that are needed just for a DSO symbol table from those that are used from some native .o. The symbols that are only wanted for the dso symbol table can be dropped if llvm can prove every other dso has a copy (linkonce_odr) and the address is not important (unnamed_addr). llvm-svn: 191922
* Dispose the codegen even when just writing the bitcode file.Rafael Espindola2013-10-031-1/+3
| | | | | | | This makes it possible to add timers to the code generator and still use them with -plugin-opt=emit-llvm. llvm-svn: 191866
* Fixing lli-child-target buildAndrew Kaylor2013-10-022-0/+24
| | | | llvm-svn: 191861
* Add newline at eof.Benjamin Kramer2013-10-021-1/+1
| | | | llvm-svn: 191857
* Pass the resolved lli-child-target executable name to execv, rather thanRichard Smith2013-10-021-1/+1
| | | | | | searching $PATH for it then blindly executing it from $PWD anyway. llvm-svn: 191856
* Fix build problems with remote lli implementationAndrew Kaylor2013-10-021-0/+21
| | | | llvm-svn: 191848
* Clean up lli execution codeAndrew Kaylor2013-10-021-39/+41
| | | | llvm-svn: 191845
* Fixing compile warningsAndrew Kaylor2013-10-021-2/+2
| | | | llvm-svn: 191844
* Adding out-of-process execution support to lli.Andrew Kaylor2013-10-0215-16/+987
| | | | | | | | At this time only Unix-based systems are supported. Windows has stubs and should re-route to the simulated mode. Thanks to Sriram Murali for contributions to this patch. llvm-svn: 191843
* Remove the very substantial, largely unmaintained legacy PGOChandler Carruth2013-10-027-337/+2
| | | | | | | | | | | | | | | | | | | | infrastructure. This was essentially work toward PGO based on a design that had several flaws, partially dating from a time when LLVM had a different architecture, and with an effort to modernize it abandoned without being completed. Since then, it has bitrotted for several years further. The result is nearly unusable, and isn't helping any of the modern PGO efforts. Instead, it is getting in the way, adding confusion about PGO in LLVM and distracting everyone with maintenance on essentially dead code. Removing it paves the way for modern efforts around PGO. Among other effects, this removes the last of the runtime libraries from LLVM. Those are being developed in the separate 'compiler-rt' project now, with somewhat different licensing specifically more approriate for runtimes. llvm-svn: 191835
* Tidy up this line of the Makefile before I start hacking on it.Chandler Carruth2013-10-021-9/+5
| | | | | | | I really should sort it or do something more sustainable, but I couldn't work up the energy to do it... Sorry. llvm-svn: 191832
* Fix option parsing in the gold plugin.Rafael Espindola2013-10-021-0/+15
| | | | | | | | | This was broken when options were moved up in r191680. No test because this is specific LLVMgold.so/libLTO.so. Patch by Tom Roeder! llvm-svn: 191829
* Add a -exported-symbol option to llvm-lto.Rafael Espindola2013-10-021-0/+10
| | | | | | Patch by Tom Roeder. llvm-svn: 191825
* Enable building LTO on WIN32.Rafael Espindola2013-10-022-4/+18
| | | | | | | | | Enable building the LTO library (.lib and.dll) and llvm-lto.exe on Windows with MSVC and Mingw as well as re-enabling the associated test. Patch by Greg Bedwell! llvm-svn: 191823
* This threads SectionName through the allocateCodeSection/allocateDataSection ↵Filip Pizlo2013-10-023-7/+13
| | | | | | | | | | | | | | | | | | APIs, both in C++ and C land. It's useful for the memory managers that are allocating a section to know what the name of the section is. At a minimum, this is useful for low-level debugging - it's customary for JITs to be able to tell you what memory they allocated, and as part of any such dump, they should be able to tell you some meta-data about what each allocation is for. This allows clients that supply their own memory managers to do this. Additionally, we also envision the SectionName being useful for passing meta-data from within LLVM to an LLVM client. This changes both the C and C++ APIs, and all of the clients of those APIs within LLVM. I'm assuming that it's safe to change the C++ API because that API is allowed to change. I'm assuming that it's safe to change the C API because we haven't shipped the API in a release yet (LLVM 3.3 doesn't include the MCJIT memory management C API). llvm-svn: 191804
* Remove several unused variables.Rafael Espindola2013-10-018-17/+0
| | | | | | Patch by Alp Toker. llvm-svn: 191757
* Adding multiple module support for MCJIT.Andrew Kaylor2013-10-011-16/+14
| | | | | | | | Tests to follow. PIC with small code model and EH frame handling will not work with multiple modules. There are also some rough edges to be smoothed out for remote target support. llvm-svn: 191722
* Move command line options to the users of libLTO. Fixes --enable-shared build.Rafael Espindola2013-09-302-16/+108
| | | | | | Patch by Richard Sandiford. llvm-svn: 191680
* Revert "Enable building LTO on WIN32."Rafael Espindola2013-09-302-15/+3
| | | | | | | | | | This reverts commit r191670. It was causing build failures on the msvc bots: http://bb.pgr.jp/builders/ninja-clang-i686-msc17-R/builds/5166/steps/compile/logs/stdio llvm-svn: 191679
OpenPOWER on IntegriCloud