|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| | llvm-svn: 7253 | 
| | 
| 
| 
| | llvm-svn: 7245 | 
| | 
| 
| 
| | llvm-svn: 7173 | 
| | 
| 
| 
| 
| 
| | system.
llvm-svn: 7014 | 
| | 
| 
| 
| 
| 
| | 'Type'.
llvm-svn: 6774 | 
| | 
| 
| 
| 
| 
| | "yes, invoke instructions can have just three arguments"
llvm-svn: 6736 | 
| | 
| 
| 
| 
| 
| 
| | by emitting the type planes before any constants (which could be constant
expressions involving undefined types!)
llvm-svn: 6285 | 
| | 
| 
| 
| | llvm-svn: 6284 | 
| | 
| 
| 
| | llvm-svn: 6283 | 
| | 
| 
| 
| | llvm-svn: 6123 | 
| | 
| 
| 
| | llvm-svn: 6029 | 
| | 
| 
| 
| | llvm-svn: 5860 | 
| | 
| 
| 
| | llvm-svn: 5839 | 
| | 
| 
| 
| | llvm-svn: 5836 | 
| | 
| 
| 
| | llvm-svn: 5820 | 
| | 
| 
| 
| | llvm-svn: 5819 | 
| | 
| 
| 
| | llvm-svn: 5807 | 
| | 
| 
| 
| | llvm-svn: 5790 | 
| | 
| 
| 
| | llvm-svn: 5786 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | - Null values are implicitly encoded instead of explicitly, this makes
    things more compact!
  - More compactly represent ConstantPointerRefs
  - Bytecode files are represented as:
      Header|GlobalTypes|GlobalVars/Function Protos|Constants|Functions|SymTab
    instead of
      Header|GlobalTypes|Constants|GlobalVars/Function Protos|Functions|SymTab
    which makes a lot of things simpler.
Writer changes:
  - We now explictly encode versioning information in the bytecode files.
  - This allows new code to read bytecode files produced by old code, but
    new bytecode files can have enhancements such as the above.  Although this
    makes the reader a bit more complex (having to deal with old formats), the
    writer only needs to be able to produce the most recent version.
llvm-svn: 5749 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | - Fix problems where the constant table would not get updated when
    resolving constants causes other constants to change.
Changes to the V2 bytecode format
  - Null values are implicitly encoded instead of explicitly, this makes
    things more compact!
  - More compactly represent ConstantPointerRefs
  - Bytecode files are represented as:
      Header|GlobalTypes|GlobalVars/Function Protos|Constants|Functions|SymTab
    instead of
      Header|GlobalTypes|Constants|GlobalVars/Function Protos|Functions|SymTab
    which makes a lot of things simpler.
Changes to the reader:
  - Function loading code is much simpler.  We now no longer make function
    PlaceHolderHelper objects to be replaced with real functions.
llvm-svn: 5748 | 
| | 
| 
| 
| | llvm-svn: 5716 | 
| | 
| 
| 
| | llvm-svn: 5715 | 
| | 
| 
| 
| | llvm-svn: 5714 | 
| | 
| 
| 
| | llvm-svn: 5713 | 
| | 
| 
| 
| | llvm-svn: 5712 | 
| | 
| 
| 
| | llvm-svn: 5708 | 
| | 
| 
| 
| | llvm-svn: 5385 | 
| | 
| 
| 
| 
| 
| | wasn't an optimization and it was causing lots of bugs.
llvm-svn: 4779 | 
| | 
| 
| 
| 
| 
| 
| 
| | reading bytecode files with > 255 types in them, but only when optimization
    is enabled.  This was caused by GCC shrinking an enum to a single byte
    instead of a whole word.
llvm-svn: 4266 | 
| | 
| 
| 
| 
| 
| | 4 bytes at a time.  Change this to read blocks of 4k
llvm-svn: 4265 | 
| | 
| 
| 
| | llvm-svn: 4162 | 
| | 
| 
| 
| 
| 
| 
| 
| | Handle forward referenced constants in a general way.  This fixes bug:
Assembler/2002-10-13-ConstantEncodingProblem.llx and allows the SPEC
197.parser benchmark to be built
llvm-svn: 4161 | 
| | 
| 
| 
| 
| 
| 
| | constructed.  Before, external functions would have an empty argument list,
    now a Function ALWAYS has a populated argument list.
llvm-svn: 4149 | 
| | 
| 
| 
| 
| 
| | reflect the fact that it's a range being defined.
llvm-svn: 4147 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | * Renamed StatisticReporter.h/cpp to Statistic.h/cpp
    * Broke constructor to take two const char * arguments instead of one, so
      that indendation can be taken care of automatically.
    * Sort the list by pass name when printing
    * Make sure to print all statistics as a group, instead of randomly when
      the statistics dtors are called.
    * Updated ProgrammersManual with new semantics.
llvm-svn: 4002 | 
| | 
| 
| 
| 
| 
| | seemingly it affects opt in uncertain ways :)
llvm-svn: 3866 | 
| | 
| 
| 
| | llvm-svn: 3715 | 
| | 
| 
| 
| 
| 
| | pointer type returned.
llvm-svn: 3711 | 
| | 
| 
| 
| | llvm-svn: 3487 | 
| | 
| 
| 
| 
| 
| | to handle indexing anymore
llvm-svn: 3485 | 
| | 
| 
| 
| 
| 
| 
| | instructions that use indexing.  Convert them transparently into a pair
of instructions.
llvm-svn: 3431 | 
| | 
| 
| 
| | llvm-svn: 3384 | 
| | 
| 
| 
| | llvm-svn: 3377 | 
| | 
| 
| 
| | llvm-svn: 3367 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | - ParseConstantPool was resolving reference to value using the function
      slot # instead of the global slot #.
  - Bytecode reader changes:
    - Remove the failure<> template from Bytecode Reader
    - Remove extraneous #includes
    - s/method/function/ a bit
    - Eliminate the fwdRefs class that just added abstraction where it was not
      needed, making things more complex.
    - Use a vector instead of a list for function signatures.
llvm-svn: 3366 | 
| | 
| 
| 
| 
| 
| | have to support the cast instruction, so the function is renamed to getCast.
llvm-svn: 3328 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | * Correctly delete TypeHandles in AsmParser.  In addition to not leaking
   memory, this prevents a bug that could have occurred when a type got
   resolved that the constexpr was using
 * Check for errors in the AsmParser instead of hitting assertion failures
   deep in the code
 * Simplify the interface to the ConstantExpr class, removing unneccesary
   parameters to the ::get* methods.
 * Rename the 'getelementptr' version of ConstantExpr::get to
   ConstantExpr::getGetElementPtr
llvm-svn: 3161 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | * Correctly delete TypeHandles in AsmParser.  In addition to not leaking
   memory, this prevents a bug that could have occurred when a type got
   resolved that the constexpr was using
 * Check for errors in the AsmParser instead of hitting assertion failures
   deep in the code
 * Simplify the interface to the ConstantExpr class, removing unneccesary
   parameters to the ::get* methods.
 * Rename the 'getelementptr' version of ConstantExpr::get to
   ConstantExpr::getGetElementPtr
llvm-svn: 3160 | 
| | 
| 
| 
| | llvm-svn: 3105 |