Skip to content
  1. Jan 30, 2007
  2. Jan 29, 2007
    • Nick Lewycky's avatar
      Simplify names of lattice values. SGTUNE becomes SGT, for example. · 56639800
      Nick Lewycky authored
      Fix initializeConstant, now initializeInt. Fixes major performance
      bottleneck.
      
      X == Y || X->DominatedBy(Y) is redundant. Remove the X == Y part.
      
      Fix crasher in makeEqual where getOrInsertNode would add a new constant,
      producing an NE relationship between the two members we're trying to make
      equal. This now allows us to mark more BBs as unreachable.
      
      llvm-svn: 33612
      56639800
  3. Jan 28, 2007
    • Anton Korobeynikov's avatar
      Propagate changes from my local tree. This patch includes: · 037c867b
      Anton Korobeynikov authored
      1. New parameter attribute called 'inreg'. It has meaning "place this
      parameter in registers, if possible". This is some generalization of
      gcc's regparm(n) attribute. It's currently used only in X86-32 backend.
      2. Completely rewritten CC handling/lowering code inside X86 backend.
      Merged stdcall + c CCs and fastcall + fast CC.
      3. Dropped CSRET CC. We cannot add struct return variant for each
      target-specific CC (e.g. stdcall + csretcc and so on).
      4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in
      on first attribute has meaning 'This is hidden pointer to structure
      return. Handle it gently'.
      5. Fixed small bug in llvm-extract + add new feature to
      FunctionExtraction pass, which relinks all internal-linkaged callees
      from deleted function to external linkage. This will allow further
      linking everything together.
      
      NOTEs: 1. Documentation will be updated soon.
             2. llvm-upgrade should be improved to translate csret => sret.
                Before this, there will be some unexpected test fails.
      llvm-svn: 33597
      037c867b
    • Chris Lattner's avatar
      Fix test/Transforms/InstCombine/2007-01-27-AndICmp.ll, a miscompilation of · c8fb6de7
      Chris Lattner authored
      Mozilla that Anton tracked down.
      
      llvm-svn: 33591
      c8fb6de7
  4. Jan 26, 2007
  5. Jan 25, 2007
  6. Jan 22, 2007
  7. Jan 21, 2007
    • Reid Spencer's avatar
      For PR970: · 2eadb531
      Reid Spencer authored
      Clean up handling of isFloatingPoint() and dealing with PackedType.
      Patch by Gordon Henriksen!
      
      llvm-svn: 33415
      2eadb531
    • Reid Spencer's avatar
      Revise the store V, (cast P) -> store (cast V) -> P transform. · 9a4bed06
      Reid Spencer authored
      We only want to do this if the src and destination types have the same
      bit width. This patch uses TargetData::getTypeSizeInBits() instead of
      making a special case for integer types and avoiding the transform if
      they don't match.
      
      llvm-svn: 33414
      9a4bed06
  8. Jan 20, 2007
  9. Jan 19, 2007
    • Reid Spencer's avatar
      For this transform: store V, (cast P) -> store (cast V), P · e928a15c
      Reid Spencer authored
      don't allow the transform if V and the pointer's element type are different
      width integer types.
      
      llvm-svn: 33371
      e928a15c
    • Reid Spencer's avatar
      For PR1043: · a94d394a
      Reid Spencer authored
      This is the final patch for this PR. It implements some minor cleanup
      in the use of IntegerType, to wit:
      1. Type::getIntegerTypeMask -> IntegerType::getBitMask
      2. Type::Int*Ty changed to IntegerType* from Type*
      3. ConstantInt::getType() returns IntegerType* now, not Type*
      
      This also fixes PR1120.
      
      Patch by Sheng Zhou.
      
      llvm-svn: 33370
      a94d394a
  10. Jan 18, 2007
  11. Jan 17, 2007
    • Reid Spencer's avatar
      For PR1094: · a8a15473
      Reid Spencer authored
      Adjust the use of SetVector for changes in SetVector's interface.
      Patch by Gordon Henriksen.
      
      llvm-svn: 33280
      a8a15473
  12. Jan 15, 2007
  13. Jan 14, 2007
  14. Jan 13, 2007
  15. Jan 12, 2007
    • Chris Lattner's avatar
      simplify some code · f5e5236b
      Chris Lattner authored
      llvm-svn: 33150
      f5e5236b
    • Chris Lattner's avatar
      Remove over-general comparisons · 3b6058c2
      Chris Lattner authored
      llvm-svn: 33147
      3b6058c2
    • Chris Lattner's avatar
      eliminate redundant check · e3721e30
      Chris Lattner authored
      llvm-svn: 33132
      e3721e30
    • Chris Lattner's avatar
      Branch conditions must be i1 · 15649084
      Chris Lattner authored
      llvm-svn: 33129
      15649084
    • 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
Loading