summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Reader/Analyzer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* remove bytecode readerChris Lattner2007-05-061-673/+0
| | | | llvm-svn: 36882
* Implement review feedback. Aliasees can be either GlobalValue's orAnton Korobeynikov2007-04-281-0/+21
| | | | | | bitcasts of them. llvm-svn: 36537
* fix a memory leakChris Lattner2007-04-241-9/+9
| | | | llvm-svn: 36396
* Implement the "thread_local" keyword.Lauro Ramos Venancio2007-04-121-1/+3
| | | | llvm-svn: 35950
* For PR1195:Reid Spencer2007-02-151-2/+2
| | | | | | | Change use of "packed" term to "vector" in comments, strings, variable names, etc. llvm-svn: 34300
* For PR1195:Reid Spencer2007-02-151-2/+2
| | | | | | | Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. llvm-svn: 34293
* avoid creating a temporary string when reading the symbol table for aChris Lattner2007-02-121-2/+2
| | | | | | module. This speeds up the bcreader 11%. llvm-svn: 34198
* Compaction tables don't exist any more.Reid Spencer2007-02-101-35/+0
| | | | llvm-svn: 34148
* move AnalyzeBytecodeFile out of ReaderWrappers.cpp into Analyzer.cpp. NowChris Lattner2007-02-071-13/+15
| | | | | | lli doesn't link in Analyzer.cpp. llvm-svn: 34020
* remove dead ivars, thanks to Reid for noticing this!Chris Lattner2007-02-071-22/+1
| | | | llvm-svn: 33995
* remove the handleVBR32/handleVBR64 callbacks. They are very fine-grained.Chris Lattner2007-02-071-22/+0
| | | | llvm-svn: 33994
* Eliminate std::vectors from the bcanalyzer interface.Chris Lattner2007-02-071-14/+14
| | | | llvm-svn: 33978
* For PR411:Reid Spencer2007-02-051-21/+22
| | | | | | | | | | This patch replaces the SymbolTable class with ValueSymbolTable which does not support types planes. This means that all symbol names in LLVM must now be unique. The patch addresses the necessary changes to deal with this and removes code no longer needed as a result. This completes the bulk of the changes for this PR. Some cleanup patches will follow. llvm-svn: 33918
* Bye, Bye Compaction Tables. The benefit compaction tables provides doesn'tReid Spencer2007-01-301-4/+0
| | | | | | | | | | | | | | | | | | | outweight its computational costs. This patch removes all compaction table handling from the bcreader and bcwriter. For the record, here's the difference betweeen having and not having compaction tables for some tests: Test With Without Size Chg Olden/mst 5,602 5,598 +0.1% viterbi 18,026 17,795 +1.3% obsequi 162,133 166,663 -2.8% burg 224,090 228,148 -1.8% kimwitu++ 4,933,263 5,121,159 -3.8% 176.gcc 8,470,424 9,141,539 -7.3% It seems that it is more beneficial to larger files, but even on the largest test case we have (176.gcc) it only amounts ot an I/O saving of 7.3%. llvm-svn: 33661
* For PR761:Reid Spencer2007-01-261-6/+2
| | | | | | | Remove the Endianness and PointerSize fields from the ModuleHeader and replace it with the DataLayout field. llvm-svn: 33529
* * PIC codegen for X86/Linux has been implementedAnton Korobeynikov2007-01-121-1/+6
| | | | | | | | * PIC-aware internal structures in X86 Codegen have been refactored * Visibility (default/weak) has been added * Docs fixes (external weak linkage, visibility, formatting) llvm-svn: 33136
* For PR411:Reid Spencer2007-01-061-3/+7
| | | | | | | | | 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
* Remove an extraneous { at the end of a block.Reid Spencer2006-12-151-1/+1
| | | | llvm-svn: 32613
* Discard code that supported old bytecode formats. This makes the BytecodeReid Spencer2006-11-141-1/+1
| | | | | | | 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
* Remove some dead code.Reid Spencer2006-11-031-2/+1
| | | | llvm-svn: 31401
* Small fixes for supporting dll* linkage typesAnton Korobeynikov2006-09-171-0/+1
| | | | llvm-svn: 30441
* Change the verifier to never throw an exception. Instead verifyModule ↵Chris Lattner2006-07-061-25/+15
| | | | | | canoptionally return the string error, which is an easier api for clients touse anyway. llvm-svn: 29017
* I bet pinski knows why g++ accepts this stuffDuraid Madina2005-12-261-0/+1
| | | | llvm-svn: 25022
* Remove vim settings from source code; people should use llvm/utils/vim/vimrcMisha Brukman2005-05-051-1/+0
| | | | llvm-svn: 21704
* Remove trailing whitespaceMisha Brukman2005-04-211-84/+84
| | | | llvm-svn: 21417
* Don't print a bunch of metrics that are meaningless for external functionsChris Lattner2004-10-151-17/+20
| | | | llvm-svn: 17017
* Print the dependent libraries when dumping bytecode.Reid Spencer2004-09-111-0/+2
| | | | llvm-svn: 16275
* Correctly compute the number of compaction tables.Reid Spencer2004-08-271-1/+1
| | | | llvm-svn: 16064
* Rearrange output a little to make it nicer.Reid Spencer2004-08-241-17/+17
| | | | llvm-svn: 16036
* Bytecode Analyzer Cleanup:Reid Spencer2004-08-211-162/+266
| | | | | | | | | | | - Rearrange output order to make more sense - Make only the function level output count as "detailed" - Output dump output directly to stream, don't buffer it. - Fix counting of block sizes - Implement new handlers for number of types, dependent libs, target triple - Compute the size of block headers. llvm-svn: 15985
* Packed types, brought to you by Brad JonesBrian Gaeke2004-08-201-0/+21
| | | | llvm-svn: 15938
* Make getGlobalTableValue not use getTypeSlot, this speeds up the bc readerChris Lattner2004-08-041-7/+3
| | | | | | by 5% on eon llvm-svn: 15452
* bug 122:Reid Spencer2004-07-181-3/+1
| | | | | | - Update for BytecodeHandler interface change resuing from CPRs going away llvm-svn: 14938
* 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
* Finalize bytecode dumping. The "handleFinish" method was getting calledReid Spencer2004-07-051-17/+18
| | | | | | | | 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
* Excise tabs.Reid Spencer2004-07-041-32/+31
| | | | llvm-svn: 14599
* 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
* Implement tracking of bytecode instruction size and the number of longReid Spencer2004-06-111-0/+8
| | | | | | instructions generated. llvm-svn: 14154
* Revert an unneeded interface change to Instruction.hReid Spencer2004-06-111-1/+1
| | | | llvm-svn: 14137
* Implement detailed function level data collection and reporting.Reid Spencer2004-06-101-138/+88
| | | | llvm-svn: 14122
* Implemented the bulk of the functionality. Cleaned up the code.Reid Spencer2004-06-101-17/+70
| | | | llvm-svn: 14113
* Implement some rudimentary analysis.Reid Spencer2004-06-091-3/+47
| | | | llvm-svn: 14090
* Commit For New Tool: llvm-abcd (Analysis of ByteCode Dumper). This toolReid Spencer2004-06-071-0/+242
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