------- Comment #16 from steven at gcc dot gnu dot org  2010-07-21 08:22 -------
OK, I think I finally understand what Alexander tried to explain, and I've
annotated the code. Alexander, does this look right to you?

f1:                             // vector int f1(vector int t)
        .mmi
        mov r15 = r12           // 30: r12 = @temp1
        mov r14 = r12           // 29: r14 = @temp1
        addl r16 = 1, r0        // 34: r16 = 1
        ;;
        .mmi
        st8 [r15] = r32, 8      // 36: temp1[0:1] = t[0:1], r...@temp[2]
        ;;
        st8 [r15] = r33, -4     // 37: temp1[2:3] = t[2:3], r...@temp[1]
        nop 0
        .mii
        ld8 r8 = [r14], 8       // 21: r8 = temp[0:1]
        nop 0
        ;;
        nop 0
        .mmb
        ld8 r9 = [r14]          // 28: r9 = temp[2:3]
        st4 [r15] = r16         //  9: temp[1] = 1
        br.ret.sptk.many b0     // 40: return r8:r9
        .endp f1#


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43494

Reply via email to