Skip to content
  1. Aug 17, 2011
    • Devang Patel's avatar
      Until now all debug info MDNodes referred to a root MDNode, a compile unit.... · eb1bb4e4
      Devang Patel authored
      Until now all debug info MDNodes referred to a root MDNode, a compile unit. This simplified handling of these needs in dwarf writer.  However, one side effect of this is that during link time optimization all these MDNodes are _not_ uniqued. In other words there will be N number of MDNodes describing "int", "char" and all other types, which would suddenly grow when each object file starts using libraries like STL.
      
      MDNodes graph structure such that compiler unit keeps track of important MDNodes and update dwarf writer to process mdnodes top-down instead of bottom up.
      
      llvm-svn: 137778
      eb1bb4e4
  2. Aug 16, 2011
  3. Aug 15, 2011
  4. Aug 13, 2011
  5. Aug 12, 2011
  6. Aug 11, 2011
  7. Aug 10, 2011
  8. Aug 09, 2011
    • Jakob Stoklund Olesen's avatar
      Inflate register classes after coalescing. · 53910d6a
      Jakob Stoklund Olesen authored
      Coalescing can remove copy-like instructions with sub-register operands
      that constrained the register class.  Examples are:
      
        x86: GR32_ABCD:sub_8bit_hi -> GR32
        arm: DPR_VFP2:ssub0 -> DPR
      
      Recompute the register class of any virtual registers that are used by
      less instructions after coalescing.
      
      This affects code generation for the Cortex-A8 where we use NEON
      instructions for f32 operations, c.f. fp_convert.ll:
      
        vadd.f32  d16, d1, d0
        vcvt.s32.f32  d0, d16
      
      The register allocator is now free to use d16 for the temporary, and
      that comes first in the allocation order because it doesn't interfere
      with any s-registers.
      
      llvm-svn: 137133
      53910d6a
Loading