Skip to content
  1. Nov 30, 2005
  2. Nov 29, 2005
  3. Nov 28, 2005
    • Chris Lattner's avatar
      fix a typo :) · 50986909
      Chris Lattner authored
      llvm-svn: 24501
      50986909
    • Andrew Lenharth's avatar
      a few more comments on the interfaces and functions · d2511929
      Andrew Lenharth authored
      llvm-svn: 24500
      d2511929
    • Andrew Lenharth's avatar
      Added documented rsprofiler interface. Also remove new profiler passes, the · 517caef4
      Andrew Lenharth authored
      old ones have been updated to implement the interface.
      
      llvm-svn: 24499
      517caef4
    • Jeff Cohen's avatar
      Fix VC++ warning. · 7ff44ec3
      Jeff Cohen authored
      llvm-svn: 24496
      7ff44ec3
    • Chris Lattner's avatar
      Add a missed optimization · 820c94e4
      Chris Lattner authored
      llvm-svn: 24495
      820c94e4
    • Andrew Lenharth's avatar
      Random sampling (aka Arnold and Ryder) profiling. This is still preliminary,... · 93e59f60
      Andrew Lenharth authored
      Random sampling (aka Arnold and Ryder) profiling.  This is still preliminary, but it works on spec on x86 and alpha.  The idea is to allow profiling passes to remember what profiling they inserted, then a random sampling framework is inserted which consists of duplicated basic blocks (without profiling), such that at each backedge in the program and entry into every function, the framework chooses whether to use the instrumented code or the instrumentation free code.  The goal of such a framework is to make it reasonably cheap to do random sampling of very expensive profiling products (such as load-value profiling).
      
      The code is organized into 3 parts (2 passes)
      1) a linked set of profiling passes, which implement an analysis group (linked, like alias analysis are).  These insert profiling into the program, and remember what they inserted, so that at a later time they can be queried about any instruction.
      
      2) a pass that handles inserting the random sampling framework.  This also has options to control how random samples are choosen.  Currently implemented are Global counters, register allocated global counters, and read cycle counter (see? there was a reason for it).
      
      The profiling passes are almost identical to the existing ones (block, function, and null profiling is supported right now), and they are valid passes without the sampling framework (hence the existing passes can be unified with the new ones, not done yet).
      
      Some things are a bit ugly still, but that should be fixed up soon enough.
      
      Other todo? making the counter values not "magic 2^16 -1" values, but dynamically choosable.
      
      llvm-svn: 24493
      93e59f60
  4. Nov 26, 2005
  5. Nov 25, 2005
  6. Nov 23, 2005
    • Nate Begeman's avatar
      Some first bits of AltiVec stuff: Instruction Formats, Encodings, and · 8492fd30
      Nate Begeman authored
      Registers.  Apologies to Jim if the scheduling info so far isn't accurate.
      
      There's a few more things like VRsave support that need to be finished up
      in my local tree before I can commit code that Does The Right Thing for
      turning 4 x float into the various altivec packed float instructions.
      
      llvm-svn: 24489
      8492fd30
  7. Nov 22, 2005
Loading