summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-ifs/llvm-ifs.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [llvm] llvm-ifs: Support for handling empty IFS and merging weak+strong symbols.Puyan Lotfi2019-12-051-9/+9
| | | | | | | | | | The following changes enable llvm-ifs to handle the following merge conflicts: * Weak + Strong symbol merging for the same symbol * empty vs non-empty triple field * empty vs non-empty object file format Differential Revision: https://reviews.llvm.org/D70834
* [llvm-ifs][NFC] Adds TODO comment for dropping ObjectFileFormat on yaml format.Puyan Lotfi2019-10-241-0/+1
|
* [TextAPI] Arch&Platform to TargetCyndy Ishida2019-09-201-23/+4
| | | | | | | | | | | | | | | | | | | | Summary: This is a patch for updating TextAPI/Macho to read in targets as opposed to arch/platform. This is because in previous versions tbd files only supported a single platform but that is no longer the case, so, now its tracked by unique triples. This precedes a seperate patch that will add the TBD-v4 format Reviewers: ributzka, steven_wu, plotfi, compnerd, smeenai Reviewed By: ributzka Subscribers: mgorny, hiraditya, dexonsmith, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D67527 llvm-svn: 372396
* [yaml2obj/ObjectYAML] - Cleanup the error reporting API, add custom errors ↵George Rimar2019-09-131-6/+4
| | | | | | | | | | | | | | | | | | | | | handlers. This is a continuation of the YAML library error reporting refactoring/improvement and the idea by itself was mentioned in the following thread: https://reviews.llvm.org/D67182?id=218714#inline-603404 This performs a cleanup of all object emitters in the library. It allows using the custom one provided by the caller. One of the nice things is that each tool can now print its tool name, e.g: "yaml2obj: error: <text>" Also, the code became a bit simpler. Differential revision: https://reviews.llvm.org/D67445 llvm-svn: 371865
* [llvm-ifs] Improving detection of PlatformKind from triple for TBD generation.Puyan Lotfi2019-09-061-7/+31
| | | | | | | | It was pointed out that I had hard-coded PlatformKind. This is rectifying that. Differential Revision: https://reviews.llvm.org/D67255 llvm-svn: 371248
* [IFS][NFC] llvm-ifs: Fixing build bot build break: revert r370517 and r370510.Puyan Lotfi2019-08-301-5/+13
| | | | llvm-svn: 370522
* [IFS][NFC] llvm-ifs: Fixing build bot error due to commit conflicts.Puyan Lotfi2019-08-301-8/+0
| | | | | | | | r370510 and r370504 Again only on gcc. llvm-svn: 370517
* [IFS][NFC] llvm-ifs: Fixing build errors for bots using GCC.Puyan Lotfi2019-08-301-5/+5
| | | | | | | | | | | | | gcc produces the error: error: specialization of ‘template<class T, class Enable> struct llvm::yaml::ScalarTraits’ in different namespace For all specializations outside of llvm::yaml. So I added llvm::yaml to these specializations to fix the errors on the bots building with gcc (/usr/bin/c++). llvm-svn: 370510
* Fix compilation warnings. NFC.Michael Liao2019-08-301-1/+10
| | | | llvm-svn: 370504
* [llvm-ifs][IFS] llvm Interface Stubs merging + object file generation tool.Puyan Lotfi2019-08-301-0/+520
This tool merges interface stub files to produce a merged interface stub file or a stub library. Currently it for stub library generation it can produce an ELF .so stub file, or a TBD file (experimental). It will be used by the clang -emit-interface-stubs compilation pipeline to merge and assemble the per-CU stub files into a stub library. The new IFS format is as follows: --- !experimental-ifs-v1 IfsVersion: 1.0 Triple: <llvm triple> ObjectFileFormat: <ELF | TBD> Symbols: _ZSymbolName: { Type: <type>, etc... } ... Differential Revision: https://reviews.llvm.org/D66405 llvm-svn: 370499
OpenPOWER on IntegriCloud