Skip to content
  1. Mar 23, 2011
  2. Mar 22, 2011
    • Jakob Stoklund Olesen's avatar
      Reapply r128045 and r128051 with fixes. · ec0ac3ca
      Jakob Stoklund Olesen authored
      This will extend the ranges of debug info variables in registers until they are
      clobbered.
      
      Fix 1: Don't mistake DBG_VALUE instructions referring to incoming arguments on
      the stack with DBG_VALUE instructions referring to variables in the frame
      pointer. This fixes the gdb test-suite failure.
      
      Fix 2: Don't trace through copies to physical registers setting up call
      arguments. These registers are call clobbered, and the source register is more
      likely to be a callee-saved register that can be extended through the call
      instruction.
      
      llvm-svn: 128114
      ec0ac3ca
    • Andrew Trick's avatar
      Revert r128045 and r128051, debug info enhancements. · b0f98bb5
      Andrew Trick authored
      Temporarily reverting these to see if we can get llvm-objdump to link. Hopefully this is not the problem.
      
      llvm-svn: 128097
      b0f98bb5
    • Jakob Stoklund Olesen's avatar
      Clear map after use. · c6f4af02
      Jakob Stoklund Olesen authored
      This is likely to fix the segfault in llvm-gcc-x86_64-darwin10-cross-mingw32.
      
      llvm-svn: 128051
      c6f4af02
    • Jakob Stoklund Olesen's avatar
      Dont emit 'DBG_VALUE %noreg, ...' to terminate user variable ranges. · 9c057ee4
      Jakob Stoklund Olesen authored
      These ranges get completely jumbled by the post-ra scheduler, and it is not
      really reasonable to expect it to make sense of them.
      
      Instead, teach DwarfDebug to notice when user variables in registers are
      clobbered, and terminate the ranges there.
      
      llvm-svn: 128045
      9c057ee4
  3. Mar 21, 2011
  4. Mar 20, 2011
  5. Mar 19, 2011
  6. Mar 18, 2011
    • Jim Grosbach's avatar
      Beginnings of MC-JIT code generation. · 7b162490
      Jim Grosbach authored
      Proof-of-concept code that code-gens a module to an in-memory MachO object.
      This will be hooked up to a run-time dynamic linker library (see: llvm-rtdyld
      for similarly conceptual work for that part) which will take the compiled
      object and link it together with the rest of the system, providing back to the
      JIT a table of available symbols which will be used to respond to the
      getPointerTo*() queries.
      
      llvm-svn: 127916
      7b162490
    • Jakob Stoklund Olesen's avatar
      Extend live debug values down the dominator tree by following copies. · 816f5f4c
      Jakob Stoklund Olesen authored
      The llvm.dbg.value intrinsic refers to SSA values, not virtual registers, so we
      should be able to extend the range of a value by tracking that value through
      register copies. This greatly improves the debug value tracking for function
      arguments that for some reason are copied to a second virtual register at the
      end of the entry block.
      
      We only extend the debug value range where its register is killed. All original
      llvm.dbg.value locations are still respected.
      
      Copies from physical registers are ignored. That should not be a problem since
      the entry block already adds DBG_VALUE instructions for the virtual registers
      holding the function arguments.
      
      llvm-svn: 127912
      816f5f4c
    • Jakob Stoklund Olesen's avatar
      Hoist spills when the same value is known to be in less loopy sibling registers. · 27320cb8
      Jakob Stoklund Olesen authored
      Stack slot real estate is virtually free compared to registers, so it is
      advantageous to spill earlier even though the same value is now kept in both a
      register and a stack slot.
      
      Also eliminate redundant spills by extending the stack slot live range
      underneath reloaded registers.
      
      This can trigger a dead code elimination, removing copies and even reloads that
      were only feeding spills.
      
      llvm-svn: 127868
      27320cb8
    • Jakob Stoklund Olesen's avatar
      Accept instructions that read undefined values. · fdc09941
      Jakob Stoklund Olesen authored
      This is not supposed to happen, but I have seen the x86 rematter getting
      confused when rematerializing partial redefs.
      
      llvm-svn: 127857
      fdc09941
    • Jakob Stoklund Olesen's avatar
      Be more accurate about the slot index reading a register when dealing with defs · c099dde9
      Jakob Stoklund Olesen authored
      and early clobbers.
      
      Assert when trying to find an undefined value.
      
      llvm-svn: 127856
      c099dde9
  7. Mar 17, 2011
  8. Mar 16, 2011
  9. Mar 15, 2011
Loading