Skip to content
  1. Oct 15, 2008
  2. Aug 22, 2008
  3. Jul 30, 2008
  4. Jun 16, 2008
  5. Jun 06, 2008
    • Duncan Sands's avatar
      Wrap MVT::ValueType in a struct to get type safety · 13237ac3
      Duncan Sands authored
      and better control the abstraction.  Rename the type
      to MVT.  To update out-of-tree patches, the main
      thing to do is to rename MVT::ValueType to MVT, and
      rewrite expressions like MVT::getSizeInBits(VT) in
      the form VT.getSizeInBits().  Use VT.getSimpleVT()
      to extract a MVT::SimpleValueType for use in switch
      statements (you will get an assert failure if VT is
      an extended value type - these shouldn't exist after
      type legalization).
      This results in a small speedup of codegen and no
      new testsuite failures (x86-64 linux).
      
      llvm-svn: 52044
      13237ac3
  6. Apr 03, 2008
    • Dan Gohman's avatar
      Move instruction flag inference out of InstrInfoEmitter and into · fc4ad7de
      Dan Gohman authored
      CodeGenDAGPatterns, where it can be used in other tablegen backends.
      This allows the inference to be done for DAGISelEmitter so that it
      gets accurate mayLoad/mayStore/isSimpleLoad flags. 
      
      This brings MemOperand functionality back to where it was before
      48329. However, it doesn't solve the problem of anonymous patterns
      which expand to code that does loads or stores.
      
      llvm-svn: 49123
      fc4ad7de
  7. Mar 05, 2008
    • Scott Michel's avatar
      This patch fixes a problem encountered by the CellSPU backend where variants · 94420742
      Scott Michel authored
      were being pruned in patterns where a variable was used more than once, e.g.:
      
        (or (and R32C:$rA, R32C:$rC), (and R32C:$rB, (not R32C:$rC)))
      
      In this example, $rC is used more than once and is actually significant to
      instruction selection pattern matching when commuted variants are produced.
      This patch scans the pattern's clauses and collects the variables, creating
      a set of variables that are used more than once. TreePatternNode::isIsomorphicTo()
      also understands that multiply-used variables are significant.
      
      llvm-svn: 47950
      94420742
  8. Feb 09, 2008
  9. Jan 06, 2008
  10. Jan 05, 2008
Loading