Skip to content
  1. Apr 05, 2006
  2. Apr 02, 2006
  3. Mar 31, 2006
    • Chris Lattner's avatar
      add a note · 40ff17dc
      Chris Lattner authored
      llvm-svn: 27302
      40ff17dc
    • Chris Lattner's avatar
      Implement an item from the readme, folding vcmp/vcmp. instructions with · d4058a59
      Chris Lattner authored
      identical instructions into a single instruction.  For example, for:
      
      void test(vector float *x, vector float *y, int *P) {
        int v = vec_any_out(*x, *y);
        *x = (vector float)vec_cmpb(*x, *y);
        *P = v;
      }
      
      we now generate:
      
      _test:
              mfspr r2, 256
              oris r6, r2, 49152
              mtspr 256, r6
              lvx v0, 0, r4
              lvx v1, 0, r3
              vcmpbfp. v0, v1, v0
              mfcr r4, 2
              stvx v0, 0, r3
              rlwinm r3, r4, 27, 31, 31
              xori r3, r3, 1
              stw r3, 0(r5)
              mtspr 256, r2
              blr
      
      instead of:
      
      _test:
              mfspr r2, 256
              oris r6, r2, 57344
              mtspr 256, r6
              lvx v0, 0, r4
              lvx v1, 0, r3
              vcmpbfp. v2, v1, v0
              mfcr r4, 2
      ***     vcmpbfp v0, v1, v0
              rlwinm r4, r4, 27, 31, 31
              stvx v0, 0, r3
              xori r3, r4, 1
              stw r3, 0(r5)
              mtspr 256, r2
              blr
      
      Testcase here: CodeGen/PowerPC/vcmp-fold.ll
      
      llvm-svn: 27290
      d4058a59
    • Chris Lattner's avatar
      These are done · e5a6c4f8
      Chris Lattner authored
      llvm-svn: 27284
      e5a6c4f8
  4. Mar 29, 2006
  5. Mar 28, 2006
  6. Mar 27, 2006
Loading