summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Archive/ArchiveWriter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* move this to lib/ArchiveChris Lattner2007-05-061-482/+0
| | | | llvm-svn: 36888
* Switch this over to bitcode instead of bytecode.Chris Lattner2007-05-061-4/+2
| | | | llvm-svn: 36866
* add bitcode supportChris Lattner2007-05-061-43/+3
| | | | llvm-svn: 36856
* For PR1302:Reid Spencer2007-04-041-2/+2
| | | | | | Adjust useage of sys::Path::FileType for new enumerator names. llvm-svn: 35651
* For PR789:Reid Spencer2007-03-291-1/+4
| | | | | | | | Make the sys::Path::getFileStatus function more efficient by having it return a pointer to the FileStatus structure rather than copy it. Adjust uses of the function accordingly. Also, fix some memory issues in sys::Path. llvm-svn: 35476
* For PR789:Reid Spencer2007-03-291-1/+1
| | | | | | Updates for change in interface of getFileStatus method of sys::Path class. llvm-svn: 35458
* push bytecode decompressor out through APIs. Now the bytecode readerChris Lattner2007-02-071-2/+4
| | | | | | | | | | | | | | | | | | | | api's look like this: ModuleProvider *getBytecodeModuleProvider( const std::string &Filename, ///< Name of file to be read BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer, std::string* ErrMsg = 0, ///< Optional error message holder BytecodeHandler* H = 0 ///< Optional handler for reader events ); This is ugly, but allows a client to say: getBytecodeModuleProvider("foo", 0); If they do this, there is no dependency on the compression libraries, saving codesize. llvm-svn: 34012
* For PR1050:Reid Spencer2006-12-151-3/+10
| | | | | | Convert asserts into error messages. llvm-svn: 32607
* Use ostream instead of iostreamBill Wendling2006-11-281-2/+1
| | | | llvm-svn: 31986
* For PR797:Reid Spencer2006-08-251-2/+3
| | | | | | | 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-241-43/+43
| | | | | | | 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-221-4/+13
| | | | | | | 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-281-1/+3
| | | | | | | | 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
* Finish removal of EH usage from the Archive library. The REQUIRES_EH flagReid Spencer2006-07-071-1/+6
| | | | | | | 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
* Fix a problem with llvm-ranlib that (on some platforms) caused the archiveReid Spencer2005-11-301-34/+50
| | | | | | | | | | 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
* 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-071-3/+3
| | | | | | | | | | | | | | | | | | | | | 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 trailing whitespaceMisha Brukman2005-04-211-33/+33
| | | | llvm-svn: 21416
* 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
* Properly close mapped files.Jeff Cohen2005-01-281-2/+2
| | | | llvm-svn: 19863
* Use binary mode for reading/writing bytecode filesJeff Cohen2005-01-221-2/+4
| | | | llvm-svn: 19751
* Fix problems uncovered by VC++ (first time compiled by VC++)Jeff Cohen2004-12-201-1/+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
* Path::get -> Path::toStringReid Spencer2004-12-111-8/+10
| | | | llvm-svn: 18785
* Adjust to Compressor interface changeReid Spencer2004-11-251-2/+1
| | | | llvm-svn: 18249
* Distinguish between BSD4.4 and SVR4 symbol tablesReid Spencer2004-11-201-6/+13
| | | | llvm-svn: 18044
* Correct the computation of when to add the padding. It is not based on theReid Spencer2004-11-191-1/+1
| | | | | | | | 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
* 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
* Adjust long file name writing to match BSD 4.4 and Mac OSX style archives.Reid Spencer2004-11-171-10/+14
| | | | llvm-svn: 17910
* 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
* Changes necessary to enable linking of archives without LLVM symbol tables.Reid Spencer2004-11-151-12/+21
| | | | llvm-svn: 17811
* First working versionReid Spencer2004-11-141-222/+364
| | | | llvm-svn: 17765
* First kinda/sorta working version of the Archive library. Reading is notReid Spencer2004-11-061-0/+284
yet supported but writing works. Way too early to review this. More to come llvm-svn: 17499
OpenPOWER on IntegriCloud