summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode
Commit message (Collapse)AuthorAgeFilesLines
* Remove tabs.Reid Spencer2004-07-111-2/+2
| | | | llvm-svn: 14763
* Prepare the writer for a non-broken implementation of writing floatingReid Spencer2004-07-112-2/+19
| | | | | | | point values. This will be fixed when I figure out how to do it correctly without depending on knowing the endianess of a platform. llvm-svn: 14762
* 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
* Implementation of SlotTable went into header file. Note that this headerReid Spencer2004-07-041-116/+0
| | | | | | | is currently not being used but is retained because it will be the basis for a clean up of the SlotCalculator class. llvm-svn: 14612
* Remove Tabs.Reid Spencer2004-07-041-4/+4
| | | | llvm-svn: 14611
* Implement new output functions for types and compacted type planes. AlsoReid Spencer2004-07-041-51/+68
| | | | | | | remove use of Type::TypeTyID and Type::TypeTy since Type no longer inherits Value. llvm-svn: 14610
* Add new methods outputTypes and outputCompactionTypes for handling TypesReid Spencer2004-07-041-2/+4
| | | | | | separately from Values. This needed for bug 122. llvm-svn: 14609
* For bug 122:Reid Spencer2004-07-042-133/+237
| | | | | | | | | | | Separate Types from Values because Type no longer inherits from Value. The changes for this are too numerous to list. In essence, any data structure that contained a Value was doubled so that Types could be contained similarly. New members include Types, TypeMap, CompactionTypes, and CompactionTypeMap. Functions taking a Value* were overloaded with a variant that takes a Type* that acts on the new data structures. llvm-svn: 14608
* - Type::TypeTyID doesn't exist any more (bug 122)Reid Spencer2004-07-041-5/+1
| | | | | | - Types don't have names any more, just write them on ostream directly llvm-svn: 14606
* Move SlotCalculator.h to lib/Bytecode/Writer since that is the only placeReid Spencer2004-07-041-0/+141
| | | | | | that needs it after the Type != Value changes (bug 122). llvm-svn: 14605
* - 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
* Analyzer moved to ../Reader directory.Reid Spencer2004-06-297-2573/+0
| | | | llvm-svn: 14491
* Remove newly defunct Analyzer directory.Reid Spencer2004-06-291-1/+1
| | | | llvm-svn: 14490
* No functionality changes here:Chris Lattner2004-06-251-7/+4
| | | | | | | * Some warning fixes for MSVC * Minor simplification to the deque scanning code llvm-svn: 14417
* Fix more warnings building with VC++Chris Lattner2004-06-252-4/+3
| | | | llvm-svn: 14391
* fix warningsChris Lattner2004-06-251-2/+2
| | | | llvm-svn: 14388
* Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()Chris Lattner2004-06-1712-33/+33
| | | | llvm-svn: 14201
* Implement tracking of bytecode instruction size and the number of longReid Spencer2004-06-114-0/+32
| | | | | | instructions generated. llvm-svn: 14154
* Revert an unneeded interface change to Instruction.hReid Spencer2004-06-112-2/+2
| | | | llvm-svn: 14137
* Remove tabs.Reid Spencer2004-06-102-4/+4
| | | | llvm-svn: 14123
* Implement detailed function level data collection and reporting.Reid Spencer2004-06-104-296/+208
| | | | llvm-svn: 14122
* Adjust prototypes to new Handler interface.Reid Spencer2004-06-102-138/+60
| | | | llvm-svn: 14121
* Make the parser deal with functions instead of just function types.Reid Spencer2004-06-104-76/+84
| | | | 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-1012-799/+1180
| | | | llvm-svn: 14113
* Cleanup alignment of output.Reid Spencer2004-06-092-28/+28
| | | | llvm-svn: 14093
* Implement analysis output. Don't dump function details unless requested.Reid Spencer2004-06-092-2/+40
| | | | llvm-svn: 14091
* Implement some rudimentary analysis.Reid Spencer2004-06-092-6/+94
| | | | llvm-svn: 14090
* Clean up indentation of file body output.Reid Spencer2004-06-092-18/+20
| | | | | | Don't dump functions unless "detailedResults" is requested. llvm-svn: 14089
* Move parsing details to Parser.cpp.Reid Spencer2004-06-092-50/+0
| | | | llvm-svn: 14088
* Bring some things out of header files that belong only in this file.Reid Spencer2004-06-092-0/+42
| | | | llvm-svn: 14087
* Cleaned up a dead header file to prevent duplicate definition warningsReid Spencer2004-06-091-1/+1
| | | | | | in doxygen. llvm-svn: 14084
* Fix the bug that was preventing the parser from working on all bytecodeReid Spencer2004-06-082-10/+10
| | | | | | | | 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
* Make it #include Parser.h instead of AnalyzerInternals.h since it onlyReid Spencer2004-06-081-1/+1
| | | | | | needs the BytecodeHandler interface which is now in Parser.h llvm-svn: 14056
* Adjust what's included to compensate for changes in Parser.hReid Spencer2004-06-082-0/+22
| | | | llvm-svn: 14055
* Merged BytecodeHandler.h into Parser.h since the parser and the handlerReid Spencer2004-06-083-359/+752
| | | | | | | | 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-0717-1/+4344
| | | | | | | | | | | | | | | | | | | | | 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
OpenPOWER on IntegriCloud