summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools
Commit message (Collapse)AuthorAgeFilesLines
* [Sparc] Add sparc to the list of XFAIL architecture. It seems that the ↵Venkatraman Govindaraju2014-01-251-1/+1
| | | | | | llvm-cov test is not supported in big-endian architectures. llvm-svn: 200101
* tools: support decoding ARM EHABI opcodes in readobjSaleem Abdulrasool2014-01-211-23/+146
| | | | | | | | | | | | | | Add support to llvm-readobj to decode the actual opcodes. The ARM EHABI opcodes are a variable length instruction set that describe the operations required for properly unwinding stack frames. The primary motivation for this change is to ease the creation of tests for the ARM EHABI object emission as well as the unwinding directive handling in the ARM IAS. Thanks to Logan Chien for an extra test case! llvm-svn: 199708
* llvm-objdump/COFF: Print ordinal base number.Rui Ueyama2014-01-171-0/+1
| | | | llvm-svn: 199518
* llvm-objdump/COFF: Print DLL name in the export table header.Rui Ueyama2014-01-161-0/+1
| | | | llvm-svn: 199422
* llmv-objdump/COFF: Print export table contents.Rui Ueyama2014-01-162-6/+13
| | | | | | | | | | | | | | | | This patch adds the capability to dump export table contents. An example output is this: Export Table: Ordinal RVA Name 5 0x2008 exportfn1 6 0x2010 exportfn2 By adding this feature to llvm-objdump, we will be able to use it to check export table contents in LLD's tests. Currently we are doing binary comparison in the tests, which is fragile and not readable to humans. llvm-svn: 199358
* llvm-readobj: address review comments for ARM EHABI printingSaleem Abdulrasool2014-01-091-27/+27
| | | | | | | | Rename bytecode to opcodes to make it more clear. Change an impossible case to llvm_unreachable instead. Avoid allocation of a buffer by modifying the PrintOpcodes iteration. llvm-svn: 198848
* tests: disable ARM unwinding tests if ARM is unavailableSaleem Abdulrasool2014-01-082-0/+4
| | | | | | | | | | Appease the buildbots for targets which do not build the ARM support by moving the ARM specific test into a subdirectory and use the lit configuration to disable them appropriately. Thanks to chapuni and thakis for explaining how to do this! llvm-svn: 198736
* llvm-readobj: add support for ARM EHABI unwind infoSaleem Abdulrasool2014-01-081-0/+203
| | | | | | | | | | | | | | | This adds some preliminary support for decoding ARM EHABI unwinding information. The major functionality that remains from complete support is bytecode translation. Each Unwind Index Table is printed out as a separate entity along with its section index, name, offset, and entries. Each entry lists the function address, and if possible, the name, of the function to which it corresponds. The encoding model, personality routine or index, and byte code is also listed. llvm-svn: 198734
* [Mips] Add support for DT_MIPS_RLD_MAP and DT_MIPS_PLTGOT dynamicSimon Atanasyan2014-01-053-1/+41
| | | | | | section tags to the llvm-readobj. llvm-svn: 198561
* [Mips] Rename the test case input file. No functional changes.Simon Atanasyan2014-01-053-2/+3
| | | | llvm-svn: 198560
* Teach the llvm-readobj COFF dumper to dump debug line tables from object filesTimur Iskhodzhanov2013-12-195-0/+282
| | | | | | Reviewed at http://llvm-reviews.chandlerc.com/D2425 llvm-svn: 197674
* Remove the COFF files with Z7 debug info from the repoTimur Iskhodzhanov2013-12-194-0/+0
| | | | | | | Rationale: going to land D2425 shortly. I'll re-land these COFF files along with D2425 to simplify the SVN history llvm-svn: 197673
* llvm-cov: Added -f option for function summaries.Yuchen Wu2013-12-193-0/+107
| | | | | | | | | | | Similar to the file summaries, the function summaries output line, branching and call statistics. The file summaries have been moved outside the initial loop so that all of the function summaries can be outputted before file summaries. Also updated test cases. llvm-svn: 197633
* llvm-cov: Print coverage summary to STDOUT.Yuchen Wu2013-12-183-2/+23
| | | | | | | | | | | | File summaries will now be optionally outputted which will give line, branching and call coverage info. Unfortunately, clang's current instrumentation does not give enough information to deduce function calls, something that gcc is able to do. Thus, no calls are always outputted to be consistent with gcov output. Also updated tests. llvm-svn: 197606
* llvm-cov: Added -c option for branch counts.Yuchen Wu2013-12-183-0/+178
| | | | | | | | | This will cause llvm-cov to output branch counts instead of branch probabilities. -b must be enabled. Also updated tests. llvm-svn: 197594
* Add some simple COFF files with Z7 debug infoTimur Iskhodzhanov2013-12-174-0/+0
| | | | | | These will later be used as tests for the dumper part of http://llvm-reviews.chandlerc.com/D2232 llvm-svn: 197499
* llvm-cov: Added -u option for unconditional branch info.Yuchen Wu2013-12-163-0/+178
| | | | | | | | | Outputs branch information for unconditional branches in addition to conditional branches. -b option must be enabled. Also updated tests. llvm-svn: 197432
* llvm-cov: Added -b option for branch probabilities.Yuchen Wu2013-12-133-0/+150
| | | | | | | | | | | This option tells llvm-cov to print out branch probabilities when a basic block contains multiple branches. It also prints out some function summary info including the number of times the function enters, the percent of time it returns, and how many blocks were executed. Also updated tests. llvm-svn: 197198
* llvm-cov: Added -a option for block data.Yuchen Wu2013-12-105-2/+127
| | | | | | | | | | | | | | | Similar to gcov, llvm-cov will now print out the block count at the end of each block. Multiple blocks can end on the same line. One computational difference is by using -a, llvm-cov will no longer simply add the block counts together to form a line count. Instead, it will take the maximum of the block counts on that line. This has a similar effect to what gcov does, but generates more correct counts in certain scenarios. Also updated tests. llvm-svn: 196856
* llvm-cov: Added test.h header to tests.Yuchen Wu2013-12-077-80/+86
| | | | llvm-svn: 196632
* llvm-cov: Regenerated gcov files with r195513 changes.Yuchen Wu2013-12-062-0/+0
| | | | llvm-svn: 196609
* llvm-cov: Changed extension from .llcov to .gcov.Yuchen Wu2013-12-052-2/+1
| | | | llvm-svn: 196530
* Un-revert r196358: "llvm-cov: Added support for function checksums."Daniel Jasper2013-12-047-1/+3
| | | | | | And add the proper fix. llvm-svn: 196367
* Revert r196358: "llvm-cov: Added support for function checksums."Daniel Jasper2013-12-047-3/+1
| | | | | | | This currently breaks clang/test/CodeGen/code-coverage.c. The root cause is that the newly introduced access to Funcs[j] is out of bounds. llvm-svn: 196365
* llvm-cov: Added support for function checksums.Yuchen Wu2013-12-047-1/+3
| | | | | | | The function checksums are hashed from the concatenation of the function name and line number. llvm-svn: 196358
* llvm-cov: Another fix to llvm-cov test.Yuchen Wu2013-12-031-1/+1
| | | | | | | Copy all test files to temporary directory, not just test.* files. Tests didn't fail because the missing files occurred in XFAILS. llvm-svn: 196305
* Further fix to llvm-cov test.Daniel Jasper2013-12-031-1/+5
| | | | | | | It turns out that in some build systems, tests are executed in a non-writable directory. Hopefully, this finally fixes the issue. llvm-svn: 196256
* Fix llvm-cov test as suggested in r196228's post commit review.Daniel Jasper2013-12-031-0/+2
| | | | llvm-svn: 196255
* Copy input files to test directory.Daniel Jasper2013-12-031-4/+1
| | | | | | | | | | | With r196184, llvm-cov creates a new file right next to the input file. However, the Inputs-directory can't simply be assumed to be writable under all build systems. Also, this prevents a new source file from showing up in the source tree if the test aborts before the call to "rm". llvm-svn: 196228
* llvm-cov.test: Resurrect part of r194694 for win32 hosts.NAKAMURA Takumi2013-12-031-1/+1
| | | | llvm-svn: 196207
* llvm-cov: Removed output to STDOUT/specified file.Yuchen Wu2013-12-031-2/+3
| | | | | | | | | | | | Instead of asking the user to specify a single file to output coverage info and defaulting to STDOUT, llvm-cov now creates files for each source file with a naming system of: <source filename> + ".llcov". This is what gcov does and although it can clutter the working directory with numerous coverage files, it will be easier to hook the llvm-cov output to tools which operate on this assumption (such as lcov). llvm-svn: 196184
* mips: XFAIL llvm-cov testPetar Jovanovic2013-11-291-1/+1
| | | | | | | XFAIL llvm-cov.test for MIPS until big-endian issues are fixed for llvm-cov. The test does pass on MIPS little-endian. llvm-svn: 195966
* llvm-cov: Added file checksum to gcno and gcda files.Yuchen Wu2013-11-205-0/+2
| | | | | | | | | | | | Instead of permanently outputting "MVLL" as the file checksum, clang will create gcno and gcda checksums by hashing the destination block numbers of every arc. This allows for llvm-cov to check if the two gcov files are synchronized. Regenerated the test files so they contain the checksum. Also added negative test to ensure error when the checksums don't match. llvm-svn: 195191
* Path: Recognize COFF import library file magic.Rui Ueyama2013-11-152-0/+17
| | | | | | | | | | | | Summary: Make identify_magic to recognize COFF import file. Reviewers: Bigcheese CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2165 llvm-svn: 194852
* Recognize 0x0000 as a COFF file magic.Rui Ueyama2013-11-142-0/+16
| | | | | | | | | | | | | | | Summary: Some machine-type-neutral object files containing only undefined symbols actually do exist in the Windows standard library. Need to recognize them as COFF files. Reviewers: Bigcheese CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2164 llvm-svn: 194734
* llvm-cov.test: Remove XFAIL:arm. Seems this is passing since my tweaks.NAKAMURA Takumi2013-11-141-1/+1
| | | | llvm-svn: 194712
* llvm-cov.test: Tweak win32 hosts not confused by \r\n in llvm-cov's stdout.NAKAMURA Takumi2013-11-141-1/+1
| | | | | | "diff -b" -- Ignore space changes. llvm-svn: 194694
* Suppress llvm-cov.test on Win32, with REQUIRES: shellNAKAMURA Takumi2013-11-141-0/+2
| | | | | | "cd" is unsupported in lit internal runner. llvm-svn: 194652
* llvm-cov: Removed StringMap holding GCOVLines.Yuchen Wu2013-11-141-0/+0
| | | | | | | | | | | | | | | | | According to the hazy gcov documentation, it appeared to be technically possible for lines within a block to belong to different source files. However, upon further investigation, gcov does not actually support multiple source files for a single block. This change removes a level of separation between blocks and lines by replacing the StringMap of GCOVLines with a SmallVector of ints representing line numbers. This also means that the GCOVLines class is no longer needed. This paves the way for supporting the "-a" option, which will output block information. llvm-svn: 194637
* llvm-cov: Replaced asserts with proper error handling.Yuchen Wu2013-11-141-1/+5
| | | | | | | | | | | | | | Unified the interface for read functions. They all return a boolean indicating if the read from file succeeded. Functions that previously returned the read value now store it into a variable that is passed in by reference instead. Callers will need to check the return value to detect if an error occurred. Also added a new test which ensures that no assertions occur when file contains invalid data. llvm-cov should return with error code 1 upon failure. llvm-svn: 194635
* llvm-cov: Changed XFAIL targets to be more generic.Yuchen Wu2013-11-131-1/+1
| | | | llvm-svn: 194622
* Added basic unit test for llvm-cov.Yuchen Wu2013-11-137-0/+171
| | | | | | | | | | This test compares the output of llvm-cov against a coverage file generated by gcov. Currently, llvm-cov does not work on certain platforms (namely big-endian architectures such as PowerPC, among others). These platforms are marked as XFAIL for now, but will be fixed later. llvm-svn: 194616
* Revert "Added basic unit test for llvm-cov."Yuchen Wu2013-11-127-169/+0
| | | | | | | | | | | This reverts commit r194451. Not sure why the tests are failing on the buildbot. They run fine on my local machine. Could it possibly be because of the endianness of the architectures? The GCNO and GCDA files are little-endian encoded, and llvm-cov expects it to remain that way. Is this a safe assumption? llvm-svn: 194454
* llvm-cov: Added call to update run/program counts.Yuchen Wu2013-11-122-0/+0
| | | | | | Also updated test files that were generated from this change. llvm-svn: 194453
* Added basic unit test for llvm-cov.Yuchen Wu2013-11-127-0/+169
| | | | | | | | | This test compares the output of llvm-cov against a coverage file generated by gcov. Since the source file must be in the current directory when reading GCNO files, the test will first cd into the Inputs directory. llvm-svn: 194451
* Add support for DT_VERxxx and DT_MIPS_xxx .dynamic section entries to theSimon Atanasyan2013-11-113-0/+40
| | | | | | | | | llvm-readobj. The patch reviewed by Michael Spencer. http://llvm-reviews.chandlerc.com/D2113 llvm-svn: 194421
* Revert "Added basic unit test for llvm-cov."Yuchen Wu2013-11-057-169/+0
| | | | | | This reverts commit 9cacd131c22b888303cb88e9a3235b2d7b2f19a1. llvm-svn: 194039
* Added basic unit test for llvm-cov.Yuchen Wu2013-11-057-0/+169
| | | | | | | This test compares the output of llvm-cov against a coverage file generated by gcov. llvm-svn: 194038
* [Mips] Teach llvm-readobj to print MIPS-specific ELF program headers.Simon Atanasyan2013-10-071-0/+30
| | | | | | | The patch reviewed by Michael Spencer. http://llvm-reviews.chandlerc.com/D1846 llvm-svn: 192093
* Resurrect lit.local.cfg to un-break hexagon buildbot.Rui Ueyama2013-09-271-0/+3
| | | | llvm-svn: 191565
OpenPOWER on IntegriCloud