summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Archive
Commit message (Collapse)AuthorAgeFilesLines
* more C++ daintinessDuraid Madina2005-12-261-0/+1
| | | | llvm-svn: 25023
* Fix a problem with llvm-ranlib that (on some platforms) caused the archiveReid Spencer2005-11-302-36/+72
| | | | | | | | | | file to become corrupted due to interactions between mmap'd memory segments and file descriptors closing. The problem is completely avoiding by using a third temporary file. Patch provided by Evan Jones llvm-svn: 24527
* DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE nowChris Lattner2005-10-241-1/+0
| | | | llvm-svn: 23940
* speed up Archive::isBytecodeArchive in the case when the archive doesn't haveChris Lattner2005-09-231-18/+24
| | | | | | | an llvm-ranlib symtab. This speeds up gccld -native on an almost empty .o file from 1.63s to 0.18s. llvm-svn: 23406
* Final Changes For PR495:Reid Spencer2005-07-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | This chagne just renames some sys::Path methods to ensure they are not misused. The Path documentation now divides methods into two dimensions: Path/Disk and accessor/mutator. Path accessors and mutators only operate on the Path object itself without making any disk accesses. Disk accessors and mutators will also access or modify the file system. Because of the potentially destructive nature of disk mutators, it was decided that all such methods should end in the work "Disk" to ensure the user recognizes that the change will occur on the file system. This patch makes that change. The method name changes are: makeReadable -> makeReadableOnDisk makeWriteable -> makeWriteableOnDisk makeExecutable -> makeExecutableOnDisk setStatusInfo -> setStatusInfoOnDisk createDirectory -> createDirectoryOnDisk createFile -> createFileOnDisk createTemporaryFile -> createTemporaryFileOnDisk destroy -> eraseFromDisk rename -> renamePathOnDisk These changes pass the Linux Deja Gnu tests. llvm-svn: 22354
* For PR495:Reid Spencer2005-07-072-4/+4
| | | | | | | | | | | | | | | | | | | | | Get rid of the difference between file paths and directory paths. The Path class now simply stores a path that can refer to either a file or a directory. This required various changes in the implementation and interface of the class with the corresponding impact to its users. Doxygen comments were also updated to reflect these changes. Interface changes are: appendDirectory -> appendComponent appendFile -> appendComponent elideDirectory -> eraseComponent elideFile -> eraseComponent elideSuffix -> eraseSuffix renameFile -> rename setDirectory -> set setFile -> set Changes pass Dejagnu and llvm-test/SingleSource tests. llvm-svn: 22349
* Remove vim settings from source code; people should use llvm/utils/vim/vimrcMisha Brukman2005-05-051-1/+0
| | | | llvm-svn: 21704
* Remove trailing whitespaceMisha Brukman2005-04-214-93/+93
| | | | llvm-svn: 21416
* Use the actual uid/gid for defaulting the fields in the archive.Reid Spencer2005-04-211-2/+3
| | | | llvm-svn: 21405
* Eliminate calls to system dependent function getuid by usingReid Spencer2005-04-211-2/+3
| | | | | | | the newly implemented sys::Process::GetCurrentUserId function. Replace similarly for getgid. llvm-svn: 21402
* Initialize fields mode, uid, and gid.Misha Brukman2005-04-201-0/+6
| | | | | | Patch by Markus Oberhumer. Thanks! llvm-svn: 21369
* Align comments together for consistencyMisha Brukman2005-04-201-1/+1
| | | | llvm-svn: 21368
* Implement an isBytecodeArchive method to determine if an archive containsReid Spencer2005-02-261-0/+29
| | | | | | | bytecode file members or not. Patch Contributed By Adam Treat llvm-svn: 20338
* Properly close mapped files.Jeff Cohen2005-01-282-3/+3
| | | | llvm-svn: 19863
* Use binary mode for reading/writing bytecode filesJeff Cohen2005-01-221-2/+4
| | | | llvm-svn: 19751
* Remove potential platform portability issue with size of "int".Reid Spencer2004-12-291-1/+3
| | | | llvm-svn: 19172
* Fix problems uncovered by VC++ (first time compiled by VC++)Jeff Cohen2004-12-202-2/+1
| | | | llvm-svn: 19056
* For PR351:Reid Spencer2004-12-151-1/+0
| | | | | | | * Remove #inclusion of FileUtilities.h, not needed any more. * Convert getUniqueFilename -> sys::Pat::makeUnique() llvm-svn: 18948
* Make sure the Archive gets deleted if there's an error.Reid Spencer2004-12-131-4/+4
| | | | llvm-svn: 18869
* Implement error handling in OpenAndLoad* functions so the Linker can handle it.Reid Spencer2004-12-131-13/+22
| | | | llvm-svn: 18853
* Path::get -> Path::toStringReid Spencer2004-12-113-22/+24
| | | | llvm-svn: 18785
* Compute the firstFileOffset correctly after reading the LLVM symbol table.Reid Spencer2004-11-281-2/+3
| | | | llvm-svn: 18300
* Adjust to Compressor interface changeReid Spencer2004-11-251-2/+1
| | | | llvm-svn: 18249
* Allow reading of member names that begin with an _ character.Reid Spencer2004-11-231-1/+2
| | | | llvm-svn: 18179
* Distinguish between BSD4.4 and SVR4 symbol tablesReid Spencer2004-11-204-40/+66
| | | | llvm-svn: 18044
* Correct the computation of when to add the padding. It is not based on theReid Spencer2004-11-192-9/+9
| | | | | | | | member's size. It is based on the oddness/evenness of the file pointer. This fixes a bug with llvm-ar not being able to read archives produced by llvm-ranlib when there are members with odd long file name lengths. llvm-svn: 17997
* Don't save an iterator, just use post-increment.Reid Spencer2004-11-191-4/+2
| | | | llvm-svn: 17981
* Make findModulesDefiningSymbols modify its symbols argument so we can \Reid Spencer2004-11-191-3/+14
| | | | | | eliminate symbols defined by the archive efficiently llvm-svn: 17976
* Fix some things for Mac OSX archives:Reid Spencer2004-11-171-5/+14
| | | | | | | | | | | * ensure trailing spaces are eliminated so they don't factor into the length of a member's name. * make sure all the bytes of a name are written even if the name ends in multiple null characters (bug in OSX ar) * make sure we provide the full member name when searching for symbols so the module name is not accidentally duplicated. llvm-svn: 17918
* Make sure we parse bytecode with a module identifier that reflects the fullReid Spencer2004-11-171-3/+9
| | | | | | name of the module: "Archive.a(object.o)" llvm-svn: 17917
* Adjust long file name writing to match BSD 4.4 and Mac OSX style archives.Reid Spencer2004-11-171-10/+14
| | | | llvm-svn: 17910
* Despite documentation to the contrary, Mac OSX and BSD 4.4 archive formatsReid Spencer2004-11-171-2/+3
| | | | | | | *do* include the length of the long file in the length of the member and they are *not* null terminated. llvm-svn: 17909
* Fix typeo in comment.Reid Spencer2004-11-161-1/+1
| | | | llvm-svn: 17892
* Per code review:\Reid Spencer2004-11-161-44/+46
| | | | | | | | | | | | * Make the numVbrBytes function more efficient and better documented \ * Fix a bug in name truncation \ * Add comments before functions \ * Get rid of functions that are now inlined into the header \ * Do not have Archive doing symbol table printing \ * Put assert comments into the assert so they print out \ * Make sure foreign symbol tables are written llvm-svn: 17884
* Per code review:\Reid Spencer2004-11-161-15/+20
| | | | | | | * Make sure we write out the foreign symbol table if we read one \ * Make the padding calculation more efficiently and avoid Solaris warnings llvm-svn: 17883
* Per code review:\Reid Spencer2004-11-161-1/+2
| | | | | | * Make sure all members are initialized upon construction llvm-svn: 17882
* * Make sure the string table gets read even if there isn't a foreignReid Spencer2004-11-151-8/+20
| | | | | | | | symbol table. * Make sure we update the file pointer for each member when rebuilding the symbol table. llvm-svn: 17812
* Changes necessary to enable linking of archives without LLVM symbol tables.Reid Spencer2004-11-152-14/+68
| | | | llvm-svn: 17811
* Completely rewritten to allow reading of archives and symbol table lookup in ↵Reid Spencer2004-11-141-160/+369
| | | | | | a more efficient manner. llvm-svn: 17767
* Implementation declarations for ArchiveReid Spencer2004-11-141-108/+24
| | | | llvm-svn: 17766
* First working versionReid Spencer2004-11-142-224/+492
| | | | llvm-svn: 17765
* Moved to lib/Bytecode/Archive in preparation for re-write.Reid Spencer2004-11-141-0/+194
| | | | llvm-svn: 17742
* Makefile for the LLVMArchive library.Reid Spencer2004-11-061-0/+18
| | | | llvm-svn: 17500
* First kinda/sorta working version of the Archive library. Reading is notReid Spencer2004-11-063-0/+466
yet supported but writing works. Way too early to review this. More to come llvm-svn: 17499
OpenPOWER on IntegriCloud