summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode
Commit message (Collapse)AuthorAgeFilesLines
* remove support for old-style varargs upgradingChris Lattner2007-01-071-106/+6
| | | | llvm-svn: 32979
* For PR411:Reid Spencer2007-01-067-56/+88
| | | | | | | | | Take an incremental step towards type plane elimination. This change separates types from values in the symbol tables by finally making use of the TypeSymbolTable class. This yields more natural interfaces for dealing with types and unclutters the SymbolTable class. llvm-svn: 32956
* For PR950:Reid Spencer2006-12-313-57/+44
| | | | | | | | | | | | | | Update for signless integer types and parameter attribute implementation. Of significant note: 1. This changes the bytecode format yet again. 2. There are 1/2 as many integer type planes (this is a good thing) 3. GEP indices now use only 1 bit to identify their type which means more GEP instructions won't be relegated to format 0 (size win) 4. Parameter attributes are implemented but currently being stored verbosely for each function type. Some other day this needs to be optimized for size. llvm-svn: 32783
* switch statistics over to not use static ctors.Chris Lattner2006-12-191-2/+2
| | | | llvm-svn: 32709
* This snuck in. Reverted.Bill Wendling2006-12-171-2/+0
| | | | llvm-svn: 32638
* Added an automatic cast to "std::ostream*" etc. from OStream. We then canBill Wendling2006-12-171-0/+2
| | | | | | | rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. llvm-svn: 32636
* Remove an extraneous { at the end of a block.Reid Spencer2006-12-151-1/+1
| | | | llvm-svn: 32613
* Fix long standing issue with propagating error message back to caller. ThisReid Spencer2006-12-152-7/+17
| | | | | | | | has been a problem since exceptions were removed from the BytecodeReader. Error messages are now captured from ModuleProvider::releaseModule as well as after a longjmp. llvm-svn: 32608
* For PR1050:Reid Spencer2006-12-153-6/+27
| | | | | | Convert asserts into error messages. llvm-svn: 32607
* Create the cast constant expression that was read instead of attemptingReid Spencer2006-12-111-1/+2
| | | | | | | to infer the cast from its operand and type. This fixes: test/Regression/Bytecode/2006-12-11-Cast-ConstExpr.ll llvm-svn: 32450
* Packed StructuresAndrew Lenharth2006-12-082-4/+17
| | | | llvm-svn: 32361
* Removed more <iostream> includesBill Wendling2006-12-071-5/+3
| | | | llvm-svn: 32321
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-072-7/+7
| | | | | | now cerr, cout, and NullStream resp. llvm-svn: 32298
* Detemplatize the Statistic class. The only type it is instantiated withChris Lattner2006-12-061-1/+1
| | | | | | is 'unsigned'. llvm-svn: 32279
* Fix a CmpInst writing bug by removing merge cruft that I *know* I've removedReid Spencer2006-12-061-9/+4
| | | | | | | before. Also, make sure we write the predicate value for Cmp instructions using instruction format 0. llvm-svn: 32253
* For PR950: Implement read/write of ICmp and FCmp constant expressionsReid Spencer2006-12-042-6/+12
| | | | llvm-svn: 32172
* Support ICmp/FCmp constant expression reading and writing.Reid Spencer2006-12-032-0/+19
| | | | llvm-svn: 32160
* Implement reading and writing of the ICmp and FCmp instructions.Reid Spencer2006-12-032-3/+18
| | | | llvm-svn: 32149
* Remove backwards compatibility goop. This is now handled by llvm-upgrade.Reid Spencer2006-12-032-632/+16
| | | | llvm-svn: 32146
* Replacing std::iostreams with llvm iostreams. Some of these changes involveBill Wendling2006-11-292-11/+12
| | | | | | | adding a temporary wrapper around the ostream to make it friendly to functions expecting an LLVM stream. This should be fixed in the future. llvm-svn: 31990
* Use ostream instead of iostreamBill Wendling2006-11-281-2/+1
| | | | llvm-svn: 31986
* For PR950:Reid Spencer2006-11-273-64/+210
| | | | | | | | | | The long awaited CAST patch. This introduces 12 new instructions into LLVM to replace the cast instruction. Corresponding changes throughout LLVM are provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the exception of 175.vpr which fails only on a slight floating point output difference. llvm-svn: 31931
* Have ConstantExprs upgrade opcodes the same way as instructions.Reid Spencer2006-11-181-1/+11
| | | | llvm-svn: 31841
* Discard code that supported old bytecode formats. This makes the BytecodeReid Spencer2006-11-143-551/+147
| | | | | | | Reader code much easier to read and maintain. Backwards compatibility from version 5 format has been retained. Older formats will produce an error. llvm-svn: 31723
* For PR998:Reid Spencer2006-11-111-1/+1
| | | | | | | | Fix an infinite loop in the Linker and a few other assorted link problems. Patch contributed by Scott Michel. Thanks, Scott! llvm-svn: 31680
* Bump the bytecode version number to 7. Implement upgrade of version 6 andReid Spencer2006-11-083-29/+107
| | | | | | version 6 bytecode. llvm-svn: 31573
* For PR950:Reid Spencer2006-11-081-3/+15
| | | | | | | | This patch converts the old SHR instruction into two instructions, AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not dependent on the sign of their operands. llvm-svn: 31542
* Remove some dead code.Reid Spencer2006-11-031-2/+1
| | | | llvm-svn: 31401
* For PR786:Reid Spencer2006-11-022-2/+1
| | | | | | | | | | Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. llvm-svn: 31380
* For PR950:Reid Spencer2006-11-021-8/+13
| | | | | | Replace the REM instruction with UREM, SREM and FREM. llvm-svn: 31369
* For PR950:Reid Spencer2006-10-263-374/+717
| | | | | | | | Make necessary changes to support DIV -> [SUF]Div. This changes llvm to have three division instructions: signed, unsigned, floating point. The bytecode and assembler are bacwards compatible, however. llvm-svn: 31195
* For PR950:Reid Spencer2006-10-202-19/+17
| | | | | | | | This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. llvm-svn: 31063
* Fix massive resource leaks in the bytecode reader. Reading a bytecode fileChris Lattner2006-10-122-45/+46
| | | | | | | | | with ParseBytecodeFile used to leak both a ModuleProvider (and related bytecode parser stuff attached to it) AND a file descriptor, which was never closed. This prevented gccld/llvm-ld/llvm-link from linking together apps with more that ~252 .bc files on darwin. llvm-svn: 30912
* Small fixes for supporting dll* linkage typesAnton Korobeynikov2006-09-171-0/+1
| | | | llvm-svn: 30441
* Adding dllimport, dllexport and external weak linkage types.Anton Korobeynikov2006-09-142-9/+40
| | | | | | | | | DLL* linkages got full (I hope) codegeneration support in C & both x86 assembler backends. External weak linkage added for future use, we don't provide any codegeneration, etc. support for it. llvm-svn: 30374
* - Fixed broken Win32 buildAnton Korobeynikov2006-09-012-2/+2
| | | | | | - Removed warning about clobbered parameter in Bytecode/Reader llvm-svn: 30026
* For PR797:Reid Spencer2006-08-254-25/+20
| | | | | | | | | | | | | | | 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-253-109/+143
| | | | | | | 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-221-8/+16
| | | | | | | | Adjust the use of MappedFile to its new non-throwing interface. We just propagate the exceptions if an error occurs. This will get cleaned up later, incrementally. llvm-svn: 29820
* For PR797:Reid Spencer2006-08-222-118/+119
| | | | | | | | Make the Bytecode Reader use setjmp/longjump instead of exceptions to handle errors. The alternative was even uglier than setjmp/longjump as it would impact the interface and workings of nearly every function in the reader. llvm-svn: 29819
* 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
* formatting cleanupsChris Lattner2006-07-281-12/+11
| | | | llvm-svn: 29396
* 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
OpenPOWER on IntegriCloud