Skip to content
  1. Mar 19, 2010
  2. Mar 18, 2010
  3. Mar 15, 2010
    • Chris Lattner's avatar
      eliminate some #if 0 code I added in r96905, type inference · 0db1d650
      Chris Lattner authored
      now enforces that input/output named values have hte same type.
      
      llvm-svn: 98535
      0db1d650
    • Chris Lattner's avatar
      Completely rewrite tblgen's type inference mechanism, · cabe037b
      Chris Lattner authored
      changing the primary datastructure from being a 
      "std::vector<unsigned char>" to being a new TypeSet class
      that actually has (gasp) invariants!
      
      This changes more things than I remember, but one major
      innovation here is that it enforces that named input 
      values agree in type with their output values.
      
      This also eliminates code that transparently assumes (in 
      some cases) that SDNodeXForm input/output types are the
      same, because this is wrong in many case.
      
      This also eliminates a bug which caused a lot of ambiguous
      patterns to go undetected, where a register class would
      sometimes pick the first possible type, causing an
      ambiguous pattern to get arbitrary results.
      
      With all the recent target changes, this causes no 
      functionality change!
      
      llvm-svn: 98534
      cabe037b
  4. Mar 08, 2010
  5. Mar 01, 2010
  6. Feb 28, 2010
  7. Feb 27, 2010
  8. Feb 23, 2010
  9. Feb 17, 2010
  10. Feb 14, 2010
  11. Dec 25, 2009
  12. Nov 02, 2009
  13. Aug 29, 2009
    • Bob Wilson's avatar
      PR4795: Remove EEVT::isFP, isInt and isVec types used by TableGen's type · 57b946c9
      Bob Wilson authored
      inferencing.  As far as I can tell, these are equivalent to the existing
      MVT::fAny, iAny and vAny types, and having both of them makes it harder
      to reason about and modify the type inferencing code.
      
      The specific problem in PR4795 occurs when updating a vAny type to be fAny
      or iAny, or vice versa.  Both iAny and fAny include vector types -- they
      intersect with the set of types represented by vAny.  When merging them,
      choose fAny/iAny to represent the intersection.  This is not perfect, since
      fAny/iAny also include scalar types, but it is good enough for TableGen's
      type inferencing.
      
      llvm-svn: 80423
      57b946c9
  14. Aug 23, 2009
    • Benjamin Kramer's avatar
      Try to fix MSVC build after r79846. · c2dbd5d6
      Benjamin Kramer authored
      llvm-svn: 79850
      c2dbd5d6
    • Daniel Dunbar's avatar
      Fix non-determinism in DAGISel emitter. · ced00815
      Daniel Dunbar authored
       - This manifested as non-determinism in the .inc output in rare cases (when two
         distinct patterns ended up being equivalent, which is rather rare). That
         meant the pattern matching was non-deterministic, which could eventually mean
         the code generator selected different instructions based on the arch.
      
       - It's probably worth making the DAGISel ensure a total ordering (or force the
         user to), but the simple fix here is to totally order the Record* maps based
         on a unique ID.
      
       - PR4672, PR4711.
      
      Yay:
      --
      ddunbar@giles:~$ cat ~/llvm.obj.64/lib/Target/*/*.inc | shasum
      d1099ff34b21459a5a3e7021c225c080e6017ece  -
      ddunbar@giles:~$ cat ~/llvm.obj.ppc/lib/Target/*/*.inc | shasum
      d1099ff34b21459a5a3e7021c225c080e6017ece  -
      --
      
      llvm-svn: 79846
      ced00815
    • Chris Lattner's avatar
      remove some DOUTs · 34822f6e
      Chris Lattner authored
      llvm-svn: 79821
      34822f6e
  15. Aug 13, 2009
  16. Aug 11, 2009
  17. Jul 29, 2009
  18. Jul 03, 2009
  19. Jun 26, 2009
  20. Jun 17, 2009
Loading