Skip to content
Snippets Groups Projects
  1. Oct 10, 2012
  2. Oct 09, 2012
    • Bill Wendling's avatar
      Use the attribute enums to query if a parameter has an attribute. · 8ccd6ca1
      Bill Wendling authored
      llvm-svn: 165550
      8ccd6ca1
    • Micah Villmow's avatar
      Add in the first step of the multiple pointer support. This adds in support to... · 89021e47
      Micah Villmow authored
      Add in the first step of the multiple pointer support. This adds in support to the data layout for specifying a per address space pointer size.
      The next step is to update the optimizers to allow them to optimize the different address spaces with this information.
      
      llvm-svn: 165505
      89021e47
    • Bill Wendling's avatar
      Create enums for the different attributes. · c9b22d73
      Bill Wendling authored
      We use the enums to query whether an Attributes object has that attribute. The
      opaque layer is responsible for knowing where that specific attribute is stored.
      
      llvm-svn: 165488
      c9b22d73
    • Eric Christopher's avatar
      Fix up comment to be more clear. · 28611368
      Eric Christopher authored
      llvm-svn: 165463
      28611368
    • Nadav Rotem's avatar
      · 35315fea
      Nadav Rotem authored
      Refactor the AddrMode class out of TLI to its own header file.
      This class is used by LSR and a number of places in the codegen.
      This is the first step in de-coupling LSR from TLI, and creating
      a new interface in between them.
      
      llvm-svn: 165455
      35315fea
    • Jakob Stoklund Olesen's avatar
      Don't crash on extra evil irreducible control flow. · 9d1173a8
      Jakob Stoklund Olesen authored
      When the CFG contains a loop with multiple entry blocks, the traces
      computed by MachineTraceMetrics don't always have the same nice
      properties. Loop back-edges are normally excluded from traces, but
      MachineLoopInfo doesn't recognize loops with multiple entry blocks, so
      those back-edges may be included.
      
      Avoid asserting when that happens by adding an isEarlierInSameTrace()
      function that accurately determines if a dominating block is part of the
      same trace AND is above the currrent block in the trace.
      
      llvm-svn: 165434
      9d1173a8
  3. Oct 08, 2012
  4. Oct 07, 2012
  5. Oct 05, 2012
  6. Oct 04, 2012
  7. Oct 03, 2012
  8. Oct 02, 2012
    • Jakob Stoklund Olesen's avatar
      Make sure the whole live range is covered when values are pruned twice. · bb999c2f
      Jakob Stoklund Olesen authored
      JoinVals::pruneValues() calls LIS->pruneValue() to avoid conflicts when
      overlapping two different values. This produces a set of live range end
      points that are used to reconstruct the live range (with SSA update)
      after joining the two registers.
      
      When a value is pruned twice, the set of end points was insufficient:
      
        v1 = DEF
        v1 = REPLACE1
        v1 = REPLACE2
        KILL v1
      
      The end point at KILL would only reconstruct the live range from
      REPLACE2 to KILL, leaving the range REPLACE1-REPLACE2 dead.
      
      Add REPLACE2 as an end point in this case so the full live range is
      reconstructed.
      
      This fixes PR13999.
      
      llvm-svn: 165056
      bb999c2f
    • Eric Christopher's avatar
      80-col. · a55b1d5b
      Eric Christopher authored
      llvm-svn: 165054
      a55b1d5b
    • Eric Christopher's avatar
      Don't use a debug location for frame setup instructions in the · f01b02b7
      Eric Christopher authored
      prologue. Also skip frame setup instructions when looking for the
      first location.
      
      llvm-svn: 165052
      f01b02b7
Loading