summaryrefslogtreecommitdiffstats
path: root/llvm/test/Bitcode/thinlto-function-summary-originalnames.ll
Commit message (Collapse)AuthorAgeFilesLines
* [ThinLTO] Use valueid instead of bitcode offsets in combined index fileTeresa Johnson2016-04-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: With the removal of support for lazy parsing of combined index summary records (e.g. r267344), we no longer need to include the summary record bitcode offset in the VST entries for definitions. Change the combined index format to be similar to the per-module index format in using value ids to cross-reference from the summary record to the VST entry (rather than the summary record bitcode offset to cross-reference in the other direction). The visible changes are: 1) Add the value id to the combined summary records 2) Remove the summary offset from the combined VST records, which has the following effects: - No longer need the VST_CODE_COMBINED_GVDEFENTRY record, as all combined index VST entries now only contain the value id and corresponding GUID. - No longer have duplicate VST entries in the case where there are multiple definitions of a symbol (e.g. weak/linkonce), as they all have the same value id and GUID. An implication of #2 above is that in order to hook up an alias to the correct aliasee based on the value id of the aliasee recorded in the combined index alias record, we need to scan the entries in the index for that GUID to find the one from the same module (i.e. the case where there are multiple entries for the aliasee). But the reader no longer has to maintain a special map to hook up the alias/aliasee. Reviewers: joker.eph Subscribers: joker.eph, llvm-commits Differential Revision: http://reviews.llvm.org/D19481 llvm-svn: 267712
* Add a version field in the bitcode for the summaryMehdi Amini2016-04-241-0/+1
| | | | | | | Differential Revision: http://reviews.llvm.org/D19456 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 267318
* Relax test using CHECK-DAG instead of CHECK-NEXTMehdi Amini2016-04-241-6/+6
| | | | | | | | It seems we still have some ordering issue in the combined index emission, but I can't figure out why right now. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 267306
* Fix test stability (was sensitive to the path)Mehdi Amini2016-04-241-0/+7
| | | | | | | | | | | | | This is a fixup for r267304. The test was sensitive to the path in a subtle way: the index in memory is sorted by GUID, which are hashes that include the source filename for local globals. Teresa recently added a directive at the IR level, so we can specify it here to make the test independent of the path. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 267305
* Store and emit original name in combined indexMehdi Amini2016-04-231-0/+24
Summary: As discussed in D18298, some local globals can't be renamed/promoted (because they have a section, or because they are referenced from inline assembly). To be able to detect naming collision, we need to keep around the "GUID" using their original name without taking the linkage into account. Reviewers: tejohnson Subscribers: joker.eph, llvm-commits Differential Revision: http://reviews.llvm.org/D19454 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 267304
OpenPOWER on IntegriCloud