Skip to content
  1. Jun 04, 2011
    • Jakob Stoklund Olesen's avatar
      Silence compiler warnings. · a4615a6f
      Jakob Stoklund Olesen authored
      llvm-svn: 132624
      a4615a6f
    • Jakob Stoklund Olesen's avatar
      Teach TableGen to evaluate DAG expressions as set operations. · fc205a56
      Jakob Stoklund Olesen authored
      A TableGen backend can define how certain classes can be expanded into
      ordered sets of defs, typically by evaluating a specific field in the
      record. The SetTheory class can then evaluate DAG expressions that refer
      to these named sets.
      
      A number of standard set and list operations are predefined, and the
      backend can add more specialized operators if needed. The -print-sets
      backend is used by SetTheory.td to provide examples.
      
      This is intended to simplify how register classes are defined:
      
        def GR32_NOSP : RegisterClass<"X86", [i32], 32, (sub GR32, ESP)>;
      
      llvm-svn: 132621
      fc205a56
  2. Jun 03, 2011
  3. Jun 01, 2011
  4. May 31, 2011
  5. May 30, 2011
  6. May 28, 2011
    • John McCall's avatar
      Change how tblgen generates attributes for intrinsics to use a single · 375dcc9e
      John McCall authored
      switch.  With this newfound organization, teach tblgen how not to give
      all intrinsics the 'nounwind' attribute.  Introduce a new intrinsic,
      llvm.eh.resume, which does not have this attribute.  Documentation and uses
      to follow.
      
      llvm-svn: 132252
      375dcc9e
    • Rafael Espindola's avatar
      Fix the root cause of the bootstrap failure: · 836f7db2
      Rafael Espindola authored
      There was no way to check if a given register/mode pair was valid. We now return
      an error code (-2) instead of asserting. If anyone thinks that an assert
      at this point  is really needed, we can autogen a hasValidDwarfRegNum instead.
      
      llvm-svn: 132236
      836f7db2
  7. May 25, 2011
  8. May 23, 2011
  9. May 19, 2011
  10. May 18, 2011
  11. May 17, 2011
  12. May 10, 2011
  13. May 09, 2011
  14. May 07, 2011
  15. May 06, 2011
  16. May 05, 2011
  17. May 04, 2011
  18. May 03, 2011
  19. Apr 29, 2011
  20. Apr 28, 2011
  21. Apr 24, 2011
  22. Apr 23, 2011
  23. Apr 22, 2011
  24. Apr 21, 2011
  25. Apr 20, 2011
    • Jakob Stoklund Olesen's avatar
      Prefer cheap registers for busy live ranges. · 0e34c1df
      Jakob Stoklund Olesen authored
      On the x86-64 and thumb2 targets, some registers are more expensive to encode
      than others in the same register class.
      
      Add a CostPerUse field to the TableGen register description, and make it
      available from TRI->getCostPerUse. This represents the cost of a REX prefix or a
      32-bit instruction encoding required by choosing a high register.
      
      Teach the greedy register allocator to prefer cheap registers for busy live
      ranges (as indicated by spill weight).
      
      llvm-svn: 129864
      0e34c1df
  26. Apr 18, 2011
Loading