Skip to content
  1. Jan 12, 2007
    • Evan Cheng's avatar
      Comment. · a557a002
      Evan Cheng authored
      llvm-svn: 33114
      a557a002
    • Reid Spencer's avatar
      For PR1064: · 7a9c62ba
      Reid Spencer authored
      Implement the arbitrary bit-width integer feature. The feature allows
      integers of any bitwidth (up to 64) to be defined instead of just 1, 8,
      16, 32, and 64 bit integers.
      
      This change does several things:
      1. Introduces a new Derived Type, IntegerType, to represent the number of
         bits in an integer. The Type classes SubclassData field is used to
         store the number of bits. This allows 2^23 bits in an integer type.
      2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and
         64-bit integers. These are replaced with just IntegerType which is not
         a primitive any more.
      3. Adjust the rest of LLVM to account for this change.
      
      Note that while this incremental change lays the foundation for arbitrary
      bit-width integers, LLVM has not yet been converted to actually deal with
      them in any significant way. Most optimization passes, for example, will
      still only deal with the byte-width integer types.  Future increments
      will rectify this situation.
      
      llvm-svn: 33113
      7a9c62ba
    • Reid Spencer's avatar
      Implement review feedback for the ConstantBool->ConstantInt merge. Chris · cddc9dfe
      Reid Spencer authored
      recommended that getBoolValue be replaced with getZExtValue and that
      get(bool) be replaced by get(const Type*, uint64_t). This implements
      those changes.
      
      llvm-svn: 33110
      cddc9dfe
  2. Jan 11, 2007
  3. Jan 10, 2007
  4. Jan 09, 2007
    • Reid Spencer's avatar
      For PR1099: · 1fc9be30
      Reid Spencer authored
      Invert the "isSigned" logic in calls to printType and printPrimitiveType.
      We want variables to be declared unsigned by default so that signless
      operators like + and - perform the unsigned operation that LLVM expects
      by default. Parameters with the sext attribute will be declared signed and
      signed instructions will case operand values to signed regardless of the
      type of the variable. This passes all tests and fixes PR1099.
      
      llvm-svn: 33039
      1fc9be30
    • Reid Spencer's avatar
      For PR1099: · bf38bf71
      Reid Spencer authored
      Partial fix for this PR. Default function parameters to signed integer, just
      like everything else in CBE. The bug was caused by incorrectly introducing
      parameter attributes feature by choosing "signed" parameter if the
      SExtAttribute was specified. Howeer, if no attribute is specified, this
      causes it to become unsigned which is incorrect. Reversing the logic so
      that signedness is detected by "not ZExtAttribute" set fixes the issue.
      
      This fixes 197.parser but there is more to do. Any comparison and possibly
      other operators involving arguments may need to correctly cast the parameter
      before its use, depending on the sign of the operator.
      
      llvm-svn: 33034
      bf38bf71
  5. Jan 08, 2007
    • Reid Spencer's avatar
      For PR1090: · c0b86d5d
      Reid Spencer authored
      Clean up the definitions of the helper functions per Chris' review
      suggestions so they are easier to read.
      
      For PR1091:
      Print minimum signed integer values as unsigned so that we get no warnings
      from the C compiler about constant ranges and value comparisons.
      
      llvm-svn: 33010
      c0b86d5d
    • Reid Spencer's avatar
      Fix PR1090: · 13cae7c2
      Reid Spencer authored
      Implemented some llvm_fcmp_{pred} functions at the start of the function bodies
      and use them for fcmp instructions and constant expressions. These help
      implement the ordered and unordered comparisons necessary for correct exectuion
      of these comparisons.
      
      llvm-svn: 33007
      13cae7c2
  6. Jan 07, 2007
  7. Jan 06, 2007
  8. Jan 05, 2007
  9. Jan 04, 2007
  10. Jan 03, 2007
  11. Jan 02, 2007
  12. Dec 31, 2006
    • Rafael Espindola's avatar
      implement missing compares · fd687184
      Rafael Espindola authored
      patch by Lauro
      bug fixed by me
      
      llvm-svn: 32795
      fd687184
    • Reid Spencer's avatar
      For PR950: · e63b6518
      Reid Spencer authored
      Three changes:
      1. Convert signed integer types to signless versions.
      2. Implement the @sext and @zext parameter attributes. Previously the
         type of an function parameter was used to determine whether it should
         be sign extended or zero extended before the call. This information is
         now communicated via the function type's parameter attributes.
      3. The interface to LowerCallTo had to be changed in order to accommodate
         the parameter attribute information. Although it would have been
         convenient to pass in the FunctionType itself, there isn't always one
         present in the caller. Consequently, a signedness indication for the
         result type and for each parameter was provided for in the interface
         to this method. All implementations were changed to make the adjustment
         necessary.
      
      llvm-svn: 32788
      e63b6518
  13. Dec 29, 2006
  14. Dec 28, 2006
  15. Dec 26, 2006
  16. Dec 23, 2006
    • Reid Spencer's avatar
      For PR950: · 266e42b3
      Reid Spencer authored
      This patch removes the SetCC instructions and replaces them with the ICmp
      and FCmp instructions. The SetCondInst instruction has been removed and
      been replaced with ICmpInst and FCmpInst.
      
      llvm-svn: 32751
      266e42b3
  17. Dec 22, 2006
  18. Dec 21, 2006
Loading