summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Reader
Commit message (Collapse)AuthorAgeFilesLines
* Make the VBRSavings percentage make sense (as a fraction of the totalReid Spencer2004-07-101-3/+2
| | | | | | expanded size instead of the file size). Thanks Chris. llvm-svn: 14731
* Error Handling Cleanup:Reid Spencer2004-07-092-121/+129
| | | | | | | | | | - get rid of PARSE_ERROR macro - add error(std::string) function - use error(std::string) for all errors - make input dependent asserts call error(std::string) instead - ensure asserts are only for logic bugs, not input discrepancies. llvm-svn: 14729
* Fix a backwards compatibility bug found by Tanya. In version 1.2, theReid Spencer2004-07-091-0/+5
| | | | | | | | | global type plane starts with a length and the TypeTyID value to identify the type plane has having type definitions. This doesn't happen in 1.3 because the types are read from a known position in the file. However, the TypeTyID must be read in (and ignored) if its a 1.2 bytecode file. llvm-svn: 14728
* Remove definition and use of OtherVal enumerator. This just fixes a thinko.Reid Spencer2004-07-061-1/+1
| | | | llvm-svn: 14634
* Finalize bytecode dumping. The "handleFinish" method was getting calledReid Spencer2004-07-054-29/+38
| | | | | | | | too soon so the function data was not getting dumped (it was generated after the call handleFinish). Also cleaned up the output format for proper indentation. llvm-svn: 14627
* - Don't use macros to call the BytecodeHandlerReid Spencer2004-07-041-278/+434
| | | | | | | | | | | - Don't use PARSE_ERROR macro unnecessarily (for simple strings) - Add comments before each function - Convert for bug 122 (Type != Value) - Handle new value range on Type::PrimitiveTypeId enumeration by augmenting the reader with a new read_typeid method and sanitizeTypeId method. - Remove BytecodeHandler's default method implementations to header file. llvm-svn: 14604
* - Make ValueList an "OtherVal" user of Values to ensure it doesn't getReid Spencer2004-07-041-60/+51
| | | | | | | | mistaken for anything else. - Move function descriptions to Reader.cpp file per Chris. - Remove tabs. llvm-svn: 14602
* Remove tabs. Move function declaration to Reader.h where it belongs.Reid Spencer2004-07-041-8/+4
| | | | llvm-svn: 14601
* Add #include <iostream> which is needed now that Value.h doesn't include itReid Spencer2004-07-041-0/+1
| | | | llvm-svn: 14600
* Excise tabs.Reid Spencer2004-07-041-32/+31
| | | | llvm-svn: 14599
* Remove files no longer needed. ConstantReader and InstructionReader wereReid Spencer2004-06-299-3404/+0
| | | | | | | | | | integrated into Reader. Parser.* was just a bad idea. AnalyzerInternals.h is no longer needed. ReaderPrimitives.h was integrated into Reader.h and Reader.cpp. Dumper.cpp was integrated into Analyzer.cpp. ReaderInternals.h became Reader.h. AnalyzerWrappers.cpp was integerated into ReaderWrappers.cpp llvm-svn: 14496
* This is a slimming down of the previous ReaderInternals.h that justReid Spencer2004-06-291-0/+470
| | | | | | declares the BytecodeReader class. llvm-svn: 14495
* MAJOR REWRITE.Reid Spencer2004-06-291-326/+1355
| | | | | | | | | | | | | | | | | | - stop passing Buf/BufEnd to every function (now member vars) - internalize things that used to be in a header file that no one else included/needed. - Remove defunct BCR_TRACE lines - Standardize error handling with the PARSE_ERROR macro. - Integrate ConstantReader.cpp and InstructionReader.cpp and reorgnize the definition order so that gcc has a chance at optimizing this module - Standardize case and style of method names. - Eliminate unneeded header files - Prepare for Type != Value (bug122) change by splitting Types into their own data structures. - Implement the BytecodeHandler interface calls. - Provide default implementation of BytecodeHandler interface. llvm-svn: 14494
* Adjustments to allow Bytecode Reading to support the BytecodeHandlerReid Spencer2004-06-291-15/+68
| | | | | | interface which is called by the reader if a BytecodeHandler is provided. llvm-svn: 14493
* Merge Dumper.cpp and AnalyzerWrappers.cpp into this file. Also, adjust theReid Spencer2004-06-291-63/+377
| | | | | | dumping facility to produce useful output. llvm-svn: 14492
* Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()Chris Lattner2004-06-175-11/+11
| | | | llvm-svn: 14201
* Implement tracking of bytecode instruction size and the number of longReid Spencer2004-06-112-0/+16
| | | | | | instructions generated. llvm-svn: 14154
* Revert an unneeded interface change to Instruction.hReid Spencer2004-06-111-1/+1
| | | | llvm-svn: 14137
* Remove tabs.Reid Spencer2004-06-101-2/+2
| | | | llvm-svn: 14123
* Implement detailed function level data collection and reporting.Reid Spencer2004-06-102-148/+104
| | | | llvm-svn: 14122
* Adjust prototypes to new Handler interface.Reid Spencer2004-06-101-69/+30
| | | | llvm-svn: 14121
* Make the parser deal with functions instead of just function types.Reid Spencer2004-06-102-38/+42
| | | | llvm-svn: 14120
* Doxygenize a comment.Reid Spencer2004-06-101-2/+2
| | | | llvm-svn: 14115
* Implemented the bulk of the functionality. Cleaned up the code.Reid Spencer2004-06-105-239/+590
| | | | llvm-svn: 14113
* Cleanup alignment of output.Reid Spencer2004-06-091-14/+14
| | | | llvm-svn: 14093
* Implement analysis output. Don't dump function details unless requested.Reid Spencer2004-06-091-1/+20
| | | | llvm-svn: 14091
* Implement some rudimentary analysis.Reid Spencer2004-06-091-3/+47
| | | | llvm-svn: 14090
* Clean up indentation of file body output.Reid Spencer2004-06-091-9/+10
| | | | | | Don't dump functions unless "detailedResults" is requested. llvm-svn: 14089
* Move parsing details to Parser.cpp.Reid Spencer2004-06-091-25/+0
| | | | llvm-svn: 14088
* Bring some things out of header files that belong only in this file.Reid Spencer2004-06-091-0/+21
| | | | llvm-svn: 14087
* Fix the bug that was preventing the parser from working on all bytecodeReid Spencer2004-06-081-5/+5
| | | | | | | | files. It was reading non-initialized global vars when the flag said it was initialized and vice versa. Causes mis-alignment since initialized and non-initialized constants have different bytecode lengths. llvm-svn: 14057
* Adjust what's included to compensate for changes in Parser.hReid Spencer2004-06-081-0/+11
| | | | llvm-svn: 14055
* Merged BytecodeHandler.h into Parser.h since the parser and the handlerReid Spencer2004-06-081-56/+376
| | | | | | | | must always coexist. Cleaned up the documentation on these interfaces significantly. This is in preparation for moving Parser.h to the include directories to make it a public interface. llvm-svn: 14054
* Commit For New Tool: llvm-abcd (Analysis of ByteCode Dumper). This toolReid Spencer2004-06-076-0/+1881
| | | | | | | | | | | | | | | | | | | | | will (eventually) provide statistical analysis of bytecode files as well as the ability to dump them in a low level format (slot numbers not resolved). The purpose of this is to aid in the Type!=Value change of bug 122. With this initial release, llvm-abcd merely dumps out the bytecode. However, the infrastructure for separating bytecode parsing from handling the parsing events is in place. The style chosen is similar to SAX XML parsing where a handler object is called to handlign the parsing events. This probably isn't useful to anyone but me right now as there is no analysis yet, and the dumper doesn't work on every bytecode file. It will probably be useful by the end of this week. Note that there is some duplication of code from the bytecode reader. This was done to eliminate errors from being introduced in the reader and to minimize the impact to other LLVM developers. At some point, the Analyzer and the Reader will be integrated to use the same infrastructure. Also, sorry for the minor change to Instruction.h but I just couldn't bring myself to write code that depends on Instruction internals. llvm-svn: 14048
* Use the new FileUtilities.h API for mapping a file into an addressChris Lattner2004-05-282-32/+14
| | | | | | space llvm-svn: 13864
* Squelch compile-time warning (profile build).Misha Brukman2004-04-281-1/+1
| | | | llvm-svn: 13228
* Fix warning building in optimized modeChris Lattner2004-04-271-0/+1
| | | | llvm-svn: 13190
* Implement support for a new LLVM 1.3 bytecode format, which uses uint'sChris Lattner2004-04-054-7/+59
| | | | | | | to index into structure types and allows arbitrary 32- and 64-bit integer types to index into sequential types. llvm-svn: 12651
* Remove a bunch of cruft that was used to be backwards compatible with the lastChris Lattner2004-04-033-92/+23
| | | | | | | prerelease format for LLVM bytecode files. Now we only are compatible with LLVM 1.0+. llvm-svn: 12643
* Use the true, decoded name of the archive member in getObjectType.Brian Gaeke2004-03-311-7/+10
| | | | | | | In ReadArchiveBuffer, make sure that MemberName is set in the case where getObjectType would want to return SVR4LongFilename. llvm-svn: 12567
* Add support for reading constantexpr select instructionsChris Lattner2004-03-311-0/+3
| | | | llvm-svn: 12563
* Make error message a bit nicer.Chris Lattner2004-03-291-1/+1
| | | | | | Contributed by Reid Spencer llvm-svn: 12523
* Read select instrs from bytecodeChris Lattner2004-03-121-0/+5
| | | | llvm-svn: 12314
* This debugging hook is no longer needed.Chris Lattner2004-02-091-2/+0
| | | | llvm-svn: 11233
* Adjust to the changed StructType interface. In particular, ↵Chris Lattner2004-02-091-4/+4
| | | | | | getElementTypes() is gone. llvm-svn: 11228
* Start using the new and improve interface to FunctionType argumentsChris Lattner2004-02-092-22/+19
| | | | llvm-svn: 11224
* Implement ModuleProvider::materializeModule() by only materializing functionsMisha Brukman2004-01-211-0/+10
| | | | | | that are still left in the lazy reader map. llvm-svn: 10944
* Fix PR212 - Bytecode reader misreads 'long -9223372036854775808'!Chris Lattner2004-01-201-3/+7
| | | | | | Fix testcase test/Regression/Assembler/2004-01-20-MaxLongLong.llx llvm-svn: 10928
* Fix bogus warning and simplify codeChris Lattner2004-01-201-11/+5
| | | | llvm-svn: 10924
* Bugfixes for dealing with partially compactified functionsChris Lattner2004-01-201-6/+19
| | | | llvm-svn: 10920
OpenPOWER on IntegriCloud