summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Archive
Commit message (Collapse)AuthorAgeFilesLines
* For PR797:Reid Spencer2006-08-251-1/+0
| | | | | | | | | | | | | | | Final commit for this bug. This removes the last EH holdouts in LLVM and turns off exception support by using the -fno-exceptions option. This leads to the following reduction in library and executable sizes: DEBUG BUILD RELEASE BUILD before after delta before after delta lib 162,328K 157,616K 4,712 17,864K 16,416K 1,448K bin 571,444K 557,156K 14,288 63,296K 56,996K 6,300K Debug Improvement: 19,000K (2.59%) Release Improvement: 7,748K (9.55%) llvm-svn: 29882
* For PR797:Reid Spencer2006-08-252-6/+9
| | | | | | | Remove exception throwing/handling from lib/Bytecode, and adjust its users to compensate for changes in the interface. llvm-svn: 29875
* For PR797:Reid Spencer2006-08-243-57/+65
| | | | | | | Remove exception handling from the bytecode archiver and adjust the llvm-ar tool to accommodate the new interfaces. llvm-svn: 29866
* For PR797:Reid Spencer2006-08-231-2/+4
| | | | | | | Eliminate exception throwing from Path::renamePathOnDisk and adjust its users correspondingly. llvm-svn: 29843
* For PR797:Reid Spencer2006-08-231-2/+4
| | | | | | | Remove exceptions from the Path::create*OnDisk methods. Update their users to handle error messages via arguments and result codes. llvm-svn: 29840
* Inverse the error check logic for the MappedFile::map() call. It returnsReid Spencer2006-08-221-1/+1
| | | | | | a null pointer when there is an error. llvm-svn: 29827
* For PR797:Reid Spencer2006-08-222-6/+19
| | | | | | | Adjust to new interface for MappedFile. Note that the new "throw" statements will be removed later. llvm-svn: 29818
* Modify Path::eraseFromDisk to not throw an exception.Chris Lattner2006-07-281-6/+5
| | | | llvm-svn: 29400
* Change Path::getStatusInfo to return a boolean and error string on an errorChris Lattner2006-07-282-3/+7
| | | | | | | | instead of throwing an exception. This reduces the amount of code that is exposed to exceptions (e.g. FileUtilities), though it is clearly only one step along the way. llvm-svn: 29395
* Exceptions are thrown by and through this library.Chris Lattner2006-07-281-0/+1
| | | | llvm-svn: 29393
* Finish removal of EH usage from the Archive library. The REQUIRES_EH flagReid Spencer2006-07-073-70/+137
| | | | | | | in lib/Bytecode/Archive/Makefile is now removed. One small step closer to a smaller LLVM. llvm-svn: 29067
* Remove EH use from the Archive library and adjust its users accordingly.Reid Spencer2006-07-071-98/+109
| | | | llvm-svn: 29066
* These libs use EH infoChris Lattner2006-07-071-1/+2
| | | | llvm-svn: 29043
* When reading the symbol table, make sure to delete the ArchiveMemberReid Spencer2006-05-121-0/+2
| | | | | | created by reading the symbol table. llvm-svn: 28251
* Apply bug fix supplied by Greg Pettyjohn for a bug he found: '<invalid>' is ↵Jeff Cohen2006-05-061-1/+1
| | | | | | not a legal path on Windows. llvm-svn: 28153
* 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
OpenPOWER on IntegriCloud