summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode
Commit message (Collapse)AuthorAgeFilesLines
...
* This patch substantially simplifies and cleans up handling of basic blocksChris Lattner2003-10-083-60/+84
| | | | | | | | | | | | | in the bytecode parser. Before we tried to shoehorn basic blocks into the "getValue" code path with other types of values. For a variety of reasons this was a bad idea, so this patch separates it out into its own data structure. This simplifies the code, makes it fit in 80 columns, and is also much faster. In a testcase provided by Bill, which has lots of PHI nodes, this patch speeds up bytecode parsing from taking 6.9s to taking 2.32s. More speedups to follow later. llvm-svn: 8977
* Inline the postResolveValues method. It was poorly named anywayChris Lattner2003-10-082-34/+26
| | | | llvm-svn: 8976
* Various cleanups and simplifications. This speeds up reading a bytecode fileChris Lattner2003-10-083-61/+57
| | | | | | Bill gave me from 8.69s to 6.90s. llvm-svn: 8971
* Destroy allocated resources on exception.Misha Brukman2003-10-081-3/+13
| | | | llvm-svn: 8969
* All of our supported operating systems (so far) and FreeBSD technicallyBrian Gaeke2003-10-061-0/+1
| | | | | | want you to include <sys/stat.h> for fstat(), struct stat, and friends. llvm-svn: 8887
* Rename AbstractModuleProvider -> ModuleProvider, to match the header file name,Chris Lattner2003-10-042-7/+5
| | | | | | | and because, while the class used by the interface is abstract, the actual concept is not. llvm-svn: 8850
* Transform two methods to return pointers directly instead of returning themChris Lattner2003-10-043-66/+42
| | | | | | as 'by reference' arguments. llvm-svn: 8849
* Use V for values, not D.Chris Lattner2003-10-041-16/+15
| | | | llvm-svn: 8848
* Do not leak the ModuleProvider if releaseModule() throws.Chris Lattner2003-10-041-11/+6
| | | | llvm-svn: 8847
* There is no need for BytecodeParser to be an AbstractTypeUser. Instead, itChris Lattner2003-10-022-28/+3
| | | | | | can just use PATypeHolders llvm-svn: 8832
* Just rethrow previous exception instead of making a new oneChris Lattner2003-09-261-1/+1
| | | | llvm-svn: 8718
* Define the instance variable Buffer, not the automatic variable Buffer.Chris Lattner2003-09-251-3/+2
| | | | | | This was causing us to munmap random stuff, which is obviously bad. llvm-svn: 8709
* Fix alignment problemChris Lattner2003-09-241-1/+1
| | | | llvm-svn: 8707
* Actually assign the string correctly through the std::string pointer.Misha Brukman2003-09-241-2/+2
| | | | llvm-svn: 8704
* * Eliminate BytecodeBufferReader::Length member variableMisha Brukman2003-09-241-26/+7
| | | | | | | * Kill unused ALIN_PTRS #define * Set the error string if user passed it in to be compatible with former API llvm-svn: 8701
* Added code that ensures that we pass the beginning of the data buffer toJohn Criswell2003-09-231-1/+1
| | | | | | the parsing routines regardless of whether the buffer is re-aligned or not. llvm-svn: 8693
* Stop returning bool and pass Instruction by reference;Misha Brukman2003-09-232-135/+146
| | | | | | return std::auto_ptr and use exceptions llvm-svn: 8684
* Suggestions made by Chris:Misha Brukman2003-09-231-10/+14
| | | | | | | | | * Instead of a #define, use inline function * Fix the name on the #define, errr... now inline function to be more logical: it doesn't CHECK the alignment, it PERFORMS the alignment * To get string name of a Type*, use getDescription(), not getName() llvm-svn: 8683
* * Group class definitions & implementations togetherMisha Brukman2003-09-231-58/+110
| | | | | | | | * Make sure we align the buffer we're given * Do not let exceptions propagate when the caller asks for a Module* * Add doxygenified comments to wrapper functions llvm-svn: 8682
* * Constantify arguments to copy functionMisha Brukman2003-09-231-8/+4
| | | | | | * Stop using a #define, make it an inline if statement llvm-svn: 8678
* Removed no longer used member variable.Misha Brukman2003-09-221-4/+1
| | | | llvm-svn: 8677
* Added file header comment.Misha Brukman2003-09-221-0/+7
| | | | llvm-svn: 8675
* Update file header for renamed fileChris Lattner2003-09-221-1/+1
| | | | llvm-svn: 8673
* * Cleaned up code:Misha Brukman2003-09-224-340/+443
| | | | | | | | | - no more passing around a string pointer to set errors - no more returning booleans and checking for errors, we use C++ exceptions * Broke functionality into 2 new classes, one reads from file, one from a stream * Implemented lazy function streaming - the parser can read in a function at-a-time llvm-svn: 8671
* Fix a spello Misha made while fixing one of my appostrificationsChris Lattner2003-09-151-1/+1
| | | | llvm-svn: 8510
* Fixed spelling and grammar.Misha Brukman2003-09-116-11/+11
| | | | llvm-svn: 8489
* Fix bugChris Lattner2003-09-081-1/+2
| | | | llvm-svn: 8410
* Add support for the unwind instructionChris Lattner2003-09-081-0/+3
| | | | llvm-svn: 8408
* Read volatile loads/storesChris Lattner2003-09-081-2/+4
| | | | llvm-svn: 8401
* Remove a gross hack that was there to support bytecode files that are over a ↵Chris Lattner2003-09-083-65/+12
| | | | | | | | year old. If you still have these suckers laying around, you have GOT to rebuild them. geeze. llvm-svn: 8395
* Add support for writing volatile load/storesChris Lattner2003-09-081-22/+22
| | | | llvm-svn: 8394
* Fix reading of invoke instrsChris Lattner2003-09-051-22/+23
| | | | llvm-svn: 8365
* Whoa, we were misreading invoke instructions "normal" destinations quite badly.Chris Lattner2003-09-051-2/+2
| | | | llvm-svn: 8363
* Non-functional changeChris Lattner2003-09-041-1/+1
| | | | llvm-svn: 8352
* Avoid printing meaningless numbersChris Lattner2003-09-031-4/+1
| | | | llvm-svn: 8342
* Follow the pattern of all other atu'sChris Lattner2003-09-031-6/+2
| | | | llvm-svn: 8340
* Allow modules to have 'any' pointer size and endianness. Luckily, we hadChris Lattner2003-08-243-15/+26
| | | | | | some space for extra flags, so we don't need to bump the revision number. llvm-svn: 8118
* Rename SwitchInst::dest_push_back -> addCaseChris Lattner2003-08-231-2/+2
| | | | llvm-svn: 8089
* Spell `necessary' correctly.Misha Brukman2003-08-181-1/+1
| | | | llvm-svn: 7944
* Remove redundant const qualifiers from cast<> expressionsChris Lattner2003-07-231-2/+2
| | | | llvm-svn: 7253
* Remove explicit const qualifiersChris Lattner2003-07-231-10/+10
| | | | llvm-svn: 7245
* The word `separate' only has one `e'.Misha Brukman2003-07-141-1/+1
| | | | llvm-svn: 7173
* Merged in autoconf branch. This provides configuration via the autoconfJohn Criswell2003-06-303-9/+9
| | | | | | system. llvm-svn: 7014
* Detemplatize the PATypeHandle class, which was only really instantiated on ↵Chris Lattner2003-06-182-2/+2
| | | | | | 'Type'. llvm-svn: 6774
* Fix bug: Assembler/2003-06-17-InvokeDisassemble.llxChris Lattner2003-06-171-10/+14
| | | | | | "yes, invoke instructions can have just three arguments" llvm-svn: 6736
* Fix bug: Assembler/2003-05-03-BytecodeReaderProblem.llxChris Lattner2003-05-221-16/+25
| | | | | | | by emitting the type planes before any constants (which could be constant expressions involving undefined types!) llvm-svn: 6285
* Do not assert fail or crash when a bytecode parse fails!Chris Lattner2003-05-222-0/+4
| | | | llvm-svn: 6284
* Eliminate the uchar typedef, use unsigned char explicitlyChris Lattner2003-05-224-38/+56
| | | | llvm-svn: 6283
* Fix Bug: Assembler/2003-05-12-MinIntProblem.llxChris Lattner2003-05-121-9/+3
| | | | llvm-svn: 6123
* Add support for the new va_arg instructionChris Lattner2003-05-082-5/+9
| | | | llvm-svn: 6029
OpenPOWER on IntegriCloud